![]() |
1
5
不,保存用户名是非常不安全的,因为它很容易被伪造。以下是我的指导方针:
标记可以由CSPRNG生成,以确保自动登录cookie不会被伪造。 散列数据库中的令牌可以防止在数据库受到破坏的情况下窃取用户帐户。(请记住,此时的令牌相当于密码。) 仅HTTP cookie可防止可能窃取cookie的XSS攻击。 |
![]() |
2
1
不,将用户名保存在cookie中以标记其授权的用户是不正确的,而且绝对不安全。 把cookie编辑成别人的用户名是很容易的,瞧!您现在被授权为该用户。 相反,您应该在cookie中存储一些特定于用户但特定于用户会话的信息。您可以从浏览器字符串中创建一个值(以某种方式使其不那么明显),并将该值存储在cookie和服务器上的会话数据中。当用户发送下一个请求时,您可以验证该值是否来自相同的会话和相同的浏览器配置。 当然,这并不完全安全,因为您可以欺骗cookie数据和浏览器字符串,但这比将用户名放入cookie安全得多,而且比仅依赖会话ID更安全。 要获得真正安全的身份验证,必须使用SSL。 |
![]() |
3
0
如果您将用户名存储在cookie中,那么很容易有人更改它。 更好的方法是在cookie中存储一个会话ID(您已经生成了这个ID),并将用户名之类的东西挂在服务器上。 |
![]() |
4
0
使用内置的表单身份验证框架来处理世界的HTTP传输端,避免重新设计车轮。 附言:在有人投反对票之前,请记住这一点!=使用sqlMembershipProvider。 |
![]() |
user1946932 · .Net正则表达式在所有字符前添加空格 7 月前 |
![]() |
TSDrake · 发布ASP。没有特定文件夹的.NET应用程序 7 月前 |
![]() |
Vengat Ramanan · 用户登录Asp时隐藏导航和页脚。网络核心 12 月前 |
![]() |
ramamoorthy_villi · 输入验证错误外键字段 1 年前 |