繁体   English   中英

在Play框架和Django之间共享会话

[英]Share Session between Play framework and Django

如何在应用程序上创建单个登录,让我从我的网站的一个部分移动到另一个部分。 我网站的一部分使用play框架,另一部分使用django。 我的SSO技术非常有限,所以对我很好:)

正如mandubian所述,最好的选择是拥有一个中央服务,提供所有应用程序识别并用于验证用户身份的身份验证令牌。 这种服务的例子就是CAS ,如果你说你没有SSO的经验,我会读到它以掌握它应该如何工作。

只是一个警告:身份验证和授权是应用程序的关键部分,甚至是Web应用程序的一部分。 我建议不要实施自己的解决方案,你可能最终会被黑客入侵并遇到问题(除非应用程序在内部网中,风险存在但通常更宽容)。 尝试使用CASJOSSO等现有解决方案

一个非常简单的解决方案是在您的域上使用一个可以被Play播放的cookie! 和Django。 cookie可以包含临时令牌,如果用户尚未登录该应用程序,则两个应用程序都可以在例如共享数据库中进行检查。

如果您使用标准的SSO机制,它应该由机制本身管理......
Web服务器(Django或Play)应将用户重定向到SSO服务器的身份验证页面。 SSO服务器生成令牌并将其发送回客户端(例如,在cookie中),并将客户端重定向到Web服务器(Django或Play),Web服务器本身可以使用给定令牌验证SSO服务器的身份验证。 然后,在客户端和Web服务器之间使用此令牌,直到验证会话结束。
因此,正如arjan所解释的那样,您应该在cookie中共享此令牌,并且两个Web服务器(django和play)都应该能够管理它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM