JWTを使用する役割

user203687

JWTは初めてです。JWTについて少し調べたところ、「header.claims.signature」としてフレーム化されていることがわかりました。

次のような簡単なシナリオを考えてみましょう。

  • 顧客が認証されます
  • 顧客は、管理者、メンバー、登録済み、ゲストの(1つ以上の)役割を持つことができます
  • サーバーはセッションを維持しません(認証/承認をJWTのみに依存します)

認証されると、サーバーは顧客のタイプを検出し、customerIdとロールがJWTの「クレーム」の一部になると想定しています。私の仮定が正しくない(または標準に反している)場合はお知らせください。

JWTの「クレーム」部分は暗号化されていません(エンコードされているだけです)。これにより、(サービス)コンシューマーがJWTの「クレーム」部分を変更し、より多くのロール(顧客/コンシューマーが許可されていない)で同じものを再送信できるという簡単なセキュリティホールが明らかになります。

私の理解/仮定が正しくない場合、私が目標としていることをどのように達成しますか?

ブライアンキャンベル

JWS(header.claims.signature)を使用する場合、JWTの「クレーム」部分は署名によって整合性が保護されます。したがって、「クレーム」またはJWTの他の部分が適切なキーを持たない誰かによって変更された場合、JWTの署名検証は失敗し、トークンは拒否されます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ページを更新すると、AngularとJWTの役割が消えます

分類Dev

ユーザーの役割を持つJWTトークンを作成する方法(Spatie JWT Webトークン)

分類Dev

想定される役割から役割を想定しますか?

分類Dev

Vagrantを使用してAnsibleの役割をテストする

分類Dev

T-sqlを使用して役割を複製する

分類Dev

FOSUserBundleの役割を使用してsearshを作成する方法は?

分類Dev

SLAPIを使用して役割を作成する

分類Dev

登録された変数を他の役割で使用する

分類Dev

CMake、make、GCCの役割を理解する

分類Dev

ansibleで動的な役割を作成する

分類Dev

IDで不和の役割を取得する

分類Dev

discord.pyで役割を取得する

分類Dev

Postgres:1行で役割を作成する

分類Dev

Ansibleで役割を実行する方法

分類Dev

IAMの役割を理解する

分類Dev

役割を無視するSpringSecurity

分類Dev

Discord.jsに役割を追加する

分類Dev

管理者の役割を追加する

分類Dev

phabricatorに役割を追加する方法は?

分類Dev

複数の役割を確認する

分類Dev

SearchGuardで役割を作成する

分類Dev

Apache Shiroは、ログイン後に使用する役割を決定します

分類Dev

役割クレームの追加-IClaimsTransformerを使用する必要があります

分類Dev

役割クレームの追加-IClaimsTransformerを使用する必要があります

分類Dev

GitLab:開発者の役割を使用する目的は何ですか?

分類Dev

Dockerの役割を使用するとエラーが発生します

分類Dev

C#を使用してAzureVMの役割のサイズを変更する

分類Dev

DiscordSocketClientを使用してユーザーの役割を取得する方法

分類Dev

Azure DataStudioを使用するための適切な役割と権限

Related 関連記事

  1. 1

    ページを更新すると、AngularとJWTの役割が消えます

  2. 2

    ユーザーの役割を持つJWTトークンを作成する方法(Spatie JWT Webトークン)

  3. 3

    想定される役割から役割を想定しますか?

  4. 4

    Vagrantを使用してAnsibleの役割をテストする

  5. 5

    T-sqlを使用して役割を複製する

  6. 6

    FOSUserBundleの役割を使用してsearshを作成する方法は?

  7. 7

    SLAPIを使用して役割を作成する

  8. 8

    登録された変数を他の役割で使用する

  9. 9

    CMake、make、GCCの役割を理解する

  10. 10

    ansibleで動的な役割を作成する

  11. 11

    IDで不和の役割を取得する

  12. 12

    discord.pyで役割を取得する

  13. 13

    Postgres:1行で役割を作成する

  14. 14

    Ansibleで役割を実行する方法

  15. 15

    IAMの役割を理解する

  16. 16

    役割を無視するSpringSecurity

  17. 17

    Discord.jsに役割を追加する

  18. 18

    管理者の役割を追加する

  19. 19

    phabricatorに役割を追加する方法は?

  20. 20

    複数の役割を確認する

  21. 21

    SearchGuardで役割を作成する

  22. 22

    Apache Shiroは、ログイン後に使用する役割を決定します

  23. 23

    役割クレームの追加-IClaimsTransformerを使用する必要があります

  24. 24

    役割クレームの追加-IClaimsTransformerを使用する必要があります

  25. 25

    GitLab:開発者の役割を使用する目的は何ですか?

  26. 26

    Dockerの役割を使用するとエラーが発生します

  27. 27

    C#を使用してAzureVMの役割のサイズを変更する

  28. 28

    DiscordSocketClientを使用してユーザーの役割を取得する方法

  29. 29

    Azure DataStudioを使用するための適切な役割と権限

ホットタグ

アーカイブ