<authorization> a securityTrimmingEnabled
Potřeboval jsem dnes vytvořit položky menu a skrýt ty které nejsou pro daného uživatele viditelné. V jednom videu na msdn jsem toto viděl, takže jsem “našel” řešení (resp. našel to video a v něm řešení) v podobě atributu securityTrimmingEnabled, který stačí přidat do web.config do siteMap sekce k danému providerovi.
Jenže jak to tak bývá nefungovalo to (překvapivě). Začal jsem tedy zuřivě hledat články a popisy všeho možného, co jen trochu souviselo. Po asi hodine neustálého zkoušení různých variací mi to docvaklo.
Já jsem pro řízení přístupu do složek používal location sekci ve web.configu v kořenu webu. Stačilo tyto věci přeházet přímo do složek do vlastních web.config a problém byl vyřešen.
Jak jednoduché (jako vždy).



There's 4 Comments So Far
May 2nd, 2006 at 08:44
jj puvodne atribut securityTrimmingEnabled byl dokonce soucasti siteMap xml. Pak se presunul do web.config, ale je nutne mit stejna prava dana i v location v dilcich web.config souborech v adresarich nebo aspon na konkretni soubory.
May 2nd, 2006 at 08:54
Asi bych nekomu neveril, ze to bude spis fungovat, kdyz jsou prave ve web.config v dane slozce nez kdyz je to globalne v rootu, kdyby mi to tvrdil.
V tom rootu bych ocekaval, ze se to lepe cele najde.
No nic, aspon jsem chytrejsi.
May 2nd, 2006 at 15:31
Pokud jsem to pochopil dobre, je to diky tomu, jak funguje ten Administration Tool pro ASP.NET 2.0 ve VS2005. Ten ty prava prave nehazi do root, nybrz do prislusnych adresaru. Abych pravdu rekl, taky jsem to vzdycky delal stejne
.
May 2nd, 2006 at 15:38
Hmm, ted jsem zkusil ten Tool a pekne to tam dava. To jsem mel mozna zksuit jako prvni. Jenze editovat web.config rucne je mnohem rychlejsi.
Share your thoughts, leave a comment!