django,访问生成元属性的页面之外的元属性
因此,基本上,我使用django中的django,访问生成元属性的页面之外的元属性,django,django-views,Django,Django Views,因此,基本上,我使用django中的PersistentRemoteUsermiddelware通过登录页面处理身份验证请求,该页面由apache使用pubcookie 我可以做基本的user.is_authenticatedbit很好,但我的问题是我有两种类型的用户需要两种不同的身份验证。我有需要通过双因素身份验证的管理员用户和只使用用户/密码的标准用户 通过访问:self.request.META['AUTH\u type'],可以轻松地在登录页面上查看身份验证类型,根据authtype`,
PersistentRemoteUser
middelware通过登录页面处理身份验证请求,该页面由apache
使用pubcookie
我可以做基本的user.is_authenticated
bit很好,但我的问题是我有两种类型的用户需要两种不同的身份验证。我有需要通过双因素身份验证的管理员用户和只使用用户/密码的标准用户
通过访问:self.request.META['AUTH\u type'],可以轻松地在登录页面上查看身份验证类型,根据
authtype`,它将被读取为“SecureID”或“NetID”
但是我需要能够在不同的页面上执行检查,以查看用户是否使用secureid
或netid
进行了身份验证,以确定页面的哪些部分是可查看的,或者是否允许他们查看页面。但是元数据
不存在于初始登录页面之外,只有请求。用户
数据,除非我遗漏了什么,否则它不包含任何类型的身份验证类型
是否可以从另一个页面访问元数据
,或者将用户authtype保存到会话中携带的某种post
或session
变量
很抱歉,如果这个问题有点……愚蠢,我对django还是相当陌生的,并且仍然试图对它的某些方面进行思考。您已经回答了您的问题 使用将保留该值的会话(只要会话处于活动状态) 然后,您始终可以根据先前存储的会话值做出决定
if request.session['auth_type'] == 'SecureID':
# do two factor auth stuff
pass
else:
# do normal stuff
pass
谢谢你,我很笨。我在某个地方读到一些东西,让我觉得使用会话变量并不是那么简单,而且找不到任何关于它的信息。哈哈:)(也许你需要休息一下)。但这是文件中的参考。。。非常感谢。我不知道我怎么没找到。现在一切似乎都好了。非常感谢。
if request.session['auth_type'] == 'SecureID':
# do two factor auth stuff
pass
else:
# do normal stuff
pass