2011-01-31 36 views
0

嘿, 我建立一個內容管理系統,到目前爲止,我試圖讓一個成員的地區工作。我想出了CreateUserWizard和Login控件。我還在帳戶創建時使用Roles.AddUserToRole(RegisterUser.UserName, "Member");爲用戶分配「成員」的角色。我一直在使用Google,但是我一直無法找到一個關於如何限制目錄或頁面的可靠方法,以便只有「成員」用戶才能訪問它,否則會重定向到登錄頁面。任何人都可以給我一個這個想法嗎?另外我有一個相關的問題,當我進入該網站並且我沒有登錄時,我的默認角色是什麼?它是客人還是隻是空?弄清楚如何使用角色的CMS系統爲C#ASP.NET

謝謝!

回答

2

未登錄的用戶沒有角色。

您可以在Web.config中限制您的站點的特定區域。

首先,禁止訪問整個網站:

<authorization> 
    <deny users="?" /> 
    <deny users="*" roles="" /> 
</authorization> 

然後,您可以選擇性地授予訪問使用<location>元素的具體領域:

<location path="Login.aspx"> 
    <system.web> 
     <authorization> 
      <allow users="?" /> 
     </authorization> 
    </system.web> 
</location> 
<location path="SomeFolder/"> 
    <system.web> 
     <authorization> 
      <allow roles="Member" /> 
     </authorization> 
    </system.web> 
</location> 
  • users="?"表示匿名(未記錄-in)用戶
  • users="*"表示所有登錄用戶。
0

您可以通過在頁面加載事件中檢查用戶授權來爲頁面或目錄分配默認角色。

此外,默認用戶將是客人。