首页 > 技术文章 > ADFS配置踩坑记

huanghongbo 2020-03-15 00:26 原文

背景:和原有的AD FS集成的周边系统签发的签名证书到期,需要重新配置。
且公司对域名重新做了规划,需要更换ADFS的域名。
 
1.将包含新域名的通配符证书 *.example.com 导入AD FS Person/个人区域。
 
2.试图替换证书,参考https://blog.csdn.net/vic0228/article/details/80505508

 

如提示描述,使用管理员权限执行命令Set-ADFSProperties -AutoCertificateRollover $false
添加新证书后,删除原有证书,且重新置为Set-ADFSProperties -AutoCertificateRollover $true
 
3.添加指纹Set-AdfsSslCertificate -Thumbprint ‎f8d02ed2e08d53d65a53xxxxxxxxxxxxxxxxx1091报以下错误:
the SSL certificat specified by thumbprint xxxxx does not have a subject name that matches the speiafied Federation Service name: adfs.exam.com
原因如下:当初开启AD FS服务时使用了adfs.exam.com域名作为AD FS的服务地址,如今新证书的域名为 adfs.example.com ,地址变更,无法匹配。

 

 

鉴于网上找了一圈,也没有找到相关资料。最后决定重做AD FS。
移除原有AD FS服务,并安装新的AD FS服务。
参考如下:
 
1.移除服务:

 

 

 

 

 

 

2.安装AD FS服务

 

 

 

 

 

 

 

 

 
等待安装完毕,启动AD FS服务。
 
3.再次进入Power Shell, 执行Set-AdfsSslCertificate -Thumbprint ‎f8d02ed2e08d53d65a53xxxxxxxxxxxxxxxxx1091
认证指纹成功
 
至此,AD FS服务大功告成。
 
PS:我本次使用的是Windows Server 2016 EN, 因为我们的某个系统,不支持AD FS中文的NAME认证。
另外,网上有不少的诸如
netsh http show sslcert
netsh http delete sslcert ipprot=adfs.tylincn.com:443
netsh http delete sslcert ipport=0.0.0.0:443
Set-AdfsSslCertificate -Enablexxxxxxsinglesignon $true
等等奇淫巧技的命令,本次ADFS版本较高,用不上此类命令。
建议在安装AD FS时,使用最新版本的Windows Server,坑相对老版本较少,且AD FS和AD 服务分开安装。
 
另重要建议:再单间AD FS测试系统时,建议单独创建一个测试环境的AD 域服务,与正常使用的域区分开。
有很多好处,包括不仅限于:1.完整且独立的测试系统,2.OA系统可以连接AD测试环境 。

 

推荐阅读