本文将介绍 Microsoft Entra ID 中有关用户同意和管理员同意的基本概念和方案。
同意是用户可以授予应用程序权限来访问受保护资源的一个过程。 为了指明所需的访问级别,应用程序会请求所需的 API 权限。 例如,应用程序可以请求权限,来查看已登录用户的配置文件,并读取用户邮箱的内容。
同意可以通过多种方式来启动。 例如,当用户首次尝试登录到应用程序时,系统会提示用户同意。 根据所需的权限,某些应用程序可能需要管理员来授予同意。
用户可以授权应用程序访问受保护资源中的某些数据,同时作为该用户行事。 允许此类访问的权限称为“委托的权限”。
用户登录到应用程序时会启动用户同意。 用户提供登录凭据后,系统会检查这些凭据以确定是否已授予同意。 如果没有之前用户或管理员同意所需权限的记录,则系统会将用户定向到同意提示窗口,以授予应用程序所请求的权限。
非管理员用户同意仅适用于允许用户同意应用程序和应用程序所需权限集的组织。 如果用户同意处于禁用状态,或者不允许用户同意所请求的权限,则系统不会提示他们同意。 如果允许用户同意并接受所请求的权限,则系统会记录同意。 用户通常不必在将来登录同一应用程序时再次同意。
用户可以控制其数据。 特权管理员可以配置是否允许非管理员用户向应用程序授予用户同意。 此设置会考虑应用程序、应用程序发布者以及所请求权限的各个方面。
作为管理员,你可以选择是否允许用户同意。 如果选择允许用户同意,则还可以选择在用户同意应用程序之前必须满足的条件。
通过选择适用于所有用户的应用程序同意策略,可以对何时允许用户向应用程序授予同意设置限制。 同意策略还会通知用户何时需要请求管理员评审和批准。 Microsoft Entra 管理中心提供以下内置选项:
可以禁用用户同意。 用户不能向应用程序授予权限。 用户继续登录到他们已同意的应用程序或管理员代表他们授予同意的应用程序。 但是,不允许用户自己同意对应用程序的新权限。 只有被授予目录角色(该角色具有授予同意的权限)的用户才能同意新应用程序。
用户可以同意已验证的发布者或你的组织中的应用程序,但只能同意你所选的权限。 所有用户都只能同意已验证的发布者发布的应用程序,以及在你的租户中注册的应用程序。 用户只能同意被分类为“影响较低”的权限。 你必须对权限进行分类,以选择允许用户同意哪些权限。
用户可以同意所有应用程序。 此选项允许所有用户同意任意应用程序的任意权限,而无需管理员同意。
对于大多数组织而言,选择其中一个内置选项就很合适。 某些高级客户可能要求进一步控制用于管理何时允许用户同意的条件。 这些客户可以创建自定义应用同意策略,并配置这些策略以应用于用户同意。
在管理员同意期间,特权管理员可以代表其他用户(通常代表整个组织)授予应用程序访问权限。 此外,在管理员同意期间,应用程序或服务提供对 API 的直接访问权限,如果没有登录用户,应用程序可以使用该 API。 授予管理员同意所需的特定角色因请求的权限而异,授予管理员同意一文中提供了相关概述。
当组织购买新应用程序的许可证或订阅时,你可能希望主动设置应用程序,以便组织中的所有用户都可以使用该应用程序。 为了避免用户同意的需要,管理员可以代表组织中的所有用户授予对应用程序的同意。
管理员代表组织授予管理员同意后,系统不会提示用户同意该应用程序。 在某些情况下,即使管理员授予了同意,系统也可能会提示用户同意。 例如,如果应用程序请求管理员尚未授予的其他权限,则可能会出现这种情况。
代表组织授予管理员同意是一项敏感操作,可能会允许应用程序的发布者访问某些重要的组织数据,或获得执行高特权操作的权限。 此类操作的示例可能包括:角色管理、对所有邮箱或所有站点的完全访问权限以及完全用户模拟。
授予租户范围管理员同意之前,确保对于所授予的访问权限级别,你信任应用程序和应用程序发布者。 如果你不确信了解控制应用程序的人员以及应用程序请求获得权限的原因,请勿授予同意。
有关是否授予应用程序管理员同意的分步指导,请参阅评估对租户范围管理员同意的请求。
有关从 Microsoft Entra 管理中心授予租户范围管理员同意的分步说明,请参阅向应用程序授予租户范围管理员同意。
管理员还可以使用 Microsoft Graph API 代表单个用户向委托的权限授予同意,而不是代表整个组织授予同意。 有关使用 Microsoft Graph PowerShell 的详细示例,请参阅使用 PowerShell 代表单个用户授予同意。
即使已授予了租户范围管理员同意,用户对应用程序的访问权限仍可受到限制。 将应用程序的属性配置为要求用户分配,以限制用户对应用程序的访问权限。 有关详细信息,请参阅分配用户和组的方法。
管理员同意工作流为用户提供了一种方法,便于其在被禁止自行同意应用程序时请求管理员同意。 当启用管理员同意工作流时,用户将看到“需要批准”窗口,便于其请求管理员批准以访问应用程序。
用户提交管理员同意请求后,指定为审阅者的管理员将收到通知。 审阅者处理请求后,会通知用户。 有关使用 Microsoft Entra 管理中心配置管理员同意工作流的分步说明,请参阅配置管理员同意工作流。
启用管理员同意工作流后,用户可以针对他们无权同意的应用程序请求管理员批准。 下面是此过程涉及的步骤:
- 用户尝试登录到应用程序。
- 此时将显示“需要批准”消息。 用户键入需要访问该应用程序的理由,然后选择“请求批准”。
- 随后会出现一条“已发送请求”消息,确认已将请求提交给管理员。如果用户发送多个请求,只有第一个请求才会提交给管理员。
- 当用户的请求被批准、拒绝或阻止时,用户将收到电子邮件通知。