你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
在条件访问策略中使用位置条件
条件访问策略归根到底就是一个 if-then 语句,该语句用于组合信号、做出决策以及强制实施组织策略。 其中一个信号就是位置。
重要
Microsoft Entra ID 将引入 IPv6。 从 2023 年 4 月 3 日开始,我们会开始分阶段地将 IPv6 支持引入 Microsoft Entra 服务。 在条件访问或标识保护中使用命名位置的组织必须采取措施来避免可能对服务造成的影响。
组织可以将此位置用于常见任务,例如:
- 要求用户在企业网络外部访问服务时执行多重身份验证。
- 阻止从组织从未在其地运营过的特定国家或地区访问服务的用户访问。
位置是通过使用客户端提供给 Microsoft Entra ID 的公共 IP 地址或 Microsoft Authenticator 应用提供的 GPS 坐标找到的。 默认情况下,条件访问策略应用于所有 IPv4 和 IPv6 地址。 有关 IPv6 支持的详细信息,请参阅 Microsoft Entra ID 中的 IPv6 支持一文。
提示
完成第一因素身份验证后将强制执行条件访问策略。 在遇到拒绝服务 (DoS) 攻击等情景中,条件访问不应充当组织的第一道防线,但它可以使用这些事件的信号来确定访问权限。
命名位置
位置位于“Microsoft Entra ID”>“安全”>“条件访问”>“命名位置”下。 这些命名网络位置可能包括组织的总部网络范围、VPN 网络范围或你希望阻止的范围等位置。 命名位置是按 IPv4 和 IPv6 地址范围或国家/地区来定义的。
IPv4 和 IPv6 地址范围
若要按 IPv4/IPv6 地址范围定义命名位置,需要提供:
- 位置的名称。
- 一个或多个 IP 范围。
- 可以选择“标记为受信任位置”。
IPv4/IPv6 地址范围定义的命名位置受到以下限制:
- 配置最多 195 个命名位置。
- 为每个命名位置配置最多 2000 个 IP 范围。
- IPv4 和 IPv6 范围都是受支持的。
- 包含在某范围内的 IP 地址的数量受限。 定义 IP 范围时只允许使用大于 /8 的 CIDR 掩码。
受信任位置
可将组织的公共网络范围等位置标记为受信任位置。 很多功能会以多种方式使用此标记。
- 条件访问策略可以包含或排除这些位置。
- 从受信任的命名位置登录可以提高 Microsoft Entra ID 标识保护风险计算的准确性,从而在用户从标记为受信任的位置进行身份验证时降低用户的登录风险。
- 无法删除标记为“受信任”的位置。 在删除之前,先移除受信任的指定。
警告
即使了解该网络并将其标记为受信任位置,也并不意味着要从应用的策略中排除该位置。 显式验证是零信任体系结构的核心原则。 要详细了解零信任和其他让组织与指导原则保持一致的方式,请参阅零信任指导中心。
国家/地区
组织可以通过 IP 地址或 GPS 坐标确定国家/地区位置。
若要按国家/地区定义命名位置,需要提供:
- 位置的名称。
- 选择按 IP 地址或 GPS 坐标确定位置。
- 添加一个或多个国家/地区。
- 可以选择“包括未知国家/地区”。
如果选择“按 IP 地址确定位置”,系统将收集用户登录的设备的 IP 地址。 自 2023 年 4 月 3 日起,当用户登录时,Microsoft Entra ID 会将用户的 IPv4 或 IPv6 地址解析为国家/地区,并且定期更新该映射。 组织可以使用按国家/地区定义的命名位置阻止来自他们未开展业务的国家/地区的流量。
如果选择“按 GPS 坐标确定位置”,则用户需要在其移动设备上安装 Microsoft Authenticator 应用。 系统每隔一小时会联系用户的 Microsoft Authenticator 应用,以收集用户的移动设备的 GPS 位置。
首次要求用户从 Microsoft Authenticator 共享其位置时,用户会在应用中收到通知。 用户需要打开应用并授予位置权限。 接下来的 24 小时内,如果用户仍在访问资源并授予应用在后台运行的权限,则每小时以静默方式共享一次设备的位置。
- 24 小时后,用户必须打开应用,并批准通知。
- 在 Microsoft Authenticator 应用中启用了数字匹配或其他上下文的用户不会静默接收通知,并且必须打开该应用才能批准通知。
每次用户分享其 GPS 位置时,该应用都会进行越狱检测(使用与 Intune MAM SDK 相同的逻辑)。 如果设备已越狱,则位置不被视为有效,并且不会授予用户访问权。 Android 上的 Microsoft Authenticator 应用使用 Google Play 完整性 API 来促进越狱检测。 如果 Google Play 完整性 API 不可用,则请求将被拒绝,并且用户无法访问请求的资源,除非禁用条件访问策略。
注意
在“仅报告”模式下具有基于 GPS 的命名位置的条件访问策略会提示用户共享其 GPS 位置,但不会阻止用户登录。
GPS 位置不适用于无密码身份验证方法。
在应用所有条件访问策略之前,这些条件访问策略可能会提示用户输入其 GPS 位置。 由于应用条件访问策略的方式,如果用户通过了位置检查但其他策略失败,则可能被拒绝访问。 有关策略强制的详细信息,请参阅文章构建条件访问策略。
重要
用户可能会每小时收到提示,让他们知道 Microsoft Entra ID 正在 Authenticator 应用中检查其位置。 预览只应用于保护可接受此行为的非常敏感的应用,或者需要将访问限制于特定国家/地区的情况。
包括未知国家/地区
某些 IP 地址未映射到特定的国家/地区或区域。 要捕获这些 IP 位置,请在定义地理位置时选中“包括未知国家/地区”框。 使用此选项可以选择这些 IP 地址是否应包含在命名位置中。 如果使用命名位置的策略需要应用到未知位置,则使用此设置。
定义位置
- 以条件访问管理员或安全管理员身份登录 Azure 门户。
- 浏览到“保护”>“条件访问”>“命名位置”。
- 选择“新建位置”。
- 为位置命名。
- 如果你知道构成该位置或“国家/地区”的特定外部可访问 IPv4 地址范围,请选择“IP 范围”。
- 为要指定的位置提供“IP 范围”或选择“国家/地区”。
- 如果选择“国家/地区”,可以选择包含未知区域。
- 为要指定的位置提供“IP 范围”或选择“国家/地区”。
- 选择“保存”
策略中的位置条件
配置位置条件时,可以区分:
- 任何位置
- 所有受信任的位置
- 所有网络访问位置
- 选定的位置
任何位置
默认情况下,选择“任何位置”会将策略应用到所有 IP 地址,即 Internet 上的所有地址。 此设置不限于已配置为命名位置的 IP 地址。 选择“任何位置”时,仍可从策略中排除特定位置。 例如,可将策略应用到除可信位置以外的所有位置,以将作用域设置为除企业网络以外的所有位置。
所有受信任的位置
此选项将应用到:
- 标记为受信任位置的所有位置。
- MFA 受信任的 IP(如果已配置)。
多重身份验证受信任的 IP
不再建议使用多重身份验证服务设置的受信任 IP 部分。 此控件仅接受 IPv4 地址,并且应仅用于配置 Microsoft Entra 多重身份验证设置一文中介绍的特定方案
如果已配置这些“受信任的 IP”,这些 IP 将作为“MFA 受信任的 IP”显示在位置条件的位置列表中。
租户的所有网络访问位置
有权访问全球安全访问预览功能的组织将看到另一个位置,该位置由符合组织安全策略的用户和设备构成。 有关详细信息,请参阅为条件访问启用全局安全访问信号部分。 它可以与条件访问策略一起使用,以执行合规的网络检查,以便访问资源。
选定的位置
使用此选项可以选择一个或多个命名位置。 对于要应用此设置的策略,用户需要从任一选定位置建立连接。 “选择”时,将会打开显示命名网络列表的命名网络选择控件。 此列表还显示网络位置是否已标记为受信任位置。
IPv6 流量
自 2023 年 4 月 3 日起,条件访问策略将应用于所有 IPv4 和 IPv6 流量。
在 Microsoft Entra 登录活动报告中标识 IPv6 流量
可以通过转到 Microsoft Entra 登录活动报告来发现租户中的 IPv6 流量。 打开活动报告后,添加“IP 地址”列,并将冒号 (:) 添加到字段。 此筛选器有助于区分 IPv6 流量和 IPv4 流量。
还可以通过单击报告中的行,然后转到登录活动详细信息中的“位置”选项卡来查找客户端 IP。
注意
如果登录因服务终结点处理流量的方式而失败,则登录日志中可能会显示这些终结点的 IPv6 地址。 请务必注意,不支持服务终结点。 如果用户看到这些 IPv6 地址,请从其虚拟网络子网配置中移除服务终结点。
要点
云代理和 VPN
使用云托管代理或 VPN 解决方案时,Microsoft Entra ID 在评估策略时使用的 IP 地址是该代理的 IP 地址。 不会使用包含用户公共 IP 地址的 X-Forwarded-For (XFF) 标头,因为没有任何机制验证该地址是否来自受信任的源,该标头可能提供了一种用于伪造 IP 地址的方法。
当云代理准备就绪时,可以使用一个策略来要求使用已建立 Microsoft Entra 混合联接的设备或合规设备,以便更轻松地进行管理。 对于云托管的代理或 VPN 解决方案的 IP 地址列表,要随时保持最新状态几乎是不可能的。
我们建议组织利用全局安全访问启用源 IP 还原,以避免地址发生此更改并简化管理。
何时评估位置?
条件访问策略的评估时机:
- 当用户最初登录到 Web 应用、移动应用或桌面应用程序时。
- 当使用新式身份验证的移动应用或桌面应用程序使用刷新令牌来获取新的访问令牌时。 默认情况下此检查一小时进行一次。
对于使用新式身份验证的移动应用和桌面应用程序,此检查意味着能在更改网络位置的一小时内检测到位置更改。 对于不使用新式身份验证的移动应用和桌面应用程序,此策略将应用于每个令牌请求。 请求的频率可能会因应用程序而异。 同样,对于 Web 应用程序,此策略在初始登录时应用,并适合用于 Web 应用程序的会话生存期。 由于不同应用程序的会话生存期不同,因此策略评估间隔的时间也会有所不同。 每次应用程序请求新的登录令牌时,就会应用此策略。
默认情况下,Microsoft Entra ID 每小时颁发一个令牌。 在用户离开企业网络后的一小时内,将使用新式身份验证对应用程序实施该策略。
用户 IP 地址
在策略评估中使用的 IP 地址是用户的公共 IPv4 或 IPv6 地址。 对于专用网络中的设备,该 IP 地址不是 Intranet 中用户设备的客户端 IP,而是专用网络连接到公共 Internet 时使用的地址。
何时可能会阻止位置?
使用位置条件阻止访问的策略被视为限制性策略,应在经过全面测试后谨慎执行。 使用位置条件阻止身份验证的一些实例可能包括:
- 屏蔽组织从未开展过业务的国家/地区。
- 屏蔽特定 IP 范围,例如:
- 更改防火墙策略之前已知的恶意 IP。
- 适用于高度敏感或优先的操作和云应用程序。
- 基于用户特定的 IP 范围,例如对会计或工资单应用程序的访问权限。
排除用户
条件访问策略是功能强大的工具,建议从策略中排除以下帐户:
- 紧急访问帐户或不受限帐户,用于防止租户范围的帐户锁定 。 在极少数情况下,所有管理员都被锁定在租户外,紧急访问管理帐户可用于登录租户,以采取措施来恢复访问。
- 有关详细信息,可参阅管理 Azure AD 中的紧急访问帐户一文。
- 服务帐户和服务主体,例如 Azure AD Connect 同步帐户。 服务帐户是不与任何特定用户关联的非交互式帐户。 它们通常由后端服务使用,以便可以对应用程序进行编程访问,不过也会用于登录系统以进行管理。 应该排除这样的服务帐户,因为无法以编程方式完成 MFA。 范围限定为用户的条件访问策略将不会阻止由服务主体进行的调用。 对工作负载标识使用条件访问来定义面向服务主体的策略。
- 如果组织在脚本或代码中使用这些帐户,请考虑将其替换为托管标识。 作为临时解决方法,可以从基线策略中排除这些特定的帐户。
批量上传和下载命名位置
创建或更新命名位置时,若要进行批量更新,可以上传或下载含 IP 范围的 CSV 文件。 上传过程会将列表中的 IP 范围替换为该文件中的那些范围。 该文件的每行包含一个采用 CIDR 格式的 IP 地址范围。
API 支持和 PowerShell
命名位置的 Graph API 预览版本可用。有关详细信息,请参阅 namedLocation API。
后续步骤
- 若要使用位置配置示例条件访问策略,请参阅条件访问:按位置阻止访问一文。