从 2026 年 3 月起,Microsoft Entra ID 将不再支持在没有服务主体的情况下进行应用身份验证。 在本文中,你将了解如何为退休做准备。 作为租户管理员,你将识别受影响的应用,创建服务主体,并验证所做的更改。
先决条件
- 分配有 应用程序管理员 或 云应用程序管理员 角色的帐户。
在没有服务主体的情况下阻止应用身份验证
Microsoft Entra ID 会对符合以下条件的所有非 Microsoft 多租户应用程序阻止身份验证:这些应用程序在要进行身份验证的租户中没有服务主体。 此方案也称为无服务主体身份验证。 对于大多数非Microsoft应用程序,此行为已禁用。 此更改解决了一些剩余的异常,是一项预防性安全措施。
不使用服务主体的应用身份验证允许多租户客户端应用程序从没有对象标识符(对象 ID)声明的租户中获取仅应用程序使用的令牌。 在大多数情况下,缺少服务主体意味着应用尚未获得访问任何数据的授权,这是无害的。 但是,在极少数情况下,如果目标 API 实现了不正确的授权检查,此功能可能会导致未经授权的访问。 Microsoft已验证Microsoft发布的 API 不容易受到此类滥用。 完全禁用此行为也会保护授权检查不足的非Microsoft API。
此外,通过强制要求所有应用程序在进行身份验证的每个租户中都必须有一个服务主体,我们有助于租户管理员对所有访问进行管理,包括能够使用条件访问策略单独针对这些应用。
如果你依赖的应用程序能进行身份验证但在租户中没有服务主体,则你必须在 2026 年 3 月 31 日之前采取行动以避免出现中断的情况。
有关停用的最新信息,请参阅 Microsoft Entra ID 所需的服务主体 | Microsoft 社区中心。
使用登录日志查找在没有服务主体的情况下进行身份验证的应用程序
注释
仅当应用在“服务主体登录”(仅适用于应用)登录日志中找不到服务主体的情况下进行身份验证时,才需要采取行动。 用户 登录日志将包括在没有服务主体的情况下进行身份验证的Microsoft应用程序和服务。 Microsoft应用程序无需使用服务主体进行登录和身份验证,这是预期的,客户无需执行任何操作。
首先,需要验证已命名应用程序对列出的资源的访问权限是否是必需的。 资源租户的管理员可以通过 登录日志查看应用程序的登录活动。 未使用服务主体进行身份验证的应用程序的服务主体 ID 在资源租户的登录日志中显示为 00000000-0000-0000-0000-000000000000。
- 导航到 Microsoft Entra 管理中心。
- 在左侧导航面板中,转到 Entra ID>监视和运行状况>登录日志。
- 转到 “服务主体登录 ”选项卡。
- 按 服务主体 ID 进行筛选,并在输入字段中输入
00000000-0000-0000-0000-000000000000。 - 将日期范围设置为 过去 1 个月。
- 单击日志条目以查看详细信息,并标识应用 的应用程序 ID。 你将在下一步需要这个。
创建服务主体
在识别出一个未通过服务主体进行身份验证的应用程序后,使用登录日志中的详细信息来确定它是否符合预期,并应继续在您的租户中进行身份验证。
如果无法识别应用并想要阻止它,请为应用 创建服务主体 ,然后 禁用服务主体。 若禁用应用的服务主体,则将阻止该应用在你的租户中所有后续的登录和身份验证尝试。
验证所做的更改
当你对应用程序采取行动之后,登录日志将包括该应用的新服务主体标识(ID),现在采用唯一的字母数字 GUID 格式 aaaaaaaa-bbbb-cccc-1111-222222222222。 这证实了此应用在你的租户中已具有服务主体,而且即将进行的更改不会影响此应用。