[英]Customize token in Azure AD
我正在尝试在 Azure AD 中自定义 ID 令牌。
我做了以下步骤:
1-注册Azure AD申请
2-后扩展:
https://graph.microsoft.com/v1.0/applications/ Object ID /extensionProperties
有效载荷:{“名称”:“测试”,“数据类型”:“字符串”,“targetObjects”:[“用户”]}
3-创建声明映射策略
https://graph.microsoft.com/v1.0/policies/claimsMappingPolicies
有效载荷
{“定义”:[{“ClaimsMappingPolicy”:{“版本”:1,“IncludeBasicClaimSet”:“真”,“ClaimsSchema”:[{“来源”:“用户”,“ExtensionID”:“extension_Application (客户端) ID _test","JwtClaimType":"test"}]}}],"displayName":"test","isOrganizationDefault":true}
4-岗位服务负责人
https:// graph.microsoft.com/v1.0/servicePrincipals/托管应用程序的对象 ID /claimsMappingPolicies/$ref
负载:{"@odata.id":"https://graph.microsoft.com/v1.0/policies/claimsMappingPolicies/(我从第 4 步得到的策略 ID"}
5-我修补了一个用户
https: // graph.microsoft.com/v1.0/users/usreID {"extension_Application (client)ID _test":"test"}
6- 我编辑了 Mainifest查看 Mainifest
6- 我厌倦了为我在步骤 5 中修补的用户获取 ID 令牌https://login.microsoftonline.com/**tenant Id**/oauth2/v2.0/token with headers(client_id,client_secret,scope: https://graph.microsoft.com/.default,用户名,密码)
7- 我解码了令牌,我没有看到“测试”是令牌的一部分
不确定我在这里缺少什么来自定义令牌
显示我在刀片中缺少令牌配置的屏幕截图Missing token configuration in the blade
显示我找不到权限的屏幕截图:Directory.AccessAsUser.All
一旦扩展声明设置完成,它就可以用于通过图形存储和检索数据,因为扩展属性可能不会在 id 令牌中传递,但可以通过从图形中查询用户配置文件来检索。 或者应用程序可以使用图形客户端来传递扩展声明,这些扩展声明不是从 azure 广告的可用可选声明中获取的。
请确保已授予 Directory.AccessAsUser.All,Directory.Read.All,openId 权限。
然后检查令牌配置,如果它是有效声明。
参考:
就像你在评论中说的:
就像现在最明显的区别一样(令牌配置不可用,Directory.AccessAsUser.All 的 api 权限不存在)
我试图检查我无法在 AAD 门户的概览边栏选项卡中看到这些功能的方式。
当我使用组织Azure AD premium 2
许可租户时,我拥有所有这些功能。
但是,当我尝试使用相同帐户创建另一个租户并切换租户以在其上工作并创建应用程序注册时。 应用注册刀片没有令牌配置和 api 权限,如您提到的 Directory.AccessAsUser.All。
然后我意识到它的许可证是azure ad free
帐户。
因此,从我的角度来看,请尝试使用 pay as you go 帐户或组织已订阅高级许可证的帐户,这将提供更好的体验。
您也可以在此处查看正在进行的问题
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.