Microsoft 身分識別平台內的識別碼權杖

授權伺服器會發出標識碼令牌,其中包含攜帶使用者相關信息的宣告。 此權杖可以連同或取代存取權杖進行傳送。 標識元令牌中的資訊可讓客戶端驗證使用者是否為他們聲稱的身分。

第三方應用程式旨在瞭解標識元令牌。 標識元令牌不應用於授權用途。 存取令牌用於授權。 標識元令牌提供的宣告可用於應用程式內的UX,做為資料庫中的密鑰,以及提供用戶端應用程式的存取權。 如需標識碼令牌中使用的宣告詳細資訊,請參閱標識碼 令牌宣告參考。 如需宣告型授權的詳細資訊,請參閱 藉由驗證宣告來保護應用程式和 API。

令牌格式

Microsoft 身分識別平台 有兩個可用的標識符令牌版本:v1.0 和 v2.0。 這些版本會決定令牌中的宣告。 v1.0 和 v2.0 標識符令牌在攜帶的資訊上有所差異。 版本是以要求端點的端點為基礎。 新的應用程式應該使用 v2.0。

  • v1.0:https://login.microsoftonline.com/common/oauth2/authorize
  • v2.0: https://login.microsoftonline.com/common/oauth2/v2.0/authorize

範例 v1.0 標識符令牌

eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IjdfWnVmMXR2a3dMeFlhSFMzcTZsVWpVWUlHdyIsImtpZCI6IjdfWnVmMXR2a3dMeFlhSFMzcTZsVWpVWUlHdyJ9.eyJhdWQiOiJiMTRhNzUwNS05NmU5LTQ5MjctOTFlOC0wNjAxZDBmYzljYWEiLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC9mYTE1ZDY5Mi1lOWM3LTQ0NjAtYTc0My0yOWYyOTU2ZmQ0MjkvIiwiaWF0IjoxNTM2Mjc1MTI0LCJuYmYiOjE1MzYyNzUxMjQsImV4cCI6MTUzNjI3OTAyNCwiYWlvIjoiQVhRQWkvOElBQUFBcXhzdUIrUjREMnJGUXFPRVRPNFlkWGJMRDlrWjh4ZlhhZGVBTTBRMk5rTlQ1aXpmZzN1d2JXU1hodVNTajZVVDVoeTJENldxQXBCNWpLQTZaZ1o5ay9TVTI3dVY5Y2V0WGZMT3RwTnR0Z2s1RGNCdGsrTExzdHovSmcrZ1lSbXY5YlVVNFhscGhUYzZDODZKbWoxRkN3PT0iLCJhbXIiOlsicnNhIl0sImVtYWlsIjoiYWJlbGlAbWljcm9zb2Z0LmNvbSIsImZhbWlseV9uYW1lIjoiTGluY29sbiIsImdpdmVuX25hbWUiOiJBYmUiLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC83MmY5ODhiZi04NmYxLTQxYWYtOTFhYi0yZDdjZDAxMWRiNDcvIiwiaXBhZGRyIjoiMTMxLjEwNy4yMjIuMjIiLCJuYW1lIjoiYWJlbGkiLCJub25jZSI6IjEyMzUyMyIsIm9pZCI6IjA1ODMzYjZiLWFhMWQtNDJkNC05ZWMwLTFiMmJiOTE5NDQzOCIsInJoIjoiSSIsInN1YiI6IjVfSjlyU3NzOC1qdnRfSWN1NnVlUk5MOHhYYjhMRjRGc2dfS29vQzJSSlEiLCJ0aWQiOiJmYTE1ZDY5Mi1lOWM3LTQ0NjAtYTc0My0yOWYyOTU2ZmQ0MjkiLCJ1bmlxdWVfbmFtZSI6IkFiZUxpQG1pY3Jvc29mdC5jb20iLCJ1dGkiOiJMeGVfNDZHcVRrT3BHU2ZUbG40RUFBIiwidmVyIjoiMS4wIn0=.UJQrCA6qn2bXq57qzGX_-D3HcPHqBMOKDPx4su1yKRLNErVD8xkxJLNLVRdASHqEcpyDctbdHccu6DPpkq5f0ibcaQFhejQNcABidJCTz0Bb2AbdUCTqAzdt9pdgQvMBnVH1xk3SCM6d4BbT4BkLLj10ZLasX7vRknaSjE_C5DI7Fg4WrZPwOhII1dB0HEZ_qpNaYXEiy-o94UJ94zCr07GgrqMsfYQqFR7kn-mn68AjvLcgwSfZvyR_yIK75S_K37vC3QryQ7cNoafDe9upql_6pB2ybMVlgWPs_DmbJ8g0om-sPlwyn74Cc1tW3ze-Xptw_2uVdPgWyqfuWAfq6Q

