如何为Microsoft Azure AD注册的应用设置部门等属性?
针对你的需求有两种可行实现方案:
方案1:为应用对应的服务主体配置Department属性
Azure AD组命名策略在应用身份调用场景下,会读取应用在当前租户内的服务主体对象的属性来填充命名模板的变量,你可以直接给服务主体设置department属性适配现有规则:
- 方式一:通过MS Graph API设置
调用PATCH接口:PATCH https://graph.microsoft.com/v1.0/servicePrincipals/{你的服务主体Object ID}
请求Body内容:
调用该接口需要提前为操作身份分配{ "department": "需要填充的部门名称" }Application.ReadWrite.All应用权限。 - 方式二:通过Azure AD PowerShell设置
执行命令:Set-AzureADServicePrincipal -ObjectId {你的服务主体Object ID} -Department "需要填充的部门名称"
配置完成后,后续通过应用身份创建组时,命名策略会自动读取该属性填充到组名前缀中。如果你是多租户应用,只需要在应用首次被租户授权安装时,自动调用对应租户的相关接口给当前租户内的服务主体设置对应属性即可。
方案2:创建组时主动控制组名格式
如果你的多租户应用需要适配不同租户的差异化命名规则,也可以自行拼接符合要求的完整组名,在创建组的请求头中添加Microsoft.Graph.GroupNamingPolicy: Skip跳过系统命名策略的自动追加,前提是你的应用持有Directory.ReadWrite.All应用权限。
内容的提问来源于stack exchange,提问作者Afshin
相关产品推荐
相关产品推荐

