[英]Azure AD: Need to validate id_token received with access token?
我正在使用具有以下范圍的Azure AD(使用/oauth2/v2.0/authorize
)進行授權:
openid email profile https://graph.microsoft.com/user.read
作為響應,我得到一個id_token和一個授權碼。 我忽略此id_token並使用授權代碼來獲取訪問令牌(使用/oauth2/v2.0/token
)
當我獲得訪問令牌時,我再次獲得了一個id_token。
Microsoft文檔狀態:
當您的應用收到ID令牌時,它必須驗證簽名以證明令牌的真實性,並驗證令牌中的一些聲明以證明其有效性。
但是,由於我的應用程序根據其自身在Microsoft服務器上的HTTPS帖子接收到ID令牌,因此使用ID令牌而不進行驗證是否安全?
根據您的描述,
response_type=code id_token
) 如果您不希望授權請求提供ID令牌,則可以使用其他授權代碼流或隱式流
這些流類型是從response_type參數中選擇的,而不是從聲明中選擇的。
對於授權碼流程,
response_type=code
對於隱式流,
response_type=id_token token
或response_type=id_token
請注意,隱式流不會產生訪問令牌,並且適用於無法保護刷新令牌的JavaScript或類似客戶端。
從令牌端點或授權端點(基於隱式流)獲取ID令牌后,您只需驗證一次即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.