2011-02-04 15 views
1

是否可以在單個web.config中使用多個授權元素以允許其他用戶訪問一個文件?在web.config中使用多個授權元素

例如,我想允許只Page1.aspx的用戶1訪問整個應用程序(包括Page1.aspx的),並且用戶2訪問:

<system.web> 
    <authorization> 
    <allow users="DOMAIN\User1" /> 
    <deny users="*" /> 
    </authorization> 
</system.web> 
<location path="~/Page1.aspx"> 
    <system.web> 
    <authorization> 
     <allow users="DOMAIN\User2" /> 
     <deny users="*" /> 
    </authorization> 
    </system.web> 
</location> 

回答

2

我相信你可以用逗號分隔的列表用戶,因此應該不需要爲單個資源使用多個授權元素。

此外,通常更好地依靠角色而不是特定用戶。由於您使用的是AD,因此您可以使用安全組或類似的角色。

+0

我不能創建新的組來封裝角色,所以我必須使用用戶。我要說的是User1應該繼承了Page1.aspx的權利。 – Craig 2011-02-04 16:45:16

0

如果您從Page1.aspx授權部分刪除<deny users="*" />,您應該得到您想要的。它將允許User2使用該頁面,並且User1對所有內容的授權仍將適用於此頁面。

這裏的a pretty good tutorial涉及授權的所有事情。

+0

似乎不起作用。如果我使用我自己的帳戶作爲User2,我無法訪問Page1.aspx – Craig 2011-02-07 10:03:41