我使用内置的摘要式身份验证工具成功运行CherryPy应用程序,并且没有会话支持。现在,我想向某些用户公开其他功能。是否可以从授权系统中获取当前经过身份验证的用户?
答案 0 :(得分:2)
您可以使用:cherrypy.request.login
。
引用:
在请求处理期间使用身份验证时,会设置此功能 如果失败则为“False”,如果成功则为“用户名”值。 默认的“无”表示没有发生身份验证。
CherryPy中的整个HTTP Basic / Digest身份验证非常好地解释here(不幸的是原始博客不再具有此页面,至少我找不到它 - WayBack Machine拯救)。
答案 1 :(得分:1)
在HTTP请求标头授权中找到编码的用户名。我可以从那里解析它。如果有一个“更好”的地方来获取用户名,我愿意改进!
答案 2 :(得分:0)
这个怎么样......
params = auth_header.split(" ", 1)
items = parse_http_list(params)
paramsd = parse_keqv_list(items)
username = paramsd.get('username')
当我看到它时,这种方法仍然使用auth标头......
安德鲁