You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Azure AD联合单点登录能否使用自定义证书?对接Azure ADFS遇证书问题

如何配置Azure ADFS兼容的SSO解决方案使用自定义证书

我之前帮客户处理过类似的Azure AD SAML SSO自定义证书配置需求,下面是具体的步骤和关键注意事项,应该能帮你实现用自定义证书替代Azure自动生成证书的目标:

一、准备符合要求的自定义证书

首先要确保你的自定义证书满足Azure AD的要求:

  • 必须是X.509格式,且包含可导出的私钥(通常是PFX/P12文件)
  • 密钥长度至少为2048位(推荐4096位以提升安全性)
  • 证书主题名称或SAN(Subject Alternative Name)需匹配你的应用域名或Azure AD租户相关域名
  • 可以是公共可信CA签发的证书,也可以是内部CA签发的(仅限内网环境下使用)
  • 关键提醒:如果证书没有私钥,Azure AD无法用它来签署SAML断言,所以一定要确认私钥存在且可导出。

二、在Azure AD中上传并激活自定义证书

  1. 登录Azure门户,进入Azure Active Directory > 企业应用程序,找到你要配置SSO的应用(如果还没创建,先新建一个“非库应用”)。
  2. 切换到单一登录选项卡,选择SAML作为SSO方法。
  3. 在页面下方的SAML签名证书区域,点击上传证书,选择你准备好的PFX文件,输入证书的保护密码(如果设置过的话)。
  4. 上传完成后,点击证书右侧的“...”菜单,选择设为活跃,同时记得将之前Azure自动生成的证书设置为非活跃状态。

三、配置SAML断言签名与信任关系

  1. 在SAML配置的签名选项里,确认选择“签署断言”,并指定你刚上传的自定义证书作为签名证书。
  2. 导出自定义证书的公钥(CER格式),将其配置到你的通用SSO解决方案中,作为信任的签名证书——这样你的SSO提供商就能验证Azure AD发送的SAML响应是由你指定的证书签署的。

四、验证配置有效性

  • 使用Azure门户提供的测试单一登录功能,模拟用户登录场景,检查是否能正常完成SSO流程。
  • 可以用SAML调试工具(比如SAML Tracer)捕获SAML响应,查看响应中的签名证书指纹是否与你自定义证书的指纹一致,确认签名验证通过。

额外注意事项

  • 证书过期前要提前规划更换:建议在证书到期前30天上传新的自定义证书,切换为活跃状态,避免SSO服务中断。
  • 自签名证书的信任问题:如果使用自签名证书,必须确保你的SSO解决方案信任该证书的根CA,否则会出现签名验证失败的错误。
  • 特殊场景下的手动配置:如果门户操作无法生效,你可以进入应用的清单编辑页面,手动修改signingCertificate属性,填入自定义证书的Base64编码内容(注意要去掉证书文件中的页眉和页脚)。

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

火山引擎 最新活动