单一登录/注销在rubycas服务器上不起作用



我启用了enable_single_sign_out:true。

我有两个应用程序,一个在Rails中,另一个在Django中,

我希望当我登录到一个应用程序时,我只需要刷新我的另一个应用,我就会自动登录。

Sam way,如果我从一个应用程序中挑选,并刷新其他应用程序,我也会从中注销。

如何使用rubycas服务器实现此场景。

目前,当我登录到一个应用程序并转到第二个应用程序,只需点击登录,它就会自动登录。但我必须明确地分别注销这两个应用程序。

我不知道Django客户端(rubycas-server文档说,目前并不是所有的客户端应用程序都支持单一注销),但为了让Ruby CAS客户端支持单一注销,你需要(在客户端应用程序中)执行以下操作:

  1. Rails会话存储必须设置为ActiveRecord:config.action_controller.session_store = :active_record_store

  2. 服务器必须能够读取和写入RAILS_ROOT/tmp/sessions。如果您在集群环境中,则此目录的内容必须在所有服务器实例之间共享。

  3. 必须禁用跨站点请求伪造保护。在您的应用程序.rb:self.allow_forgery_protection = false中。(或者,您可能希望仅对CAS过滤器后面的操作禁用伪造保护。)

更多信息可在此处找到:https://github.com/gunark/rubycas-client#readme

相关内容

  • 没有找到相关文章

最新更新