1

当我使用 web.sitemap 时,菜单上的安全修剪工作正常。现在我已经切换到 Sql 站点地图提供程序,安全调整刚刚停止工作。

        <siteMap enabled="true" defaultProvider="AspNetSqlSiteMapProvider">
        <providers>
            <add name="AspNetSqlSiteMapProvider" type="SqlSiteMapProvider" securityTrimmingEnabled="true" connectionStringName="SiteMapConnectionString" sqlCacheDependency="SiteMapDatabase:SiteMap"/>
        </providers>
    </siteMap>

我必须编辑 proc_GetSiteMap 以按正确的排序顺序返回我的菜单项,但它会返回站点地图表中的所有相关数据(包括角色)。

任何帮助将不胜感激。

4

1 回答 1

1

您是否限制了对应使用 web.config 文件限制的文件夹的访问。

例如:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
        <authorization>
          <allow roles="Administrator" />
          <deny roles="user"/>
        </authorization>
    </system.web>
</configuration>

在搜索时发现了一个链接,您也可以看看它: http ://www.mytakeon.net/post/2006/09/The-SQL-SiteMap-Provider-and-trimming-by-roles-%28originally-posted -2006-09-20%29.aspx

于 2011-11-02T11:39:05.813 回答