gpt4 book ai didi

java - Spring Security 和 CAS 注销重定向问题

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:17:09 25 4
gpt4 key购买 nike

我需要使用 Spring Security 在 Java 中实现 Sign Sign Out。 CAS 需要我的应用程序访问

https://www.home.com/cas/logout.cfm?service=myService&redirect= http://encoded.url.of.my.site

我将此 URL 放入 LogoutFilter 的构造函数参数(作为 logoutSuccessUrl),因此当我在我的站点上单击注销 URL 时,Spring Security 会清除 session 并将我重定向到该 URL,该 URL 通过 HTTPS。它做了应该做的事情,并试图将我重定向回我网站的欢迎地址。但是,这个地址是在 HTTP 协议(protocol)上,而不是在 HTTPS 上。因此,无论是因为在访问该安全页面时在参数中发送了一些信息,还是因为重定向回非安全页面,Firefox 都会给我一条消息:

Although this page is encrypted, the information you have entered is to be sent over an unencrypted connection and could easily be read by a third party.

好的,这很清楚,但是......那么使用 SSO 进行日志记录是如何工作的呢?它本质上做同样的事情。我的网站通过 https 重定向到 SSO 的登录页面,成功后重定向回我的网站,这是通过普通的 http。我怎样才能摆脱这条消息?

最佳答案

好的,经过一些研究我得到了答案。 Firefox 只有在重定向中有一些发布数据时才会抛出此消息,这是从 HTTPS 到 HTTP 发生的。这个消息不能被禁用,Firefox 的源代码中有相应的注释。发布的数据(以 XML 的形式)应该允许使 session 无效。这也使 CAS 能够在应用程序用户不执行任何操作的情况下使 session 无效(CAS 将数据发布到该 URL,应用程序使用户的 session 无效)。

登录没有抛出任何消息,因为它是一个简单的重定向,没有任何数据。

关于java - Spring Security 和 CAS 注销重定向问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5583041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com