配置应用程序对联机会议的访问权限
可以使用 Microsoft Graph 中的云通信 API 配置允许应用程序代表用户访问联机会议的应用程序访问策略。
在某些情况下,例如,对于在服务器上运行的后台服务或守护程序应用,而没有登录用户,应用应该调用 Microsoft Graph 以代表用户执行操作。 例如,应用可能需要调用 Microsoft Graph,以便根据已发布的日程安排 ((如课程) 或外部日程安排工具)安排多个会议。 在这些情况下,应用程序代表的用户被标识为会议组织者。
希望允许应用程序代表用户访问联机会议资源的管理员可以使用 New-CsApplicationAccessPolicy 和 Grant-CsApplicationAccessPolicy PowerShell cmdlet 配置访问控制。
本文介绍了配置应用程序访问策略的基本步骤。 这些步骤特定于联机会议,不适用于其他 Microsoft Graph 资源。
配置应用程序访问策略
若要配置应用程序访问策略并允许应用程序使用应用程序权限访问联机会议,请执行以下操作:
标识应用的应用程序 (客户端) ID,以及应用将授权访问联机会议的用户的用户 ID。
- 在 Azure 应用注册门户中标识应用的应用程序(客户端)ID。
- 在 Azure 用户管理门户中标识用户 (对象) ID
使用管理员帐户连接到 Skype for Business PowerShell。 有关详细信息,请参阅使用 PowerShell 管理 Skype for Business Online。
创建包含应用 ID 列表的应用程序访问策略。
运行以下 cmdlet,替换 Identity、 AppIds 和 Description (可选的) 参数。
New-CsApplicationAccessPolicy -Identity Test-policy -AppIds "ddb80e06-92f3-4978-bc22-a0eee85e6a9e", "ccb80e06-92f3-4978-bc22-a0eee85e6a9e", "bbb80e06-92f3-4978-bc22-a0eee85e6a9e" -Description "description here"
向用户授予策略,以允许策略中包含的应用 ID 代表已授予的用户访问联机会议。
运行以下 cmdlet,替换 PolicyName 和 Identity 参数。
Grant-CsApplicationAccessPolicy -PolicyName Test-policy -Identity "748d2cbb-3b55-40ed-8c34-2eae5932b22a"
(可选) 向整个租户授予策略。 这将适用于未分配应用程序访问策略的用户。 有关详细信息,请参阅另 请参阅部分中的 cmdlet 链接。
运行以下 cmdlet,替换 PolicyName 参数。
Grant-CsApplicationAccessPolicy -PolicyName Test-policy -Global
注意
- 标识 是指创建策略时的策略名称,但在授予策略时是指用户 ID。
- 对应用程序访问策略的更改可能需要长达 30 分钟才能在 Microsoft Graph REST API 调用中生效。
受支持的权限和其他资源
管理员可以使用 ApplicationAccessPolicy cmdlet 控制已授予以下任何应用程序权限的应用的联机会议访问权限:
- OnlineMeetings.Read.All
- OnlineMeetings.ReadWrite.All
- OnlineMeetingArtifact.Read.All
有关配置应用程序访问策略的详细信息,请参阅适合于 New-ApplicationAccessPolicy 的 PowerShell cmdlet 参考。
错误
如果未配置应用程序访问策略,由于某个应用尝试访问联机会议,导致 API 调用被拒绝访问时,可能会遇到以下错误。
{
"error": {
"code": "Unauthorized",
"message": "App <app_ID_redacted> is not authorized to Create meeting on behalf of user <user_ID_redacted>",
"innerError": {
"date": "<date_redacted>",
"request-id": "599d9cb0-56ac-4dc5-b6f8-1456a1414609"
}
}
}
按照本文中的步骤创建和/或授予应用程序访问策略,该策略包含用户 ID 的应用 ID。