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

相關問題