2016-03-25 13 views
0

これはhow to validate token using outlook rest apiと重複していますが、回答がないため、もう一度お問い合わせします。Outlook REST APIトークンをどのように検証しますか?

私はユーザーを認証してアクセストークンを受け取ることができました。私は例としてサンドボックスを使用します。

私がアクセストークンをデコードし、以下の持っている:

ヘッダー

{ 
    "typ": "JWT", 
    "alg": "RS256", 
    "x5t": "MnC_VZcATfM5pOYiJHMba9goEKY", 
    "kid": "MnC_VZcATfM5pOYiJHMba9goEKY" 
} 

ペイロード

{ 
    "aud": "https://outlook.office.com", 
    "iss": "https://sts.windows.net/c512ffd1-581d-4dc0-a672-faee32f6387c/", 
    "iat": 1458918504, 
    "nbf": 1458918504, 
    "exp": 1458922404, 
    "acr": "1", 
    "amr": [ 
    "pwd" 
    ], 
    "appid": "32613fc5-e7ac-4894-ac94-fbc39c9f3e4a", 
    "appidacr": "1", 
    "family_name": "Dehenne", 
    "given_name": "Denis", 
    "ipaddr": "137.117.9.62", 
    "name": "Denis Dehenne", 
    "oid": "28328486-e820-4c98-a1cf-e8b35456313a", 
    "puid": "10033FFF89319A48", 
    "scp": "Calendars.Read Contacts.Read Mail.Read", 
    "sub": "XfYUvqiIreYX9wF-909Yf7Hodiwg6ClTwWOc75WmX7o", 
    "tid": "c512ffd1-581d-4dc0-a672-faee32f6387c", 
    "unique_name": "[email protected]", 
    "upn": "[email protected]", 
    "ver": "1.0" 
} 

署名

gtpjf40FxEN8cTX22Mk-Da1n_sKtIUGAmzyYkuhkCskR5y1j4uuenf4ejJxeRwtqIIRWN5w1zOfvFZ2XqXreeSpSCZU-CJCoHIicchChUbyq4iIEcWZr29LbnpDkCyqB8LzoA3rEHUxhZYwHnWIHmkrD4XbMN4CW31bdNQwP0YgXvIucLe_tv80Eu4jDiZsqfCh91DFIb7bv6mbPXiTYMtV6OEdXeHLh--vFvZRRm--atSkKrZHFPT1no2B0YAC8w0kEYWPHyM-TbGni6WjIc7ZGSuDNmkHJfIKndcoFzlVJubV2ntKJhWrXfee490oj3GJi-lkNkFLfa9_VDIYu0w 

Inside the Exchange identity tokenには、メタデータと自己署名X509証明書が記載されていますが、これらのトークンには、現在取得していないフィールドが含まれています。

ヘッダーには、トークンがRSAで署名されていることが記載されています。私はトークンを検証したいので、署名証明書の公開鍵が必要です。証明書はどこで手に入りますか?トークンを検証する必要がありますか?

答えて

0

トークンは、Microsoft Azureによって発行され、OutlookまたはOutlook REST APIでは発行されません。あなたのためにazureタグを追加しました。サブトピックによると、Validating Tokens

この時点では、アプリケーションが実行する必要がある唯一のトークン検証は、id_tokensの検証です。 id_tokenを検証するには、id_tokenのシグネチャとid_tokenのクレームの両方を検証する必要があります。

私たちはライブラリ&を提供しており、簡単にトークンの検証を処理する方法を示しています。下の情報は、基本的なプロセスを理解したい人に提供されています。 JWTの検証に利用できるサードパーティのオープンソースライブラリもいくつかあります。そこにはほとんどすべてのプラットフォームのための少なくとも1つのオプションがあります。&

さらに詳しい説明が続きます。署名鍵データを取得したい:

あなたはに位置OpenIDの接続メタデータドキュメントを使用して署名を検証するために必要な署名鍵データを取得することができる。

https://login.microsoftonline.com/common/v2.0/.well-known/openid-configuration

関連する問題