0

我想添加用户注册到我的网站,我将需要创建管理员,谁管理用户。我正在使用ASP.NET的身份验证。我可以使用Account/Register创建用户,在我的管理面板中将他们的Membership.GetAllUsers()列出,并使用Membership.DeleteUser(username)删除 我需要关于管理员的帮助。我如何创建1个管理员,并确保没有人可以成为管理员,只有简单的用户? 用户在Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, true, null, out createStatus)方法Account/Register的作用是什么?如何在mvc3中创建管理员用户?

回答

1

对于MVC账户管理,我发现MembershipStarterKit非常有用。这听起来像你想要基于角色的身份验证,它支持得很好。

您所指的Membership.CreateUser函数与管理员或基于角色的安全性无关,仅用于创建用户本身。

您可以使用IIS .NET用户工具,但是因为它的目标是.NET 2.0,所以您需要做一些配置才能使其工作。您需要创建一个与真实应用程序使用相同连接字符串的新IIS应用程序。

该应用程序需要一个webconfig,看起来像

<configuration> 
    <connectionStrings> 
    <add name="MyConnectionString" connectionString="same as my production application membership connection string" providerName="same as my production application provider" /> 
    </connectionStrings> 
    <system.web> 
    <authentication mode="Forms"> 
     <forms loginUrl="~/Account/LogOn" timeout="2880" /> 
    </authentication> 
    <membership> 
     <providers> 
     <remove name="AspNetSqlMembershipProvider" /> 
     <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, EnablePasswordReset=true" connectionStringName="MyConnectionString" applicationName="/" /> 
     </providers> 
    </membership> 
    <roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider"> 
     <providers> 
     <clear/> 
     <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="MyConnectionString" applicationName="/" /> 
     </providers> 
    </roleManager> 
    </system.web> 
</configuration> 

当你需要确保你使用该软件使用.NET 2.0版集成流水线上的应用程序池这个webconfig结构添加应用程序(默认应用应该工作)。

一个这样做,在这个迷你应用程序中,您将有权访问.Net用户功能,您可以在其中添加和编辑用户和角色。但是,这不像MembershipStarterKit那样有用。

+0

谢谢,所以Membership.CreateUser创建用户哪个角色是“用户”,对不对? – 2012-08-10 11:33:12

+1

不,它创建的用户根本没有任何角色,他们只是拥有用户名,密码,电子邮件地址并且被允许登录到系统的用户。 – AlexC 2012-08-10 11:34:12

+0

是否有可能在admin,user..etc角色中创建用户,仅使用MVC帐户管理,不使用额外的帐户? – 2012-08-10 11:43:29

相关问题