我刚刚在asp.net上浏览了新的MVC音乐商店教程。最后一步之一是添加“成员资格和授权”。本教程让我启动了一个配置工具,似乎与我的网站没有任何关系。
2件事:
如果我能够执行上述2并绕过该工具,我仍然可以使用注释,例如:
[授权(角色=“管理员”)]
工具可能含糊不清。我指的是ASP.Net Web应用程序管理工具。这是一个蓝白色的网页,顶部有一些标签(主页,安全,应用程序,提供商)。
答案 0 :(得分:2)
它的工作方式与ASP.NET Membership和Roles一直有效,并且实际上使用相同的系统。关于这个问题已经有很多问题了,快速谷歌也会发现很多文章。
具体来说,asp.net工具将用户存储在aspnet_ *表中的数据库中。是的,你可以绕过它并实现自己的,虽然这通常不是必需的。 asp.net工具只是一个快速简便的工具来管理这个过程,你可能需要实现自己的工具。
是的,您仍然可以再次使用AuthorizeAttribute ..它是asp.net提供的通用会员和角色系统的所有部分(有大量信息)。
答案 1 :(得分:1)
我建议您将自己的用户配置构建为应用程序的一部分,考虑构建一个映射到您自己的数据库的自定义成员资格提供程序(和自定义角色提供程序),当您需要执行以下操作时,这将非常有用配置工具无法做到。 ASP.NET身份验证基于这些,并允许您使用所有内置授权。
答案 2 :(得分:1)
如果您的用户不仅仅包含姓名和电子邮件地址,您也不必使用它,也不想使用它。如果你完全使用它,它是添加初始角色或关键用户的起点。因为有许多provider options具有不同含义,所以您可能需要进行大量自定义编程。例如,enablePasswordRetrieval
,enablePasswordReset
或requiresQuestionAndAnswer
的设置将开始影响您需要适应的操作。
搜索与MVC配对的ASP.NET成员资格应该会引导您在项目中发挥最佳作用。我最近经历了添加和修改基本ASP.NET MVC帐户控制器操作,以便用户管理他们的帐户(包括电子邮件验证,重置忘记密码和更改安全问题/答案)以及 - 同样重要 - 创建用户带有操作的控制器,可帮助管理员对用户执行维护(分配角色,解锁帐户或重置密码)。
如果您打算存储有关用户的更多信息(例如第一个和姓氏等),我建议您查看Web Profile Builder以获得对个人资料数据的强类型访问权限。令人惊讶的是,开发人员需要多少才能在这方面实施。