MVC - 存储安全信息

时间:2015-07-02 06:48:32

标签: asp.net-mvc-4 model-view-controller

在我的MVC研究期间,我刚刚提出这个问题。 b是否可能是正确的答案?

您正在设计分布式应用程序。应用程序必须存储安全信息 特定于个人用户。用户注销时必须自动清除数据。您 需要将临时信息保存在安全的数据存储中。你应该使用哪个数据存储?

一个。会话状态

B中。数据库存储

℃。配置文件属性

d。申请状态

谢谢,

3 个答案:

答案 0 :(得分:8)

如果“当用户注销时必须自动清除数据”,那么实际上不需要B或C. D(应用程序状态)是单个用户,所以最好的选择是A.

来自MSDN

  

...应用程序状态是存储少量常用数据的有用位置,这些数据不会从一个用户更改为另一个用户。有关按用户保存数据的信息,请参阅ASP.NET Session State OverviewASP.NET Profile Properties Overview[Ref]

这表明A和C是可能的,但是 -

  

[配置文件属性]类似于会话状态,但用户会话到期时配置文件数据不会丢失。 [Ref]

不满足,“当用户注销时必须自动清除数据。”,将A留作适当的答案。

答案 1 :(得分:1)

我对这个问题的看法:asp.net中的会话可以配置为在db中存储信息,默认情况下它存储信息in-proc,这不适合分布式应用程序。 因此,单独的会话选项不合适。但db选项可以与session一起使用:这将满足用户从一侧注销后清除信息的条件,并将信息存储在另一端的安全存储(db)中。

UPD。如果我可以选择多个选项(每个选项作为解决方案的一部分),我会选择会话+状态服务器或数据库。但由于我只能选择一个答案,我更喜欢会话。

答案 2 :(得分:-1)

B可能是一个有效的答案,但A是一个更好的选择。