我正在开发一个通过Microsoft Graph管理客房预订的应用程序。最后,应用程序需要读取和取消预订到某个房间资源帐户的会议。
不幸的是,只有权限Calendars.ReadWrite
赋予应用程序读取和写入租户中每个用户日历的权限,包括私人约会。
我没有发现任何限制权限或更细粒度地指定权限的可能性。
有谁知道如何处理这个问题? (或者我是否必须再次回到服务帐户和旧的交换Web服务,在那里我可以为该服务帐户提供细化权限?)
提前多多感谢!
答案 0 :(得分:1)
应用程序权限意味着该范围的完整级别,引用here。 如果您要确定此特定邮箱/日历的范围,则可以将委派权限与具有这些资源的委派权限的功能帐户一起使用。我们以前必须这样做。它很糟糕,但这是App Permissions与Delegate的本质。
如果您正在尝试编写此脚本,则可以尝试“client_secret_post”身份验证方法,以获取here提及的令牌获取,并使用OpenID Connect Spec和OAuth 2.0 Spec进行更详细的验证。
答案 1 :(得分:1)
您现在可以使用 New-ApplicationAccessPolicy PowerShell cmdlet限制应用程序具有的日历/邮箱访问权限。使用此功能,您可以将应用程序设置为使用应用程序权限,然后创建应用程序访问策略以限制这些权限的范围。
有关MS文档的设置方法,该指南很容易遵循: