2013-12-16 51 views
0

我想在我的Web應用程序(.NET 4.0.3)中實現一些基於角色的功能,以便我可以控制用戶可以基於他們的角色,無論是管理員或用戶。如何使用現有的AD組在ASP.NET中實現角色

我只是使用現有的AD組來管理角色。假設我的組織中有一個團隊由名爲「IT經理」的AD組代表,另一個團隊擁有AD團隊IT支持。我只想將IT經理以管理員身份和IT支持作爲用戶映射。

我可以很容易地使用WindowsPrincipal.IsInRole()來檢查當前登錄的用戶是否屬於任何組,但是如何告訴應用程序登錄用戶擁有管理員角色或用戶角色,因此網站地圖安全修整可以選擇這個?

回答

1

通過實現您的自定義角色提供程序。一旦實施,你可以方便地使用ASP.NET角色提供框架....

Roles.IsUserInRole("Admin"); 
Roles.GetUsersInRole("Users"); 

您可以實現通過實現RoleProvider抽象類或擴展現有一個如角色提供SqlRoleProvider。那裏有很多豐富的文檔。我會貼上一些鏈接

http://msdn.microsoft.com/en-us/library/aa478950.aspx

http://www.codeproject.com/Articles/28546/Active-Directory-Roles-Provider

+0

我試圖實現我自己的RoleProvider和它的工作。我最初的功能數量似乎都需要實施。不過,我只實現了GetRolesForUser和IsUserInRole。它按預期工作。謝謝! –

+0

不客氣! – Leo

相關問題