Powershell检索用户登录名,而不是samAccountname

问题描述 投票:0回答:2

在下文中,我可以非常轻松地获得AD组成员身份:

Get-ADGroupMember -identity "GROUP" | select samaccountname |Export-csv -path "c:\temp\out.csv" -NoTypeInformation

输出csv用作另一个无法安全执行LDAP查询的应用程序的输入,因此我必须通过PS管道ACL。但是,应用程序取决于用户AD登录名是区分大小写的。我没有编写应用程序,所以改变它的行为不在卡片中。例如,当PS管道处于“bigfoot”时,用户“BigFoot”将作为BigFoot进行身份验证,并被拒绝访问。我需要的是PS在UPN名称部分“BigFoot”中管道。

问题是,一些用户的用户登录名与samAccount名不同,例如“BigFoot”与bigfoot。应用程序将仅使用“BigFoot”进行身份验证...换句话说,UPN的第一部分。

使用Powershell,什么AD属性将返回用户登录名(例如“BigFoot”)而不是samAccountname(“bigfoot”)?

powershell authentication active-directory ldap
2个回答
1
投票

该属性称为名称。要检索所有属性,请使用-Properties *示例限定任何AD cmdlet示例Get-AdGroupmember -Properties *

此外,如果Get-AdGroupMember未返回UPN属性,则可能需要后续调用Get-AdUser示例Get-AdGroupMember ABX | %{Get-AdUser $ _}


1
投票

@Alberto Vargas你的解决方案大部分都在工作......我必须过滤掉我正在调用的组内的任何嵌套组....

 Get-ADGroupMember -identity "group"  | Where { $_.objectClass -eq "user" }|%{Get-ADUser $_.SamAccountName | select UserPrincipalName} |Export-c
sv -path "c:\temp\out.csv" -NoTypeInformation
© www.soinside.com 2019 - 2024. All rights reserved.