使用 PowerShell 获取 AD 组成员资格 ADSI
Getting AD Group Membership ADSI using PowerShell
我目前有 ADSI 代码来获取用户所属的组:
$searcher = [adsisearcher]"(samaccountname=$env:USERNAME)"
$searcher.FindOne().Properties.memberof
$adgroups = $User -Replace '^cn=([^,]+).+$', ''
但是,我希望能够选择一个组并查看其成员。我目前有这段代码来获取他们的 DN 和路径。
$Group = [ADSI]"LDAP://cn=Test,cn=Test,dc=some,dc=domain,dc=net"
$Members = $Group.Member | ForEach-Object {[ADSI]"LDAP://$_"}
如果可能的话,我想获得其他属性(姓名等)。任何帮助将不胜感激,因为我已经尝试了一段时间。
你已经有了两个部分,第一个部分是在组中查找用户,第二个部分是使用搜索器获取用户的属性。只需使用 distinguishedname
作为 [adsisearcher]
过滤器。
$Group = [ADSI]"LDAP://cn=Test,cn=Test,dc=some,dc=domain,dc=net"
$Group.Member | ForEach-Object {
$Searcher = [adsisearcher]"(distinguishedname=$_)"
$searcher.FindOne().Properties
}
我目前有 ADSI 代码来获取用户所属的组:
$searcher = [adsisearcher]"(samaccountname=$env:USERNAME)"
$searcher.FindOne().Properties.memberof
$adgroups = $User -Replace '^cn=([^,]+).+$', ''
但是,我希望能够选择一个组并查看其成员。我目前有这段代码来获取他们的 DN 和路径。
$Group = [ADSI]"LDAP://cn=Test,cn=Test,dc=some,dc=domain,dc=net"
$Members = $Group.Member | ForEach-Object {[ADSI]"LDAP://$_"}
如果可能的话,我想获得其他属性(姓名等)。任何帮助将不胜感激,因为我已经尝试了一段时间。
你已经有了两个部分,第一个部分是在组中查找用户,第二个部分是使用搜索器获取用户的属性。只需使用 distinguishedname
作为 [adsisearcher]
过滤器。
$Group = [ADSI]"LDAP://cn=Test,cn=Test,dc=some,dc=domain,dc=net"
$Group.Member | ForEach-Object {
$Searcher = [adsisearcher]"(distinguishedname=$_)"
$searcher.FindOne().Properties
}