2009-09-21 41 views
5

我是新用戶角色管理。我正在閱讀我關於asp.net 3.5用戶角色管理的Wrox編程書籍......但很難跟隨,因爲我沒有設置測試的本地服務器(我確實......但是......那些一個單獨的問題),而是目前在遠程服務器上進行測試(網站託管在哪裏,沒有足夠的命中我可以在現場服務器上測試的地方)。Asp.net用戶角色管理:從哪裏開始

任何方式...我從哪裏開始進行用戶角色管理。我不一定要求給予30克的硬性描述,而是更多的總結。我的GoDaddy託管帳戶似乎提供了爲用戶角色管理設置的asp.net方案SQL數據庫,但我還沒有學習如何將它集成到我的開發中。

任何輸入,將不勝感激。

回答

8

我會打開Visual Studio,創建一個新的ASP.NET Web應用程序項目,然後單擊解決方案資源管理器右上角的「配置ASP.NET」按鈕。如果您導航到安全部分,則可以開始創建用戶和角色。該工具基本上描述了他們如何工作給你。

+0

我有關於這個問題的是如何將這些角色設置「轉移」到遠程服務器。該角色配置是否存儲在文件中? – contactmatt 2009-09-21 03:24:13

+0

@ContactMatt - 假設您使用的是默認SQL角色提供程序,它們與用戶數據一起存儲在成員資格數據庫中。您可以將這些數據從Development導出到遠程服務器,或者使用一些工具來設置它們。 – 2009-09-21 08:37:31

+2

您是否碰巧知道Visual Studio 2013中存在此按鈕?我似乎無法找到它。 – 2014-11-11 00:44:03

0

您可以使用SqlRoleProviders和SqlMembershipProviders與.NET默認的管理,或者你可以寫退房教程9你自己的提供者。

http://www.odetocode.com/Articles/427.aspx

http://msdn.microsoft.com/en-us/library/aa478949.aspx

然後這些在與ASP .NET形式驗證結合使用。

<authentication mode="Forms"> 
    <forms name=".ASPXFORMSAUTH" loginUrl="~/Common/Login.aspx" timeout="450" /> 
    </authentication> 
    <authorization> 
    <deny users="?" /> 
    <allow roles="Admin" /> 
    </authorization> 

這一切的配置是通過web.config中如果使用開箱ASPNETDB你的會員資格和角色可能會與此類似。

<membership defaultProvider="IDTSqlMembershipProvider" userIsOnlineTimeWindow="15"> 
     <providers> 
      <clear /> 
      <add 
      name="IDTSqlMembershipProvider" 
      type="System.Web.Security.SqlMembershipProvider" 
      connectionStringName="SqlMembershipConnectionString" 
      applicationName="ConsumerSynergy" 
      enablePasswordRetrieval="false" 
      enablePasswordReset="true" 
      requiresQuestionAndAnswer="false" 
      requiresUniqueEmail="true" 
      passwordFormat="Hashed" 
      maxInvalidPasswordAttempts="20" 
      minRequiredPasswordLength="6" 
      minRequiredNonalphanumericCharacters="0" /> 
     </providers> 
     </membership> 

     <roleManager enabled="true" defaultProvider="IDTSqlRoleProvider" cacheRolesInCookie="true" cookieProtection="All"> 
     <providers> 
      <clear/> 
      <add 
      name="IDTSqlRoleProvider" 
      type="System.Web.Security.SqlRoleProvider" 
      connectionStringName="SqlMembershipConnectionString" 
      applicationName="ConsumerSynergy"/> 
     </providers> 
     </roleManager>