我打算将 PHP CRM 与 Microsoft Graph 和合作伙伴中心集成,以便能够从 CRM 为我管理的客户创建委托管理员关系。这是一篇Microsoft 文章,其中演示了如何创建管理员关系对象。
我需要帮助来了解如何获取roleDefinitionId
,specific administrative role in the tenant
以便我可以将其传递到 POST 请求的正文中,或者如何列出unified roles
并以编程方式获取roleDefinitionId
。谢谢。
在 POST 请求主体中,我们可以看到roleDefinitionId
和 ,它们required
表示unified role
正在请求。统一角色指的是正在请求的管理角色,例如等Global admin
,User administrator
例如来自客户租户的 。
在其 Microsoft POST 请求主体下方,我只是不知道他们如何知道“roleDefinitionIdin the body stands for which
管理角色”
POST https://graph.microsoft.com/v1.0/tenantRelationships/delegatedAdminRelationships
Content-Type: application/json
{
"displayName": "Contoso admin relationship",
"duration": "P730D",
"customer": {
"tenantId": "4b827261-d21f-4aa9-b7db-7fa1f56fb163",
"displayName": "Contoso subsidiary Inc"
},
"accessDetails": {
"unifiedRoles": [
{
"roleDefinitionId": "29232cdf-9323-42fd-ade2-1d097af3e4de"
},
{
"roleDefinitionId": "3a2c62db-5318-420d-8d74-23affee5d9d5"
}
]
},
"autoExtendDuration": "P180D"
}
当然,在我的 HTML 表单中,我需要让用户根据名称(例如)选择管理角色global admin
,然后后端能够将其转换为该角色,就像合作伙伴中心 GUI 的roleDefinitionId
工作原理一样。目前,我需要在我的表单中输入……roleDefinitionId
您可以使用
/v1.0/roleManagement/directory/roleDefinitions
端点列出所有管理角色。如果您想要过滤特定角色(例如
Global Administrator
或 )User Administrator
: