2016-07-07 15 views
1

json Webトークンに関する簡単な質問。ユーザー権限が変更された後のJWTリフレッシュ

トークンが期限切れになると、現在のトークンに基づいてリフレッシュトークンが取得されます(現在のユーザーの検証なし)。

だから私は、ユーザーからのアクセス許可を変更し、彼はもうWeb APIからデータを取得することはできません? jwtをDBに保存して、パーミッションを検証することができますか?

私は、トークンが3つの部分に分割されていて、そこにユーザー情報がいくつか含まれていると読んでいます。リフレッシュトークンが同じ情報を運ぶ必要がある場合、どのように異なることができますか?

私は本当に誰かがこの1つで私を助けることを願っています。

Grtz、 ロビン

答えて

1

私は、ユーザーの権限を変更し、彼はもはやウェブAPIからデータを取得するために許可されていないときに何が起こるのでしょうか?

私は彼の権限または何を検証することができますので、私はDBにJWTを保存すべきあなたはトークン

を無効にする必要がありますか?

いくつかの選択肢では簡単な質問ではありません。マークの有効期限が切れて、ログアウト間&有効期限の時間だったストアトークンとリクエストごとに、それをチェックしてください。Invalidating client side JWT session

1)

2)トークンブラックリストトークンのクライアントを削除するを参照してください。サーバーの記憶域が必要です

3)トークンにパスワードまたは許可の要約のハッシュを付けて署名します。署名付きフィールドが変更された場合、以前のトークンは自動的に検証に失敗します。他の興味のあるフィールドでこのメカニズムを拡張して、署名してください。欠点は、データベースにアクセスする必要があることです。

同じ情報を保持するリフレッシュトークンはどのように異なっていますか?

最初の部分はトークン(署名アルゴリズム)のヘッダーであり、2番目の部分はペイロード(件名、名前、発行者、発行時間、有効期限など)であり、3番目の部分はヘッダーとペイロードで実行されます。 「発行時刻」などのデータが異なるため、署名フィールドが変更されます

関連する問題