1.2.2. 全局注销配置集
Global Logout Profile 允许一个通过一组 I/P 和 SP 进行身份验证的主体注销,并将该断言传播到一个或多个关联的 Is 和 SP。
当主体通过 IDP 验证时,主体和 IDP 建立了身份验证会话。然后,IDP 根据该身份验证向各个 SP 或依赖方发出断言。如果主体试图访问那些 SP 中的安全资源,SP 可以根据 IDP 发布的该断言(从而依赖于 IDP)与主体建立额外的会话。
旦创建了某一会话或一组会话,则一个主体可能会通过不同的方式单独注销会话,也可以使用全局注销配置文件注销所有会话、所有 SP 和 IDP。Global Logout Profile 可以在其流中使用 HTTP 重定向、HTTP POST 或 HTTP Artifact 绑定。在某些情况下,它还可以使用 SOAP 绑定,这些情况并不属于本文档的范围。
单注销配置文件可用作全局注销配置文件的代号。
JBoss EAP 不支持 SAML 工件绑定。
与 Web 浏览器单点登录配置文件流一样,Global Logout Profile 流可以在 IDP 或 SP 上启动。
Global Logout Profile 的基本流程如下:
由会话参与者发布到 IDP 的注销.
会议参与者,如服务提供商或其他依赖方,终止其自身与主体的会话,并以
<LogoutRequest>信息的形式向 IDP 发送一个最初为主体发布安全断言的 IDP。此请求可以直接在 IDP 和依赖方之间发送,或者通过使用主体的用户代理作为传递间接发送。IDP 标识会话参与者.
旦 IDP 收到注销请求,它将使用该请求来确定哪些会话要终止依赖方,包括作为会话授权或会话参与者 IDP 拥有的任何会话。对于每个会话,IDP 向依赖方发出注销请求,并等待来自双方的注销响应,然后再向原始会话参与者发出新的注销响应。如果在 IDP 上启动全局 Logout Profile 流,则流程从此步骤开始,其他一些机制则用于确定会话和 SP。
IDP 发布的注销.
在 IDP 确定所有会话和相关的依赖方后,它会以
<LogoutRequest> 信息的形式向每个依赖方发送 Logout请求,并等待 Logout Response。这些请求可以在 IDP 和依赖方之间直接发送,或者间接通过主体的用户代理发送。注销会议参与者或授权机构发出的回复.
每个依赖方(包括 IDP 本身)会尝试根据 Logout Request 中的 IDP 指示终止会话,并以
<LogoutResponse> 消息的形式返回 LogoutResponse,返回 IDP。与注销请求一样,可以将响应直接在依赖方和 IDP 之间发出,或者间接通过主体的用户代理发出。IDP 发布对原始会话参与者的注销响应.
从依赖方收到所有注销响应后,IDP 会以
<LogoutResponse>信息的形式发送一个新的注销响应,返回请求注销的原始会话参与者。如同此流程的其他部分一样,此响应可直接在 IDP 和会话参与者之间传递,或者间接通过主体的用户代理进行传递。如果在 IDP 上发起 Logout Request,则省略这一步。
JBoss EAP 不支持在 JBoss EAP 中支持 IDP 和 SP 部分的全球注销配置文件之间的直接通信。