Authentication 通过删除IDP cookie在Shibboleth中使用全局注销

Authentication 通过删除IDP cookie在Shibboleth中使用全局注销,authentication,shibboleth,Authentication,Shibboleth,我有一个产品使用Shibboleth进行认证 当用户在网站上发起注销时 web服务器向Shibboleth SP发送注销请求 SP在收到请求时删除Cookie日志 但是,如果用户返回网站,则不会提示登录页面 对于下面显示的配置,我使用的是这里给出的Shibboleth服务提供商 . 它被配置为使用testshib.org IdP详细信息,可以读取这些详细信息 我相信IdP并没有删除其会话cookie并在步骤3中重新登录用户 有关IdP Cookies的更多信息: 这说明IdP使用了两个cook

我有一个产品使用Shibboleth进行认证

当用户在网站上发起注销时

  • web服务器向Shibboleth SP发送注销请求
  • SP在收到请求时删除Cookie日志
  • 但是,如果用户返回网站,则不会提示登录页面
  • 对于下面显示的配置,我使用的是这里给出的Shibboleth服务提供商 . 它被配置为使用testshib.org IdP详细信息,可以读取这些详细信息

    我相信IdP并没有删除其会话cookie并在步骤3中重新登录用户

    有关IdP Cookies的更多信息:

    这说明IdP使用了两个cookie
    \u IdP\u authn\u lc\u密钥
    ,该密钥在身份验证后被删除。第二个是会话cookie“\u idp\u session”,它声明:

    一旦用户通过身份验证,他们将拥有一个长期会话 通过名为_IdP_session的cookie跟踪的IdP。这 cookie仅包含识别用户的身份所需的信息 国内流离失所者会议。此cookie创建为“会话”cookie,并将 当浏览器选择删除此类cookie时删除(通常在 浏览器已关闭)

    我的问题是

    • 我需要对SP进行哪些更改,以请求IdP删除相同的内容并有效创建全局注销

      • 无论如何,您将很难强制IdP注销用户。cookie方法是一个实现细节,并非所有IDP都使用它,它可能会改变。一些IDP可能会提供注销URL,但老实说,这对用户来说可能是件坏事(如果您能想出一种方法,不仅从您的站点,而且从他们与任何其他SP的会话中不断取消对用户的授权,您能想象吗?)。您实际上只能在服务提供商上控制自己的会话

        为什么不在用户返回/返回SP时强制重新验证?如果他们最近在访问后没有向IdP进行身份验证(这是您从SAML交换返回的字段),只需再次将他们发送回IdP并传递强制重新验证标志即可

        如果您使用的是Shibboleth软件,它甚至内置:

        看,我已经通过指向我的IdP的注销URL实现了你想要的。你的IdP应该提供给你。我不确定TestShib是否有一个,或者是否有任何关于它的文档。编辑:看起来TestShib没有提供任何支持。我也有这个问题,事实上我连接的IdP要求我们在Shibboleth上使用
        ForceAuthn
        ,但是该功能无法正常工作。它确实强制重新身份验证,但登录的用户不正确。示例:用户A登录、注销SP、返回SP,用户B输入凭据,但会话以用户A的身份启动。你对此有什么建议吗?