Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
790
Assunto : ASP.NET
Titulo: Controlado a segurança em mapas de sites

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



Os mapas do site são um novo e poderoso recurso do ASP.NET para possibilitar a exibição para o usuário de toda a estrutura do site.

Porém precisamos tomar cuidado com a segurança. Nem sempre o usuário tem acesso a toda a estrutura do site. Algumas vezes o usuário tem acesso apenas a partes do site e não toda a estrutura.

Para resolver esse problema o xml provider para siteMaps (que é o default) possui um atributo chamado securityTrimmingEnabled . Quando este atributo está como true, o provider exclui do mapa páginas que o usuário não tenha permissão de visitar.

Para configurar este atributo é necessário adicionar a configuração de siteMap no web.config, veja :


<siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
<providers>
<add name="XmlSiteMapProvider"
description="Default SiteMap provider."
type="System.Web.XmlSiteMapProvider"
siteMapFile="web.sitemap"
securityTrimmingEnabled="true" />
</providers>
</siteMap>

Mas existe ainda uma exceção : Em alguns casos o provider de siteMap não consegue determinar se o usuário tem ou não permissão naquele elemento. Isso acontece especialmente nos casos em que existe no mapa elementos que pertencem a outros sites, externos. Quando isso acontece, o provider exclui o elemento para todos os usuários, já que não conseguiu determinar a permissão.

Para evitarmos isso podemos, na montagem do mapa, incluir o atributo "roles", indicando que aquele elemento deve estar visível a determinados grupos de usuários no site. Veja um exemplo :

<siteMapNode url="http://www.scottonwriting.net/sowBlog/" title="My Blog"
roles="*" />


Como o elemento é externo, o provider não conseguiria identificar sua permissão e esconderia para todos. Mas com o atributo roles="*", este elemento será exibido para todos.



Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 2/20/2017 8:27:00 AM
nome: hrcLiYNhGMiWkjLtMF
email: barny182@hotmail.com
comentário:
S29gJQ http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 2/20/2017 6:30:00 AM
nome: yILHCtApRJVs
email: derby451@hotmail.com
comentário:
x3YWRj http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 2/20/2017 4:33:00 AM
nome: sEoTVcmgkI
email: derby451@hotmail.com
comentário:
lum7T2 http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 2/20/2017 2:37:00 AM
nome: dkRfwtxbMqi
email: barny182@hotmail.com
comentário:
EQ7f7u http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 2/20/2017 12:41:00 AM
nome: mZWvEqElbDzU
email: derby451@hotmail.com
comentário:
YrZOwM http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br