2017-08-14 5 views
1

Azure AD documentationによると、Azure AD v2.0 IDトークンにはIDトークンがある場合、アクセストークンハッシュのat_hashが含まれている必要があります。アクセストークンが発行されます。Azure AD v2.0のOAuth:Azure AD v2.0でのat_hashの請求ID_token

しかし、at_hashのクレームがIDトークンに記載されていないようです。 Azure ADアクセストークン要求v2.0エンドポイントhttps://login.microsoftonline.com/{my_tenant}/oauth2/v2.0/tokenを呼び出した後、Azureによって返されたid_tokenには、アクセストークンが発行されても、at_hashのクレームは含まれません。

アズールADのV2.0によって返されるレスポンスボディの例:

"token_type": "Bearer", 
    "scope": "User.Read", 
    "expires_in": 3599, 
    "ext_expires_in": 0, 
    "access_token": "eyJ0eXAiO ...", 
    "refresh_token": "OAQABAAAAAAA9kTklh ..." 
    "id_token": "eyJ0eXAiOiJKV1QiLC ..." 

id_tokenは、以下の特許請求の範囲に含まれます。それはat_hashの主張を含んでいませんでした。

"aud": "... GUID ... ", 
    "iss": "https://login.microsoftonline.com/.../v2.0", 
    "iat": 1502324474, 
    "nbf": 1502324474, 
    "exp": 1502328374, 
    "aio": "ATQA ... 7liW+Hb", 
    "name": "... some name ... ", 
    "nonce": "... GUID ...", 
    "oid": "... GUID ...", 
    "preferred_username": "... some preferred name ...", 
    "sub": "KIuLx ... ifCaZUUi3b", 
    "tid": "... GUID ...", 
    "ver": "2.0" 

答えて

0

上記のリクエストに基づいて、認証コードフローを使用していました。この主張はこの流れでは発行されていないようです。 [「IDトークンでクレーム」についてのドキュメント]によると

POST: https://login.microsoftonline.com/{tenant}/oauth2/v2.0/authorize? 
response_type=token+id_token 
&client_id={client_id} 
&redirect_uri={redirect_uri} 
&scope=openid+mail.read 
&state=123 
&nonce=456 
+0

(https://docs.microsoft.com/en-us/azure:以下の要求のような暗黙の流れを使用して要求するときしかし、この主張は発行されません/アクティブディレクトリ/開発/アクティブディレクトリ-v2トークン#タイプのトークン):アクセストークンハッシュは、IDトークンがOAuth 2.0アクセストークンで発行された場合にのみ、IDトークンに含まれます。 「at_hash」の主張の目的は、受信者が受け取ったアクセストークンを検証するために受信者がそれを使うことができるため、アクセストークンが承認を使用して返されたときに 'at_hash'がクレームに含まれない理由がありますコードフロー? –

+0

これはテストにのみ基づいており、それに関する正式な文書を見つけることができません。 –

関連する問題