【问题标题】:ASP.NET membership session cookieASP.NET 成员会话 cookie
【发布时间】:2010-07-11 05:39:23
【问题描述】:

对于新 Web 应用程序中的身份验证和授权,我犹豫不决。

在 Asp.net 2.0 中内置的 Membership、Roles 和 Profile 看起来令人印象深刻,但背后的东西太多了,很难找到。

我已经决定使用我自己的数据库结构,所以我必须重写我自己的提供程序,但还有一些我无法弄清楚的东西,比如会话和 cookie。它是什么、何时以及如何加密以及之后从数据库中检索用户信息,似乎使用了 cookie,但会话呢?我使用了 MSDN、.Net Reflactor 和 Goole,但没有得到任何答复。我的意思是我知道配置和结果,但不确定如何。

如果我不知道Login控件和会员组件背后的事情是如何处理的,我认为我不能在后期的改进和维护中做好。

所以请帮帮我,我该怎么办?我想知道屏幕后面的事情是如何运行的。任何建议都在期待!

【问题讨论】:

  • 请不要使用全部大写,即使在标题中也是如此。

标签: asp.net asp.net-membership membership


【解决方案1】:

您可以download the source code for the providers here。尽可能多地从中学习,并了解 Microsoft 如何实施它。您甚至可能想要回收 FormsAuthenticationTicket 上的一些片段。

Microsoft 还使用加盐哈希来存储密码以提高安全性。当您创建自己的提供程序时,您可能也会对此感兴趣。

【讨论】:

  • 感激不尽!这正是我想要的,非常感谢
  • 很抱歉,我下载的 provider.msi 安装后什么也没做。我的意思是我在专用文件路径中找不到“安装结果”,为什么?我发现整个安装文件只有 175kB,够大吗?
  • 源代码安装在c:\Program Files\ASP.NET Provider Toolkit SQL Samples\目录下。该目录是默认的且未更改,但显示为能够自定义。我认为这是一个让很多人疯狂的错误。
【解决方案2】:

您应该使用.NET Reflector 来了解 .NET 代码的工作原理。实际上,您还可以在更高版本的 Visual Studio 中单步执行源代码。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-23
  • 2012-08-12
  • 2010-11-29
相关资源
最近更新 更多