如何存储由我的 ASP.NET 模块操作的临时数据?

Posted

技术标签:

【中文标题】如何存储由我的 ASP.NET 模块操作的临时数据?【英文标题】:How do I store temporary data manipulated by my ASP.NET module? 【发布时间】:2011-02-09 11:51:55 【问题描述】:

我估计通过扩展类似于this custom authentication module 的代码来实现WSSE authentication。

该代码将托管在 ASP.NET 中,并在站点的 web.config 文件的<system.web><httpModules> 部分中注册。模块的一个实例将由 IIS 中的一些代码创建,传递请求,存活一段时间然后销毁。

为了实施 WSSE,我需要以某种方式跟踪已发布的挑战(“nonce”)以防止重放攻击。

所以我需要将最近的挑战存储在某个地方,以便集合在传入请求之间持续存在,并且所有模块实例都可以访问。

什么是最方便的(就从 C# 使用它并将其部署在新服务器上而言)和最典型的解决方案?

【问题讨论】:

Application.Cache 是应用程序上下文中的共享空间,可以完成这项工作 【参考方案1】:

Session["mySess"] 也可以帮助你

【讨论】:

以上是关于如何存储由我的 ASP.NET 模块操作的临时数据?的主要内容,如果未能解决你的问题,请参考以下文章

Asp.Net 核心临时数据和重定向操作不起作用

Oracle存储过程创建临时表,插入数据后,怎么返回临时表数据,并在asp.net中接收到datatable中

如何使用 Asp.net 删除临时文件

ASP.NET - 如何在浏览器中显示图像而不将图像保存在临时文件中?

ASP.NET MVC 组合框值加载

如何使用 url 重写将位置数据存储在我的 asp.net 站点上所有页面的 url 中?