[英]check user in ad groups within groups
我想使用System.DirectoryServices.AccountManagement檢查用戶是否在AD組中。 在正常情況下,我可以使用user.IsMemberOf(Group)來做到這一點。 但是,如果該組屬於另一個組(父組),則使用user.IsMemberOf(父組)將失敗。 有什么簡單的方法嗎? 還是我必須遞歸地向下鑽取組中哪些子組?
例如,我們有IT部門,在IT部門內部有應用程序,基礎架構和服務台。 我僅屬於應用程序組,如果我執行user.ismemberof(Application),則為true。 如果我做user.ismemberof(IT),我會得到假。
如果您使用的是UserPrincipal.GetAuthorizationGroups
方法,則可以免費獲得:
從MSDN :
此方法以遞歸方式搜索所有組,並返回用戶所屬的組。 返回的集合還可以包括系統出於授權目的將用戶視為用戶的其他組。
您將必須遞歸執行搜索,直到沒有更多可搜索的組為止。 沒有內置的方法可以遍歷A / D成員資格鏈。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.