Tomasz M.

Tomasz M. never go full
retard!

Temat: Własne role na bazie grup domenowych

Cześć,

Próbuję stworzyć mechanizm ról bazujący na grupach domenowych - generalnie chodzi o to, że kilka grup domenowych może wchodzić w skład danej roli, np.

Domena\A, Domena\B -> User

Domena\C -> Administrator

Stworzyłem własną implementacje RoleProvidera opartą o WindowsTokenRoleProvider, która pobiera role z bazy danych. Czyli generalnie potrafię stwierdzić po liście domen usera, czy należy do roli User/Administrator...

public override bool IsUserInRole(string username, string roleName) { ... }


Co dodatkowo należy zrobić by można było użyć autoryzacji na poziomie metod kontrolerów - na zasadzie

[Authorize(Roles = "Administrator, User")]


??

Dodam, że nie chcę użyć natywnego RoleProvidera dla autoryzacji po grupach domenowych. Potrzebuję tylko dwu ról. Próbowałem implementować IPrinciple, ale nie bardzo rozumiem jak to się ma do RoleProvidera (?)Tomasz M. edytował(a) ten post dnia 01.06.11 o godzinie 07:37

konto usunięte

Temat: Własne role na bazie grup domenowych

Stwórz własny atrybut np. DomainAuthorizeAttribute dziedziczący po AuthorizeAttribute. Gotowy przykład (no prawie, bo operuje na enumach) masz tutaj:

http://stackoverflow.com/questions/1148312/asp-net-mvc...

W przykładzie używają operatorów logicznych (bo mają enum) ale nic nie stoi na przeszkodzie żeby zrobić String.Split() dla listy oddzielonej przecinkami.



Wyślij zaproszenie do