2011-01-12 26 views
6

トークンベースの認証についての私の理解は、(おそらくはsslを介して)認証時に、安価なユーザ検証のためにトークンがユーザに渡されるということです。これの実装の1つは、セッション管理のためにユーザーに渡されるCookieを生成することです。トークンベース認証のセキュリティ

しかし、私の理解では、トークンベースの認証(少なくともクッキーを通じて)は、firesheepのような中間の攻撃で人間に影響を受けやすいということです。

この大きなセキュリティ上の問題を克服する他の実装方法がありますか、またはtbaに根本的な誤解がありますか?

答えて

10

ご理解いただきました。基本的に、アプリケーションがそれをどのように見ているかという点では、トークンはユーザー名とパスワードでもよい。誰かがトークンを持っている場合、自分のアプリケーションに対して自分自身を認証することができます。 http cookieの主な目的は、クロスサイトスクリプティングの脆弱性(XSS)などを使ってCookieを取得した場合、ユーザー名とパスワードの漏洩を避けることです。はい、適切な状況では、彼らは "真ん中の人"としてアプリケーションにこのトークンを "再生"できますが、ユーザー名とパスワードのペアリングを把握できないはずですが、トークンあなたがBASE64を一緒に連結されたユーザ名とパスワードをエンコードし、それを値として使用することに決めた場合のように、生成アルゴリズムは弱いです。

通常、トークン - >ユーザーマッピングをサーバー側で安全に保ちます。究極的には、あなたのセキュリティはすべて、トークンを安全に保ち、その存続期間が制御されることに基づいています(例えば期限切れです。また、元のクレデンシャルプロバイダが使用していたのと同じIPから、単なる一例)、このことができます

希望、

-Oisin

+0

グレート、ありがとうOisin。 – Devin

関連する問題