是否可以为 Azure AD 上的企业应用程序分配不同范围的权限?
Can an Enterprise Application on Azure AD be assigned differently scoped permissions?
我们的用例是这样的:我们的应用程序需要访问客户组织的 Azure AD 以:
- 验证用户
- 在 AD 发生变化时将用户的个人资料数据同步到我们的应用程序
- 阅读并订阅会议室的预订变更
因此,我们的应用程序需要 User.Read.All
权限才能读取用户的个人资料,而且 Calendar.Read.All
但后者必须限定在特定组(以保护实际用户的隐私) .根据 this article,租户管理员可以将应用程序的访问限制为特定组,但我没有看到任何方法可以针对单个权限执行此操作,因此它将企业应用程序的所有权限限制为此团体。我是否遗漏了什么或者这根本不可能,我需要为此目的使用多个服务帐户吗?
目前我们无法限制特定应用访问特定组的权限。但是我们可以将应用程序权限范围限定到 特定的 Exchange Online 邮箱 。
管理员可以使用 ApplicationAccessPolicy cmdlet 来控制已被授予以下任何应用程序权限的应用程序的邮箱访问:
- Mail.Read
- Mail.Read基本
- Mail.Read基本.全部
- Mail.Read写入
- Mail.Send
- MailboxSettings.Read
- MailboxSettings.Read写入
- Calendars.Read
- Calendars.Read写入
- Contacts.Read
- Contacts.Read写入
因此,如果您同时拥有 User.Read.All
和 Calendar.Read
,ApplicationAccessPolicy 将仅适用于 Calendar.Read
权限。 ApplicationAccessPolicy 特定于 Exchange Online 资源,不适用于其他 Microsoft Graph 工作负载。
我们的用例是这样的:我们的应用程序需要访问客户组织的 Azure AD 以:
- 验证用户
- 在 AD 发生变化时将用户的个人资料数据同步到我们的应用程序
- 阅读并订阅会议室的预订变更
因此,我们的应用程序需要 User.Read.All
权限才能读取用户的个人资料,而且 Calendar.Read.All
但后者必须限定在特定组(以保护实际用户的隐私) .根据 this article,租户管理员可以将应用程序的访问限制为特定组,但我没有看到任何方法可以针对单个权限执行此操作,因此它将企业应用程序的所有权限限制为此团体。我是否遗漏了什么或者这根本不可能,我需要为此目的使用多个服务帐户吗?
目前我们无法限制特定应用访问特定组的权限。但是我们可以将应用程序权限范围限定到 特定的 Exchange Online 邮箱 。
管理员可以使用 ApplicationAccessPolicy cmdlet 来控制已被授予以下任何应用程序权限的应用程序的邮箱访问:
- Mail.Read
- Mail.Read基本
- Mail.Read基本.全部
- Mail.Read写入
- Mail.Send
- MailboxSettings.Read
- MailboxSettings.Read写入
- Calendars.Read
- Calendars.Read写入
- Contacts.Read
- Contacts.Read写入
因此,如果您同时拥有 User.Read.All
和 Calendar.Read
,ApplicationAccessPolicy 将仅适用于 Calendar.Read
权限。 ApplicationAccessPolicy 特定于 Exchange Online 资源,不适用于其他 Microsoft Graph 工作负载。