You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从SAML/OIDC配置中识别源身份提供商(如Azure AD等)

身份提供商识别与OIDC自定义域名问题解答

一、从SAML/OIDC配置中识别源身份提供商

SAML协议场景

可以通过以下关键信息识别:

  • 实体ID(EntityID):不同厂商的实体ID有固定格式特征:
    • Azure AD:通常为 https://sts.windows.net/<租户ID>/
    • Google Cloud Identity:格式一般是 https://accounts.google.com/o/saml2?idpid=<IDP ID>
    • Okta:实体ID会包含Okta域名,比如 https://<你的okta域名>.okta.com/app/<应用ID>/sso/saml/metadata
    • PingIdentity:实体ID可能包含pingidentity.com,或自定义域名但元数据签名证书的颁发者会指向Ping的CA
  • 签名证书颁发者:多数厂商的SAML签名证书由自身CA签发,证书的Issuer字段会带有厂商标识
  • SAML响应的Issuer字段:实际认证返回的SAML响应里,Issuer值会直接暴露身份提供商的官方域名或特征格式

OIDC协议场景

默认情况下可通过这些信息识别:

  • .well-known/openid-configuration里的issuer字段:不同厂商的issuer有固定格式,比如:
    • Azure AD:https://login.microsoftonline.com/<租户ID>/v2.0
    • Google:https://accounts.google.com
    • Okta:https://<你的okta域名>.okta.com/oauth2/v1
  • JWKS端点的密钥证书:密钥链中的x5c证书,其Subject或Issuer字段会带有厂商的官方CA标识,比如Google的证书由Google Trust Services签发,Azure的由Microsoft Azure TLS Issuing CA签发

二、OIDC自定义域名下的身份提供商识别

当企业用自定义域名反向代理OIDC端点,导致.well-known/openid-configuration里的所有端点都是自定义域名时,可通过以下方式溯源:

  • 解析ID Token的payload:ID Token是身份提供商签发的JWT,其中的iss声明(颁发者)必须与身份提供商的官方issuer一致,不会被自定义域名覆盖。直接解码ID Token的payload部分(无需验证签名即可查看),就能拿到真实的身份提供商域名,进而识别厂商
  • 查看JWKS返回的证书链:即使端点是自定义域名,JWKS返回的公钥证书的Issuer或Subject字段仍会保留身份提供商的官方CA信息,通过证书信息可反向定位到对应厂商

内容的提问来源于stack exchange,提问作者TestOnly

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 07:34:58