0
2
Webシステムにおいて、認証トークンをLocalStorageとCookieを併用することで、それぞれのデメリットを補う認証を実現することはできないのでしょうか?
背景
時折、認証トークンの保存先として最適な場所はLocalStorageかCookieかという論争を見かけます。
どちらもメリット・デメリットがあるようですが、
両方を併用することでそれぞれのデメリットを補い合うことはできないかと疑問に思いました。
併用した場合の認証方式
・ログインが成功したら、サーバー側で2種類の認証トークンを発行
・一方のトークンはCookieに設定し、もう一方はレスポンスで返してJavaScriptによりLocalStorageに保存
・LocalStorageのトークンはリクエスト時にAuthorizationヘッダーに設定
・サーバー側ではAuthorizationヘッダーのトークンとクッキーのトークンをそれぞれ検証
期待される挙動
・LocalStorageのトークンが盗まれたとしても、Cookieのトークンは盗めないため認証は通らない
・CSRF攻撃が行われた場合でも、Authorizationヘッダーがないため、認証ではじかれ、成立しない
有効な手段であれば既に使われているとは思いますので、セキュリティ対策として無意味であるか、デメリットの方が大きいかと思います。
後学のためにも、皆様のご意見をお聞かせ頂きたく思います。
回答1件
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。