gpt4 book ai didi

asp.net - ASP.Net 中的 Int-UserID 和 Session 不安全?

转载 作者:行者123 更新时间:2023-12-04 07:02:32 26 4
gpt4 key购买 nike

我正在为我的新主页开发登录名。

现在我发现,我必须在浏览器的 session 变量中保存类似用户 ID(或我可以识别我的用户的其他值)之类的内容。

目前我使用 INT 作为用户 ID。

那么将用户 ID 放在 session 中不是不安全吗?

例如。当我将 session 变量手册从用户 ID 111 编辑为用户 ID 112 时,我是否以完整的其他用户身份登录?!

最佳答案

是的,仅依赖用户 ID 是不安全的。

您可能希望添加服务器生成并记住的唯一身份验证 token 。也是一个非常简单的解决方案,但它会停止操纵用户 ID,因为无法猜测其他用户的身份验证 token 的正确值。

您还需要同时提交用户 ID 和相应的身份验证 token 在每个请求 在执行请求的操作之前,在服务器端联合验证。

附言如果您将此信息存储在客户端可访问且可被操纵的 cookie 中,则上述情况适用。也可以操纵 View 状态(按页面序列化)。 session 集合是一个服务器端变量,在客户端上不可用,因此无法对其进行操作。在后一种情况下,您的用户 ID 应该是安全的。

我建议您实现双系统:将用户 ID 和 token 存储在 cookie 和 session 中,并使用相同的验证逻辑(为简单起见)。如果 cookie 被禁用,您会自动回退到使用 session 而不更改您的代码。

关于asp.net - ASP.Net 中的 Int-UserID 和 Session 不安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1612194/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com