通过比较两个属性来搜索 Active Directory

通过比较两个属性来搜索 Active Directory

我想在我的 Active Directory 中搜索所有不符合以下条件的用户:

登录名的首字母与名字的首字母匹配。登录名的其余部分与姓氏匹配。

因此,登录名为 jsmith 的用户 John Smith 是匹配项。我如何查询 AD 以查找不符合此条件的用户?

答案1

以下是使用 Quest AD cmdlet 的 PowerShell 脚本,可用这里。它构造所需的登录名,然后将其与当前登录名进行比较,将无效的登录名写出到控制台窗口。您可以将其输出到文件或任何其他位置。

$users = Get-QADUSer -SizeLimit 0

foreach ($user in $users)
{

$firstinitial = $user.FirstName.Substring(0,1)
$lastname = $user.LastName.ToString()
$compareterm = $firstinitial + $lastname
if ($compareterm -ne $user.LogonName)
    {
    Write-Host $compareterm "has an invalid logon name."
    }
}

相关内容