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

SAML 2.0与ADFS 3.0下实现全局登出的可行性咨询

问题解答:ADFS 3.0 + SAML 2.0 实现IdP触发的全局登出

可以实现,这正是SAML 2.0定义的**单点登出(Single Logout, SLO)**核心场景之一,ADFS 3.0完全支持该能力,具体实现方式如下:

1. 前提配置:确保所有SP支持SAML 2.0单点登出

  • 每个SP在ADFS中注册为信赖方时,必须提供登出服务端点(需包含HTTP Redirect或POST绑定类型)
  • SP侧必须实现SAML 2.0登出请求的处理逻辑:能接收ADFS发送的登出请求,销毁本地用户会话,并返回合法的登出响应

2. 配置ADFS启用全局登出

  • 图形化控制台配置:
    打开ADFS管理控制台 → 进入「信赖方信任」→ 选中目标SP → 右键选择「属性」→ 切换到「终结点」标签 → 添加SAML 2.0的登出服务端点(绑定类型、端点URL需与SP侧一致)
  • PowerShell命令配置:
    Set-ADFSRelyingPartyTrust -TargetName "你的SP名称" -SamlLogoutServiceEndpoint @{Add=@{Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"; Location="https://你的SP域名/saml/logout"}}
    
  • 确认ADFS全局SLO端点启用:在ADFS管理控制台的「服务」→「终结点」中,检查SAML 2.0单点登出终结点状态为启用(默认已启用)

3. 全局登出的触发与执行流程

当ADFS收到登出请求(无论是用户从任一SP发起,还是直接向ADFS的SLO端点提交请求),会执行以下步骤:

  • 销毁用户在ADFS(IdP)侧的会话
  • 遍历该用户所有已建立会话的SP,向每个SP的登出服务端点发送SAML 2.0登出请求
  • 各SP收到请求后销毁本地会话,并向ADFS返回登出响应
  • ADFS完成所有SP的会话失效后,引导用户到指定的登出完成页面

4. 关键注意事项

  • 所有SP必须严格遵循SAML 2.0的SLO规范,否则ADFS无法完成对该SP的会话销毁
  • 确保ADFS能正常访问每个SP的登出服务端点(需开放对应网络端口与路径)
  • ADFS通过STS(Security Token Service)跟踪用户与各SP的会话关联,确保能精准触发所有关联SP的登出

内容的提问来源于stack exchange,提问作者Zin Bhone Htut

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 09:30:46