使用此引用查找扩展 Microsoft 标识平台 OpenID Connect (OIDC) 行为的每个受支持的方法。 每行都链接到此存储库中的概念或操作方法文章,以及Microsoft 图形 API资源来规划图面。
扩展性是指更改Microsoft Entra如何颁发 OIDC 令牌或处理你拥有的应用的 OIDC 请求,例如,从外部存储添加声明、自定义每个应用的令牌内容或从外部工作负荷标识信任令牌。 将现有 OIDC 应用(如 GitHub、Salesforce 或其他 SaaS 应用)配置为使用Microsoft Entra进行登录是集成,而不是扩展性。 有关应用集成指南,请参阅Microsoft Entra应用程序库。
有关基础终结点协定,请参阅 Microsoft 标识平台上的 OpenID Connect。
扩展性图面一目了然
| 能力 | 它允许你执行的操作 | 概念和操作说明 | Microsoft图形 API |
|---|---|---|---|
| 自定义声明提供程序 | 在令牌颁发期间调用外部 REST API,以使用来自远程存储的声明来扩充令牌。 | 自定义声明提供程序概述,参考 | customAuthenticationExtension, onTokenIssuanceStartListener |
| 代币发行开始事件 | 配置在令牌颁发期间触发自定义声明提供程序的事件侦听器。 | 设置令牌颁发启动事件,配置 | onTokenIssuanceStartCustomExtension, onTokenIssuanceStartHandler, onTokenIssuanceStartReturnClaim |
| 可选声明 | 将Microsoft Entra源声明(例如groups,idtyp)login_hint添加到 ID、访问和 SAML 令牌。 |
向应用提供可选声明, 参考 | optionalClaim、application 上的 optionalClaims |
| 自定义声明策略(每应用) | 将目录属性映射到为特定应用颁发的令牌中的声明,包括转换。 | JWT 声明自定义、 SAML 声明自定义、自定义声明策略 | customClaimsPolicy, claimsMappingPolicy |
| 令牌生存期策略 | 为应用或租户配置访问、刷新和 ID 令牌生存期。 | 可配置令牌生存期, 配置 | tokenLifetimePolicy |
| 令牌颁发策略 | 在颁发时配置 SAML 令牌签名和加密行为。 | SAML 声明自定义 | tokenIssuancePolicy |
| 联合标识凭据 | 信任来自外部颁发者的令牌(GitHub、Kubernetes、其他云),而不是使用客户端机密或证书。 | 工作负荷标识联合 | federatedIdentityCredential, 联合标识凭据概述 |
| 应用程序清单 | 以声明方式配置重定向 URI、访问群体、允许的授予类型和令牌设置。 | 应用程序清单参考 | application、 servicePrincipal |
| 委派权限授予 | 授权用户或租户的委派范围。 | 权限和许可概述 | oAuth2PermissionGrant |
| 应用角色分配 | 将应用角色分配给基于令牌的授权的用户、组或服务主体。 | 应用角色概述 | appRoleAssignment |
| 连续访问评估 (CAE) | 为用户注销、密码更改和风险检测等事件启用近乎实时的令牌吊销。 | 连续访问评估 | conditionalAccessPolicy |
| 索赔质询 (加强) | 在会话中请求更强身份验证或更新的声明。 | 声明质询、 声明验证 | N/A(协议级别;在请求参数中 claims 发出信号) |
选择扩展性图面
使用以下指南确定适合你的方案的表面:
- 若要添加源自Microsoft Entra ID的声明,请使用可选声明或自定义声明策略。
- 若要添加源自外部系统的声明,请使用由Azure Functions终结点或其他 REST API 支持的自定义声明提供程序。
- 若要 信任外部工作负荷标识 ,而不是使用客户端机密或证书,请配置 联合标识凭据。
- 若要对现有令牌 上的安全事件 (撤销的会话、风险更改、密码重置)做出反应,请启用 持续访问评估。
- 若要在会话期间 请求更新的身份验证 ,请发出 声明质询。
编程模型
表中的大多数图面都通过Microsoft Graph应用程序和servicePrincipal 资源或通过policies终结点进行配置。 身份验证库未配置这些图面;使用Microsoft Graph SDK、Microsoft Graph PowerShell SDK或直接 REST 调用。