c# - .NET 中缓存数据的安全性

标签 c# caching datatable asp.net-4.0

我缓存了一个通过 C# ASP .NET 4.0 Web 应用程序从 SQL Server 2005 获取的 DataTable [大约 50000 行 32 列]..

缓存通常位于客户端

我想知道缓存中的DataTable是安全的还是不安全的?

如果不安全

  1. 如何直接从缓存获取数据并[不是由我的 Web 应用程序作为非开发人员查看]
  2. 如何保护数据。

最佳答案

数据与服务器和 Web 应用程序一样安全。

如果有人对盒子有物理访问权限(或通过 RDP),他们总是可以导致内存转储并直接从内存中读取值。

根据其编写方式,应用程序可能会公开完整的缓存。

如果不关心其中任何一个,您可以认为缓存是安全的。

<小时/>

更新:

鉴于您正在谈论客户端 - 客户端上的没有可以被认为是完全安全的。客户端可以物理访问他们的机器,因此可以进行内存转储和许多其他技巧(包括直接内存检查)。

如果客户端不需要所有数据,则仅共享所需的最少数据。不要坚持。

关于c# - .NET 中缓存数据的安全性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8210020/

相关文章:

c# - .NET Reflector 是否无法正确反射(reflect) null 合并运算符?

c# - 我们如何在 wpf 中使用数据网格?

php - 缓存 MySQL 查询

asp.net - 除了 View 状态之外还有其他方式存储数据源吗?

jsf-2 - PrimeFaces 从延迟加载数据表中导出数据

c# - JSONResult 到字符串

c# - 将 DateTimeOffset 作为 WebAPI 查询字符串传递

ios - 不同的缓存类型 SDWebImage

当使用 staticmethod 或 classmethod 装饰器装饰时,类中的 Python LRU 缓存忽略 maxsize 限制

laravel - 如何在 Laravel 中添加到数据表列的路由链接?