【发布时间】:2011-03-01 01:08:33
【问题描述】:
我们正在开发一个 ASP.NET C# 应用程序,该应用程序将包含一个身份验证系统,用于对多个级别(用户、管理员、超级管理员等)的用户进行身份验证。
我们的想法是不使用内置的 ASP.NET 表单身份验证功能。我们的计划是为它创建一个全新的系统——基于Session 对象,SQL 数据库包含用户信息,例如用户名和密码。
我们的想法和表单身份验证功能之间有什么严重的区别吗?
我们会承担哪些安全风险?我们如何解决它们?
这是表单身份验证功能的良好替代方案吗?
【问题讨论】:
-
我觉得你在这里有点混淆了。 ASP.NET 表单身份验证并不(严格地)暗示对存储用户数据等的位置有任何限制。通过重用现有的或实施您自己的
MembershipProvider(s) 和/或RoleProvider(s),您可能无需创建全新的安全系统即可获得您想要的东西(这一点也不简单 )。我(和其他人一样)强烈建议您首先(或再次:)彻底检查现有基础架构。 -
当然,除非这是一个学校/大学项目,其唯一目的是按照您的描述进行操作。但是你应该把它标记为“作业”......
标签: .net asp.net authentication forms-authentication session-state