Ola
tenho um menu do ASp.net, baseado em um siteMap, como segue
<siteMapNode title="" description="Principal" roles="*" >
<siteMapNode title="Cadastros" roles="*" >
<siteMapNode title="Funcionários" url="~/Cadastro/FuncionarioView.aspx" roles="Gestor" />
<siteMapNode title="Avaliados" url="~/Cadastro/AvaliadoView.aspx" roles="Gestor" />
<siteMapNode title="Grupo de Itens da Avaliação" url="~/Cadastro/AvaliacaoGrupoItemView.aspx" roles="Gestor" />
<siteMapNode title="Datas da Avaliação" url="~/Cadastro/AvaliacaoCicloView.aspx" />
<siteMapNode title="Competências" url="~/Cadastro/AvaliacaoItemView.aspx" />
</siteMapNode>
<siteMapNode
e um menu
<asp:Menu ID="menu1" runat="server" DataSourceID="siteMapDataSource" Orientation="Horizontal"
SkipLinkText="" StaticEnableDefaultPopOutImage="False" DynamicEnableDefaultPopOutImage="False"
StaticDisplayLevels="2">
<StaticMenuStyle HorizontalPadding="2px" VerticalPadding="2px" />
<StaticMenuItemStyle ItemSpacing="4px" />
</asp:Menu>
e a chamada no web.config
<siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
<providers>
<clear/>
<add name="XmlSiteMapProvider" description="Default SiteMap provider."
type="System.Web.XmlSiteMapProvider "
siteMapFile="Web.sitemap"
securityTrimmingEnabled="true"/>
</providers>
</siteMap>
o problema é que ele exibe os papéis (roles), baseados apenas no primeiro nível do menu, e não no segundo nível.
Aqui ==> (1o nível) <siteMapNode title="Cadastros" roles="*" >
mostra todos os paéis
mas aqui ==> (2o nível) <siteMapNode title="Funcionários" url="~/Cadastro/FuncionarioView.aspx" roles="Gestor" />
deveria mostrar somente se a role (papel) fosse Gestor, mas sempre exisbe, independente do papel
no web.config esta habilitado para permitir estes "cortes" dos menus -->
securityTrimmingEnabled="true"
pelo que vi na documentação, acredito que seja algo relativo a propriedade
StaticDisplayLevels="2" do menu, que diz quantos níveis ele pode ter.
Não achei nada a respeito de um cenário semelhante a este. apenas com um nível de menu. Alguma sugestão??
Obrigado