Microsoft Entra应用程序身份验证方法 API 概述
命名空间:microsoft.graph
应用程序身份验证方法(如证书和密码机密)允许应用获取令牌以访问Microsoft Entra ID中的数据。 这些策略允许 IT 管理员对其组织中的应用如何使用这些应用程序身份验证方法强制执行最佳做法。 例如,管理员可以配置策略来阻止使用或限制密码机密的生存期,并使用对象的创建日期来强制实施策略。
这些策略允许组织利用新的应用安全强化功能。 通过强制实施基于应用程序或服务主体创建日期的限制,组织可以查看其当前的应用安全状况、清点应用,并根据其资源计划和需求强制实施控制。 使用创建日期的此方法允许组织对新应用程序强制实施策略,并将其应用于现有应用程序。
有两种类型的策略控制:
- 适用于所有应用程序或服务主体的租户默认策略。
- 应用 (应用程序或服务主体) 管理策略,这些策略允许在租户默认策略中包含或排除单个应用程序。
租户默认应用管理策略
租户默认策略是始终存在的单个对象,默认情况下处于禁用状态。 它由 tenantAppManagementPolicy 资源定义,对应用程序与服务主体对象强制实施限制。 它包含以下两个属性:
- applicationRestrictions 允许将租户拥有的应用程序 (应用程序对象) 。
- servicePrincipalRestrictions 允许针对从另一个租户预配 (服务主体对象。
这些属性使组织能够锁定源自其租户的应用中的凭据使用情况,并提供一种机制来控制外部预配应用程序中的凭据添加,以保护其免受凭据滥用。 多租户应用的应用程序所有者仍然可以在其应用程序对象中使用任何类型的凭据,但该策略仅保护服务主体免受凭据滥用。
应用程序和服务主体的应用管理策略
应用管理策略在 appManagementPolicy 资源中定义,其中包含一组策略,这些策略具有与租户默认策略中定义的不同限制或不同的实施日期。 可将其中一个策略分配给应用程序或服务主体,并将其从租户默认策略中排除。
如果同时存在租户默认策略和应用管理策略,则应用管理策略优先,并且分配的应用程序或服务主体不会从租户默认策略继承。 只能将一个策略分配给应用程序或服务主体。
注意
租户默认策略和应用管理策略都不会阻止现有应用程序的令牌颁发。 不符合策略要求的应用程序将继续工作,直到它尝试更新资源以添加新机密。
可以在 Microsoft Graph 中管理哪些限制?
应用程序身份验证方法策略 API 提供以下限制:
限制名称 | 说明 | 示例 |
---|---|---|
passwordAddition | 完全限制应用程序的密码机密。 | 在“01/01/2019”或之后创建的应用程序上阻止新密码。 |
passwordLifetime | 为密码机密强制实施最大生存期范围。 | 对于 2015 年 1 月 1 日之后创建的应用程序,将所有新密码机密限制为最多 30 天。 |
customPasswordAddition | 限制应用程序或服务主体上的自定义密码机密。 | 限制在 2015/01/01 之后创建的应用程序上的所有新自定义密码机密。 |
symmetricKeyAddition | 限制应用程序上的对称密钥。 | 阻止在 2019 年 1 月 1 日或之后创建的应用程序上的新对称密钥。 |
symmetricKeyLifetime | 为对称密钥强制实施最大生存期范围。 | 对于 2019/01/01 之后创建的应用程序,将所有新的对称密钥限制为最多 30 天。 |
asymmetricKeyLifetime | 为非对称密钥 (证书) 强制实施最大生存期范围。 | 对于 2019/01/01 之后创建的应用程序,将所有新的非对称密钥凭据限制为最多 30 天。 |
注意
所有生存期限制都以 ISO-8601 持续时间格式表示 (例如:P4DT12H30M5S) 。 限制 customPasswordAddition 限制将阻止为应用程序提供客户端生成的密码机密的任何旧版 PowerShell 模块。 此限制仍允许应用程序开发人员请求Microsoft Entra ID生成的应用程序密码机密。
单租户与多租户应用
根据应用是单租户应用还是多租户应用,可在应用程序或服务主体对象上应用策略,如下所示:
- 对于单租户应用,请将策略应用于应用程序对象。
- 若要限制驻留在客户租户中的多租户应用,请将策略应用于应用程序对象。
- 若要限制从另一个租户预配的多租户应用,请将策略应用于服务主体对象。
租户默认策略与应用管理策略之间的主要差异摘要
租户默认策略 | 应用管理策略 |
---|---|
策略始终存在。 | 可以创建或更新策略对象以替代默认策略。 |
默认情况下,对应用/SP 禁用限制。 | 允许自定义主租户中的单租户或多租户 (支持应用或预配应用) 。 |
仅允许所有资源的单个限制对象定义。 | 允许定义多个策略对象,但只能将一个策略对象应用于资源。 |
允许区分应用程序对象和服务主体的限制。 | 策略可以应用于应用程序或服务主体对象。 |
将配置的所有限制应用于所有应用或服务主体。 | 仅将资源策略中配置的限制应用于指定的应用或服务主体,不继承自默认策略。 |
要求
- 用于管理应用程序身份验证方法策略的最低特权Microsoft Entra角色是应用程序管理员和云应用程序管理员。
- 所有应用策略管理操作都需要Microsoft Entra Workload ID Premium 许可证。
后续步骤
- tenantAppManagementPolicy 资源类型。
- appManagementPolicy 资源类型。