我有一个rails应用程序,它实现CAS协议,设计用于处理用户身份验证。而且我在实施单点注销时遇到问题,因为当rails应用程序收到sso请求时,我需要保存票证ID以删除会话。
我不太明白如何修补Active Record Session Store以便在每次生成新用户会话时保存票号,以便我可以使用该票号从会话表中删除。 / p>
我目前正在使用会话存储的默认行为,但以下情况除外:
ActiveRecord::SessionStore::Session.primary_key = 'session_id'
ActiveRecord::SessionStore::Session.serializer = :json
答案 0 :(得分:0)
你的意思是在登录时,在控制器中做 componentDidMount(){
this.props.onUpdate();
}
,或者因为它只是一个模型,你可以扩展它;它只是一个模特!您可以进行正常迁移。你可以添加回调。
session[:ticket_id] = ...
然后你可以做class ActiveRecord::SessionStore::Session
before_create :set_ticket_id
end