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

SP发起SSO时访问/adfs/ls路径出现404错误求助

排查ADFS与Shibboleth SSO重定向404问题

结合你描述的Windows Server 2012 R2 ADFS + Ubuntu 12.x Shibboleth SP集成场景,重定向到https://myfederation-service-name/adfs/ls/时出现404,大概率是以下几个环节出了问题,按优先级逐一排查:

1. 确认ADFS登录端点是否正常启用

ADFS的/adfs/ls/是核心登录端点,首先要确保它在ADFS控制台中处于启用状态:

  • 打开ADFS管理控制台,导航到服务 > 端点
  • 在列表里找到SAML 2.0/WS-Federation分类下的/adfs/ls/,确认状态为「启用」
  • 如果是禁用状态,右键选择「启用」,然后重启ADFS服务:net stop adfssrv && net start adfssrv

另外要核对ADFS的对外服务URL:

  • 进入服务 > 联合身份验证服务属性,确认「联合身份验证服务名称」对应的URL是https://myfederation-service-name/,这个必须和Shibboleth SP配置里的IDP实体ID完全匹配。

2. 检查ADFS服务器的IIS配置

ADFS依赖IIS托管前端服务,IIS的虚拟目录或应用池配置异常会直接导致404:

  • 打开IIS管理器,找到ADFS对应的默认网站「ADFS」
  • 确认网站下存在「ls」虚拟目录,物理路径指向C:\Windows\ADFS\ls,且关联的应用程序池是「ADFSAppPool」(状态为「正在运行」)
  • 检查IIS的请求筛选规则:进入ADFS网站的「请求筛选」,确认没有拒绝/adfs/ls/路径的规则
  • 修复IIS映射异常:在ADFS服务器上以管理员身份运行PowerShell命令:Update-MSADFSWebConfig,该命令会重置ADFS与IIS的关联配置,解决常见的映射损坏问题

3. 验证网络与DNS连通性

客户端(包括Ubuntu SP服务器和用户浏览器)必须能正确访问ADFS服务器的443端口:

  • 在Ubuntu服务器上执行命令:curl -v https://myfederation-service-name/adfs/ls/,观察返回结果:
    • 如果返回404,说明ADFS服务器本身未正确响应该路径,回到前两步排查
    • 如果能返回ADFS登录页面或302跳转,说明网络正常,问题出在Shibboleth SP的配置
  • 检查防火墙:ADFS服务器的Windows防火墙要允许443端口的入站流量;Ubuntu服务器的防火墙要允许出站到ADFS 443端口的流量

4. 核对Shibboleth SP的IDP配置

Shibboleth SP里的IDP单点登录URL可能存在拼写错误:

  • 打开Shibboleth的IDP配置文件(通常是/etc/shibboleth/idp.xml或导入的元数据文件)
  • 找到<SingleSignOnService>元素,确认Location属性值是https://myfederation-service-name/adfs/ls/,注意末尾斜杠、域名拼写是否正确
  • 重启Shibboleth服务:service shibd restart,确保配置生效

5. 确认ADFS元数据的正确性

如果是通过元数据导入IDP配置,要确保元数据是最新且正确的:

  • 在浏览器中访问ADFS的元数据URL:https://myfederation-service-name/federationmetadata/2007-06/federationmetadata.xml
  • 查找<IDPSSODescriptor>下的<SingleSignOnService>节点,确认Location属性指向正确的/adfs/ls/路径
  • 如果元数据有误,重新下载并导入到Shibboleth SP,再重启服务

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 10:32:49