我們將 IdentityServer4 與客戶端憑據授予型別一起使用,但對于其中一位消費者,我們調整了客戶端憑據流并引入了委托授予型別,這就是我們在 AccessToken 中注入 UPN 宣告的地方,因為使用客戶端憑據流生成的訪問令牌中不會有 UPN 宣告。這樣做的目的是我們的上游應用程式根據用戶授權我們的 API 呼叫。
Azure AD 是否具有任何功能,我可以為應用程式提供 UPN 宣告的自定義值,并且當該特定應用程式用于使用客戶端憑據流生成訪問令牌時,具有自定義值的 UPN 宣告將在訪問令牌中可用?
uj5u.com熱心網友回復:
我嘗試使用客戶端憑據在我的環境中重現相同的內容:
為了獲得UPN claim訪問令牌,您需要添加如下可選宣告:
轉到 Azure 門戶 -> Azure Active Directory -> 應用注冊 -> 您的應用 -> 令牌配置 -> 添加可選宣告。

當我解碼使用客戶端憑據授予型別生成的訪問令牌時,不包括 UPN 宣告。

請注意,如果您需要在令牌中宣告 UPN,那么您必須使用授權碼流、ROPC 流、隱式流身份驗證流來獲取令牌。檢查這個。
我通過授權代碼流生成訪問令牌,如下所示:

解碼令牌后,成功獲得 UPN 宣告:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/488383.html
