Azure ad oauthトークンで見つかった一般的な主張には、以下が含まれます。
* aud(Audiens):これは、Azure AD B2Cの場合、アプリケーションIDです。アプリケーションは、この値を検証して、IDと一致し、トークンがない場合はトークンを拒否する必要があります[3]。聴衆はリソースと同義です[3]。
* ISS(発行者):このクレームは、トークンを構築および返品したセキュリティトークンサービス(STS)を識別し、ユーザーが認証されたディレクトリを識別します。アプリケーションは、この主張を検証して、トークンが適切なエンドポイントから来たことを確認する必要があります[3]。
* IAT(発行):これは、エポック時にトークンが発行された時間を表します[3]。
* exp(有効期限):これは、トークンが無効になり、エポック時に表される時間を示します。アプリケーションは、この主張を使用して、トークン寿命の妥当性を検証する必要があります[3]。
* NBF(前ではない):このクレームは、エポック時にトークンが有効になる時間を指定します。通常、トークンが発行された時間と同じであり、アプリケーションはこの主張を使用してトークン寿命の有効性を検証する必要があります[3]。
* ver(バージョン):これは、Azure AD B2C [3]で定義されているIDトークンのバージョンを示します。
* c_hash(code hash):トークンがOAuth 2.0認証コードと一緒に発行された場合にのみ、IDトークンに含まれます。許可コード[3]の信頼性を検証するために使用できます。
* at_hash(アクセストークンハッシュ):トークンがOAuth 2.0アクセストークンと一緒に発行され、アクセストークンの信頼性を検証するために使用される場合にのみ、IDトークンに含まれます[3]。
* NONCE:トークンリプレイ攻撃を緩和するために使用される戦略。アプリケーションは、「nonce」クエリパラメーターを使用して、承認リクエストでnonceを指定できます。リクエストで提供する値は、IDトークンのみの「ノンセ」の請求では解放されません[3]。
* sub(subject):このクレームは、アプリケーションのユーザーなど、トークンが情報を主張するプリンシパルを表します。値は不変であり、再割り当てまたは再利用することはできません。許可チェックを安全に実行するために使用できます。デフォルトでは、被験者のクレームには、ディレクトリ[3]にユーザーのオブジェクトIDが入力されます。
* ACR(認証コンテキストクラス参照):古いポリシー[3]でのみ使用されます。
* TFP(信頼フレームワークポリシー):IDトークンの取得に使用されたポリシーの名前[3]。
* auth \ _time:ユーザーが最後に資格情報を入力した時間、時代に表されます。その認証は、新鮮なサインイン、単一のサインオン(SSO)セッション、または別のサインインタイプであることとの間に差別はありません[3]。
* SCP(スコープ):これは、アクセストークンのリソースに付与された権限を指します。複数の付与されたアクセス許可は、空間によって分離されます[3]。
* AZP(認定当事者):リクエストを開始したクライアントアプリケーションのアプリケーションID [3]。
* OID:このクレームには、Azure ADのオブジェクトの一意の識別子が含まれており、不変であり、再割り当てまたは再利用することはできません。 Azure AD [1]のクエリのオブジェクトを識別するために使用できます。
引用:
[1] https://stackoverflow.com/questions/40972416/what-jwt-claims-from-azure-ad-tokens-can-be-safely-for-user-mappings
[2] https://stackoverflow.com/questions/70867353/azure-access-token-contains-info-that-i-id-the-id-token-and-vi
[3] https://github.com/microsoftdocs/azure-docs/blob/main/articles/active-directory-b2c/tokens-overview.md
[4] https://www.descope.com/blog/post/noauth
[5] https://learn.microsoft.com/en-us/entra/identity-platform/access-token-claims-reference
[6] https://auth0.com/blog/refresh-tokens-what-are-and-when-to-use-them/
[7] https://learn.microsoft.com/en-us/entra/identity-platform/id-token-claims-reference
[8] https://www.descope.com/blog/post/access-token-vs-refresh-token