如果用户可以从web访问目录,则启用链接.配置允许的角色



我有一个web表单应用程序,它有位置路径安全,这工作得很好。

我有一个链接到主页上的路径,但我想使它在后面的代码不可见,如果他们没有安全的文件夹。

我尝试了一些事情,如:

System.Security.AccessControl.DirectorySecurity ds = Directory.GetAccessControl(string.Format("{0}/{1}",HttpRuntime.AppDomainAppPath, adminFolder));

,它返回true,因为我有访问权限,我相信这是由于。net处理安全。

我考虑将安全组添加到密钥中,并且只是检查用户是否在其中一个角色中,但似乎无法找到如何将密钥添加到允许的角色中。

下面是我的web配置部分,其中显示了可以访问文件夹的角色1:

<location path="App_Admin">
    <system.web>
      <authorization>
        <allow roles="role1,role2,role3,role4"/>
        <deny users="*"/>
      </authorization>
    </system.web>
  </location>

如果您能提供帮助,我将不胜感激。

最简单的方法是使用SiteMap和安全节点。你试过吗?http://msdn.microsoft.com/en-us/library/ms178429 (v =应用程序). aspx。阅读这篇文章。当您看到"创建站点地图"one_answers"启用安全修剪"时,它们讨论的是根据您的角色切换可见性。

最新更新