Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django 1.7-如何清除单个用户的所有会话,以便只允许从一个选项卡访问应用程序?_Python_Django_Session_Django Views_Django Users - Fatal编程技术网

Python Django 1.7-如何清除单个用户的所有会话,以便只允许从一个选项卡访问应用程序?

Python Django 1.7-如何清除单个用户的所有会话,以便只允许从一个选项卡访问应用程序?,python,django,session,django-views,django-users,Python,Django,Session,Django Views,Django Users,我想让我的应用程序仅从浏览器窗口的一个实例tab对用户可用。 我的想法是:删除所有登录用户的会话,这样就只能使用一个浏览器实例 但是我如何才能做到这一点呢?您并不完全了解会话是如何工作的。您想要做的事情无法以安全的方式强制执行 想象一下,会话和cookie的工作方式与您的保险箱和安全钥匙的工作方式大致相同。任何拥有密钥/cookie额外副本的人都可以从任何他们喜欢的地方访问会话。用django中会话的简单实现来克服这一限制是不可能的,所以还是忘掉它吧 像Facebook这样的大型网站通过使用更高

我想让我的应用程序仅从浏览器窗口的一个实例tab对用户可用。 我的想法是:删除所有登录用户的会话,这样就只能使用一个浏览器实例


但是我如何才能做到这一点呢?

您并不完全了解会话是如何工作的。您想要做的事情无法以安全的方式强制执行

想象一下,会话和cookie的工作方式与您的保险箱和安全钥匙的工作方式大致相同。任何拥有密钥/cookie额外副本的人都可以从任何他们喜欢的地方访问会话。用django中会话的简单实现来克服这一限制是不可能的,所以还是忘掉它吧


像Facebook这样的大型网站通过使用更高级的安全机制、SSL、启发式等来解决这个问题

没有简单的方法来实施这一点。会话使用cookie,cookie在浏览器范围内设置,而不是在选项卡或窗口上。你为什么需要这个?这可能是可能的,但很可能有更好更简单的方法来解决“一个窗口访问”试图解决的任何问题。出于安全考虑,我需要这一点-浏览器中必须只有一个应用程序实例供用户使用。您的目标是什么样的安全性?我不明白这和安全有什么关系。