【发布时间】:2015-05-22 10:42:11
【问题描述】:
我正在尝试创建命令行界面,我需要在其中使用 perl(在 Perl 中使用来自 Plack 的 Starman)在用户(客户端)和身份验证服务器之间执行身份验证和会话管理。
在成功认证后执行安全认证和会话管理的基本步骤应该是什么?
我尝试了以下步骤 -
1- 用户在客户端输入他的用户名和密码
2- 客户端将对凭据进行编码并将其发送到身份验证服务器
3- 身份验证服务器将验证来自 auth-database 的用户凭据并生成使用用户名及其登录类型加盐的会话密钥(令牌)
4- 成功认证后,此会话密钥(令牌)将被发送回客户端(用户),否则将发送 undef,客户端将抛出
“无效的用户错误”
5- 此令牌将与来自客户端的每个命令一起发送,并且具有命令定义的服务器(不是 aut-server)将验证令牌并允许根据验证执行命令
6-现在服务器有用户的登录时间和过期时间(比如2小时),所以auth服务器会不断检查用户是否已经过了过期时间,如果是,然后把用户带到登录提示。
请就上述实施提供您的反馈和建议。
【问题讨论】:
标签: perl session authentication server plack