zoukankan      html  css  js  c++  java
  • 在读取站点地图时自动应用安全设置

    在ASP.NET开发中,站点地图使用很普遍。一般站点地图就是一个标准的xml文件,其文件扩展名为sitemap。例如下面这样的格式

    <?xml version="1.0" encoding="utf-8" ?>
    <siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
        <siteMapNode url="default.aspx" title="网站首页"  description="这是我们的网站首页">
          <siteMapNode url="UserManagment/default.aspx" title="后台管理"  description="">
            <siteMapNode url="UserManagment/CreateUser.aspx" title="创建用户"></siteMapNode>
            <siteMapNode url="UserManagment/CreateRole.aspx" title="创建角色"></siteMapNode>
            <siteMapNode url="UserManagment/Login.aspx" title="用户登录"></siteMapNode>
            <siteMapNode url="UserManagment/UserManagmentPage.aspx" title="用户管理"></siteMapNode>
            <siteMapNode url="UserManagment/RoleManagmentPage.aspx" title="角色管理"></siteMapNode>
          </siteMapNode>
            <siteMapNode url="Basic/Help.aspx" title="帮助页面"  description="" />
        </siteMapNode>
    </siteMap>

    这个站点地图可以提供给三个控件使用,他们分别是

    • TreeView
    • Menu
    • SitemapPath

    我相信很多朋友都用过上面三个控件。但可能大家会想一个问题:因为我们的页面会有授权方面的要求,例如上面的“后台管理”这个页面可能就只有管理员才可以访问。我们能不能在控件中根据当前用户的身份自动地决定哪些是要显示的,而哪些是不显示的呢?

    答案是肯定的。请在web.config中添加如下设置即可

    <siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
      <providers>
        <add name="XmlSiteMapProvider" description="通过读取一个站点地图文件" type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" siteMapFile="web.sitemap" securityTrimmingEnabled="true"/>
      </providers>
    </siteMap>

    关键的一个属性就是securityTrimmingEnabled="true"

  • 相关阅读:
    同步内核缓冲区sync、fsync和fdatasync函数
    HDU 1496 Train Problem I 火车问题1(桟,水)
    HDU 1496 Equations 等式(二分+暴力,技巧)
    HDU 2577 How to Type (DP,经典)
    HDU 1247 Hat’s Words (字符串匹配,暴力)
    HDU 1548 A strange lift 奇怪的电梯(BFS,水)
    HDU 1711 Number Sequence (数字KMP,变形)
    204 Count Primes 计数质数
    203 Remove Linked List Elements 删除链表中的元素
    202 Happy Number 快乐数
  • 原文地址:https://www.cnblogs.com/chenxizhang/p/1404712.html
Copyright © 2011-2022 走看看