在 jwt.ms檢視此 v1.0 範例令牌。

範例 v2.0 標識符令牌

eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IjFMVE16YWtpaGlSbGFfOHoyQkVKVlhlV01xbyJ9.eyJ2ZXIiOiIyLjAiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vOTEyMjA0MGQtNmM2Ny00YzViLWIxMTItMzZhMzA0YjY2ZGFkL3YyLjAiLCJzdWIiOiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFJa3pxRlZyU2FTYUZIeTc4MmJidGFRIiwiYXVkIjoiNmNiMDQwMTgtYTNmNS00NmE3LWI5OTUtOTQwYzc4ZjVhZWYzIiwiZXhwIjoxNTM2MzYxNDExLCJpYXQiOjE1MzYyNzQ3MTEsIm5iZiI6MTUzNjI3NDcxMSwibmFtZSI6IkFiZSBMaW5jb2xuIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiQWJlTGlAbWljcm9zb2Z0LmNvbSIsIm9pZCI6IjAwMDAwMDAwLTAwMDAtMDAwMC02NmYzLTMzMzJlY2E3ZWE4MSIsInRpZCI6IjkxMjIwNDBkLTZjNjctNGM1Yi1iMTEyLTM2YTMwNGI2NmRhZCIsIm5vbmNlIjoiMTIzNTIzIiwiYWlvIjoiRGYyVVZYTDFpeCFsTUNXTVNPSkJjRmF0emNHZnZGR2hqS3Y4cTVnMHg3MzJkUjVNQjVCaXN2R1FPN1lXQnlqZDhpUURMcSFlR2JJRGFreXA1bW5PcmNkcUhlWVNubHRlcFFtUnA2QUlaOGpZIn0.1AFWW-Ck5nROwSlltm7GzZvDwUkqvhSQpm55TQsmVo9Y59cLhRXpvB8n-55HCr9Z6G_31_UbeUkoz612I2j_Sm9FFShSDDjoaLQr54CreGIJvjtmS3EkK9a7SJBbcpL1MpUtlfygow39tFjY7EVNW9plWUvRrTgVk7lYLprvfzw-CIqw3gHC-T7IK_m_xkr08INERBtaecwhTeN4chPC4W3jdmw_lIxzC48YoQ0dB1L9-ImX98Egypfrlbm0IBL5spFzL6JDZIRRJOu8vecJvj1mq-IUhGt0MacxX8jdxYLP-KUu2d9MbNKpCKJuZ7p8gwTL5B7NlUdh_dmSviPWrw

在 jwt.ms檢視此 v2.0 範例令牌。

權杖存留期

根據預設,標識元令牌有效期為一小時-一小時之後,客戶端必須取得新的標識符令牌。

您可以調整識別元令牌的存留期,以控制用戶端應用程式到期應用程式會話的頻率,以及要求使用者以無訊息或互動方式再次驗證的頻率。 如需詳細資訊,請參閱可設定 的令牌存留期。

驗證令牌

若要驗證標識元令牌,您的用戶端可以檢查令牌是否已遭到竄改。 它也可以驗證簽發者,以確保正確的簽發者已傳回令牌。 因為識別元令牌一律是 JWT 令牌,所以許多連結庫都存在來驗證這些令牌 - 您應該使用其中一個連結庫,而不是自行執行。 只有機密客戶端應該驗證標識元令牌。 如需詳細資訊,請參閱 驗證宣告來保護應用程式和API。

公用應用程式(完全在裝置或網路上執行的程式代碼,您不會控制,例如使用者的瀏覽器或其主網路),無法從驗證標識元令牌中獲益。 在此實例中,惡意使用者可以攔截和編輯用於驗證令牌的密鑰。

在驗證令牌上的簽章之後,應該在標識符令牌中驗證下列 JWT 宣告。 您的權杖驗證連結函式庫也可能驗證下列宣告:

  • 時間戳:iatnbf、 和 exp 時間戳應該都適當地落在目前時間之前或之後。
  • 物件: aud 宣告應符合您應用程式的應用程式識別碼。
  • Nonce: nonce 承載中的宣告必須符合初始要求期間傳入端點的 /authorize nonce 參數。

另請參閱

下一步

  • 檢閱 OpenID 連線 流程,此流程會定義發出標識元令牌的通訊協定。