如何通过Microsoft Graph撤销对Microsoft Chat Bot的管理员同意
用Microsoft Graph撤销Bot已获得的第三方租户管理员同意权限
操作前提:你需要持有第三方租户内拥有Directory.ReadWrite.All或AppRoleAssignment.ReadWrite.All应用权限(需管理员同意)的调用凭证,或使用第三方租户的全局管理员、应用管理员、云应用管理员身份登录调用Graph接口。
操作步骤
- 第一步:获取目标授权记录ID
调用GET https://graph.microsoft.com/v1.0/servicePrincipals/{你的Bot在第三方租户内的服务主体ID}/appRoleAssignments,在返回结果中筛选resourceId对应第三方应用服务主体ID的记录,复制该条记录的id值作为授权记录ID。
如果要撤销的是委派类型的权限授权,可调用GET https://graph.microsoft.com/v1.0/oauth2PermissionGrants?$filter=clientId eq '{你的Bot在第三方租户内的服务主体ID}'获取对应的授权记录ID。 - 第二步:执行删除操作
- 撤销应用权限授权:调用
DELETE https://graph.microsoft.com/v1.0/servicePrincipals/{你的Bot在第三方租户内的服务主体ID}/appRoleAssignments/{第一步获取的授权记录ID},接口返回204状态码即代表删除成功。 - 撤销委派权限授权:调用
DELETE https://graph.microsoft.com/v1.0/oauth2PermissionGrants/{第一步获取的授权记录ID},接口返回204状态码即代表删除成功。
- 撤销应用权限授权:调用
注意事项
- 所有操作必须在授予权限的第三方租户环境下执行,无法在你自己的租户内操作其他租户给你的Bot授予的权限。
- 删除操作不可逆,执行前建议先调用对应GET接口核对授权记录的权限范围、关联的资源应用信息,确认无误后再执行删除。
内容的提问来源于stack exchange,提问作者ForgetfulFellow
相关产品推荐
相关产品推荐

