JWTトークンをHTTPパケットで処理するための標準的で安全な方法は何ですか?HTTPパケット(Cookie、ヘッダー、またはJSON)にJWTトークンを含める正しい方法
JWTをクッキーに設定しないでください。ブラウザは自動的にセッションをハイジャックするため、プレーンIDのCookieよりもJWTトークンに付加価値がないためです。
したがって、JWTトークンをヘッダーまたはJSON属性として含めるか、これは実際の問題ですか?
JWTトークンをHTTPパケットで処理するための標準的で安全な方法は何ですか?HTTPパケット(Cookie、ヘッダー、またはJSON)にJWTトークンを含める正しい方法
JWTをクッキーに設定しないでください。ブラウザは自動的にセッションをハイジャックするため、プレーンIDのCookieよりもJWTトークンに付加価値がないためです。
したがって、JWTトークンをヘッダーまたはJSON属性として含めるか、これは実際の問題ですか?
CookieとAuthorizationヘッダーの両方に長所と短所があります。
クッキーを使用すると、javascriptが値にアクセスするのを防ぐことができますが、認証ヘッダーでのみ許可すると、追加のCSRF保護は必要ありません。
クッキーを使用すると、<img
タグなどのJavaScript以外のリクエストを簡単に保護することもできます。
正解はなく、標準はありません。あなたはあなたに何が重要かを理解する必要があります。
あなたは何を意味しますかJavaScriptが値にアクセスするのを妨げ、タグから保護しますか?私は、クッキーがjavascriptやCSRFベースの攻撃に対して脆弱だと考えました。認証ヘッダーはこの前提を改ざんしていますか?また、ブラウザが自動的にリクエストするためにこのクッキーを添付するので、クッキーにトークンを格納することにより、クッキー内の単純なセッションIDに追加のセキュリティがどのように提供されるのか分かりません。トークンがTLSで暗号化されたサーバー応答のヘッダー/本文にあり、セッションの乗り越えを回避するために、プログラムごとに要求ごとにトークンを追加する必要があります。 –
@TuomasToivonen私が '値にアクセスすることからjavascriptを妨げるクッキー'とは何を意味するのかは、 'HttpOnly'のクッキーです。調べる。 「」タグについては、基本的には、自動的に認可ヘッダーをそれらに追加することはできません。 Cookieは自動的にそれらの要求にも添付されますが、Authorizationヘッダーには含まれません。また、Cookie _do_は、追加の保護がない場合はCSRFリクエストを許可します。 – Evert
したがって、クッキー+ csrfトークンの全体的なアプローチは、csrfとxssから保護するので、より安全です。 –