加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET MVC中每用户变量的Session替代方法

发布时间:2020-12-16 06:31:11 所属栏目:asp.Net 来源:网络整理
导读:我正在开发一个MVC 3应用程序,该应用程序将托管在具有多工作进程设置的Web场中.有大约十几个变量存储在Session中,但由于IIS设置而丢失. 通过迷失我的意思是当登录过程成功时,我通过日志记录看到我已经设置了Session变量,但是在重定向操作之后,在着陆Controll
我正在开发一个MVC 3应用程序,该应用程序将托管在具有多工作进程设置的Web场中.有大约十几个变量存储在Session中,但由于IIS设置而丢失.

通过迷失我的意思是当登录过程成功时,我通过日志记录看到我已经设置了Session变量,但是在重定向操作之后,在着陆Controller Action上,Session变量通常是空的.我不确定这是否相关,但这是在HTTPS中.

我们正在考虑将存储在Session out中的用户特定设置移动到其他机制的可能性,但是有一个变量我将无法使用它.鉴于上述部署环境,我有以下问题.

> Cookie是我唯一的(最好的?)替代方法,用于存储用户特定设置的会话变量吗?
>如果是这样,是否有一种安全的机制来编写cookie,这样它们就无法被操作,仍然可以在多服务器环境中读取?
>据我所知,System.Runtime.Caching在上述IIS配置中运行时遇到同样的问题.真的吗?

解决方法

Are cookies my only (best?) alternative to storing Session variables
for user-specific settings?

不 – 他们是最糟糕的方法.想到的三个原因:

>他们可以被操纵.
>他们随着客户端到服务器的每一个请求一起旅行 – 效率低下.
>它们将为您的实现添加更多复杂性,因为您必须开始考虑以不同方式保护它们.

If so is there a secure mechanism for writing cookies so they cannot
be manipulated and can still be read in a multi-server environment?

见上面的答案.

As I understand it System.Runtime.Caching suffers from the same
problem when ran in the above IIS configuration. Is that true?

真正.您应该使用任何超出proc的州提供商.你可以使用Sql Server存储会话数据 – 提供你的对象是可序列化的,显然 – 或者State server mode mode =“stateserver”

Read here了解更多详情

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读