代码之家  ›  专栏  ›  技术社区  ›  JoeBilly

在IIS服务器上使用IsolatedStorage

  •  5
  • JoeBilly  · 技术社区  · 16 年前

    我对使用 Isolated Storage 在IIS服务器上。

    我理解 隔离存储 :提供一个安全的存储数据的地方,而不必担心这个地方是如何以及在哪里。

    自从 隔离存储 有一个按用户和按程序集的方法,在应用程序几乎拥有自己身份的IIS服务器上使用它,我并不太疯狂。 我没有真正看到模仿Web应用程序的兴趣,几乎从未亲眼见过模仿Web应用程序,但这是我的观点。

    使用 隔离存储 在服务器上意味着( 对于Windows Server 2003 ):

    • 在中使用独立存储 \Documents and Settings\<user>\

    • 这意味着什么? \Documents and Settings\Default User\ 当应用程序池由 局部系统 或 网络服务 我猜

    • 这也意味着 写 对此文件夹的权限 局部系统 或 网络服务

    • 冒充的使用

    关于Web应用程序(逻辑),这些想法让我困惑……文档和设置?默认用户?是否仅为存储启用模拟?无法控制服务器上的存储?休斯敦大学?

    有关MSDN的一些要点:

    • 服务器存储 . 服务器应用程序可以使用独立存储来提供单个存储[…]。因为隔离存储总是由用户隔离的,所以服务器 必须模拟 发出请求的用户。[…]

    • 使用独立存储使部分受信任的应用程序能够以受计算机安全策略控制的方式存储数据。

    • 默认情况下,从本地计算机运行的代码 局域网络 ,[…]被授予使用独立存储的权利。我应该理解吗 网络服务 ?我会很惊讶的。在我的IIS服务器上不是这样的(Windows2003)。

    然后我就成了一个女人的前脸:用 System.IO.Packaging (内部有独立的存储)在Web应用程序上还是寻找替代方案?使用 IO.Packaging 意味着您必须启用独立存储?

    我的方法不对吗?我错过什么了吗?

    我精确地说,我特别不想在IIS服务器上使用/启用它,我想了解在这样的环境中启用它是否是一个好的实践。

    任何观点都是值得赞赏的,关于“使用IIS的隔离存储原理”的解释可能是一种警告。

    谢谢!

    1 回复  |  直到 13 年前
        1
  •  1
  •   CJ Harmath    13 年前

    如果出于某种原因需要使用服务器端独立存储,则必须模拟用户,为此,需要使用Windows集成身份验证,以便用请求用户填充HTTP上下文的用户主体。 请求线程会将标识切换到请求者用户,我假设(还没有测试)您将看到该帐户下的独立存储。

    我仍然不确定什么时候在服务器端为通常在企业环境中在Web场上运行的IIS应用程序使用独立存储。 在本地为每个用户存储任何内容都是违反最佳实践的。 如果服务器出故障,那么您就丢失了数据。