管理应用程序身份验证操作

应用程序对象的 authenticationBehaviors 属性允许配置与令牌颁发相关的中断性变更行为。 应用程序可以通过启用行为来采用新的中断性变更,也可以通过禁用它来继续使用预先存在的行为。

以下行为是可配置的:

注意

应用程序对象的 authenticationBehaviors 属性目前仅在 中 beta 可用。

读取应用程序的 authenticationBehaviors 设置

authenticationBehaviors 属性仅在请求时$select返回。

若要读取租户中所有应用的 属性和其他指定属性,请运行以下示例请求。 请求返回 200 OK 仅显示所选属性的应用程序对象的响应代码和 JSON 表示形式。

GET https://graph.microsoft.com/beta/applications?$select=id,displayName,appId,authenticationBehaviors

若要仅读取单个应用的 authenticationBehaviors 属性,请运行以下示例请求。

GET https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors

还可以使用 appId 属性,如下所示:

GET https://graph.microsoft.com/beta/applications(appId='37bf1fd4-78b0-4fea-ac2d-6c82829e9365')/authenticationBehaviors

阻止向未经验证的域所有者发出电子邮件声明

如Microsoft安全公告Microsoft Entra应用程序中特权提升的潜在风险中所述,应用不应将电子邮件声明用于授权目的。 如果应用程序将电子邮件声明用于授权或主要用户标识目的,则会受到帐户和特权提升攻击。 在以下情况下,特别会发现这种未经授权的访问风险:

  • 当用户对象的 mail 属性包含具有未经验证的域所有者的电子邮件地址时
  • 对于多租户应用,其中一个租户中的用户可以通过修改其 邮件 属性来升级其权限以访问另一个租户中的资源

有关在租户中识别这些情况的详细信息,请参阅 迁移,不使用电子邮件声明进行用户标识或授权

目前,默认行为是在声明中删除具有未经验证的域所有者的电子邮件地址,但单租户应用和多租户应用除外,这些应用以前具有未验证电子邮件的登录活动。 如果你的应用属于上述任一例外,并且你想要删除未经验证的电子邮件地址,请将 authenticationBehaviorsremoveUnverifiedEmailClaim 属性设置为 true ,如以下示例所示。 请求会返回 204 No Content 响应代码。

从声明中删除具有未经验证的域所有者的电子邮件地址

选项 1

这种在请求 URL 中指定 属性的模式允许 你仅 更新请求中的指定属性。

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors
Content-Type: application/json

{
    "removeUnverifiedEmailClaim": true
}

选项 2

这种在请求正文中指定 属性的模式允许更新同一请求中的其他对等属性。

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e
Content-Type: application/json

{
    "authenticationBehaviors": {
        "removeUnverifiedEmailClaim": true
    }
}

接受声明中未经验证的域所有者的电子邮件地址

选项 1

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors
Content-Type: application/json

{
    "removeUnverifiedEmailClaim": false
}

选项 2

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e
Content-Type: application/json

{
    "authenticationBehaviors": {
        "removeUnverifiedEmailClaim": false
    }
}

还原默认行为

选项 1

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/authenticationBehaviors
Content-Type: application/json

{
    "removeUnverifiedEmailClaim": null
}

选项 2

PATCH https://graph.microsoft.com/beta/applications/03ef14b0-ca33-4840-8f4f-d6e91916010e/
Content-Type: application/json

{
    "authenticationBehaviors": {
        "removeUnverifiedEmailClaim": null
    }
}

允许在 2025 年 6 月 30 日之前扩展的 Azure AD Graph 访问

默认情况下,在 2024 年 8 月 31 日之后创建的应用程序在向 Azure AD Graph API 发出请求时将收到 403 Unauthorized 错误,除非它们配置为允许扩展的 Azure AD Graph 访问。 此外,必须在 2024 年 8 月 31 日之前创建并向 Azure AD Graph API 发出请求的现有应用配置为在 2025 年 2 月 1 日之前允许扩展的 Azure AD Graph 访问。 此扩展访问仅在 2025 年 6 月 30 日 Azure AD Graph 完全停用之前可用。 在此日期之后,所有应用在向 Azure AD Graph API 发出请求时都将收到错误 403 Unauthorized ,无论其扩展访问配置如何。 有关详细信息,请参阅 Azure AD 图形 API停用的 2024 年 6 月更新

以下请求演示如何更新应用以启用扩展的 Azure AD Graph 访问。 请求会返回 204 No Content 响应代码。

选项 1

PATCH https://graph.microsoft.com/beta/applications/5c142e6f-0bd3-4e58-b510-8a106704f44f/authenticationBehaviors
Content-Type: application/json

{
    "blockAzureADGraphAccess": false
}

选项 2

PATCH https://graph.microsoft.com/beta/applications/5c142e6f-0bd3-4e58-b510-8a106704f44f
Content-Type: application/json

{
    "authenticationBehaviors": {
        "blockAzureADGraphAccess": false
    }
}