当然,它不会授予原始权限,当您创建应用程序并公开 API 权限时,此权限和 in 的权限Exchange
完全是两个不同的权限,来自不同的 API,无论appRoleId
它们使用什么。
要为您的应用授予full_access_as_app
应用程序权限,请按照以下步骤操作。
1.在门户中导航到您的 AD 应用程序 -> Manifest
-> requiredResourceAccess
,获取resourceAppId
and id
,记id
下appRoleId
.
2.导航到Azure Active Directory
门户中的 -> Enterprise applications
-> 搜索resourceAppId
步骤 1 中的获取,然后您将找到Office 365 Exchange Online
-> 单击它 -> Overview
-> 获取Object ID
,记下它为resourceId
.
注意:这Object ID
在不同的 AAD 租户中有所不同。
3.导航到您的 AD 应用程序 -> 单击Managed application in local directory
,然后获取Object ID
,将其记为principalId
。
4.然后调用您使用的 Microsoft Graph -为服务主体授予 appRoleAssignment,使用之前获得的值。
POST https://graph.microsoft.com/v1.0/servicePrincipals/<resourceId>/appRoleAssignedTo
{
"principalId": "<principalId>",
"resourceId": "<resourceId>",
"appRoleId": "<appRoleId>"
}
我在Graph Explorer中测试它:
检查门户中的结果,它工作正常。