我编写脚本来创建/更新 Active Directory 用户没有问题。现在需要为每个域用户添加名称映射,以便我们可以使用中央 Kerberos 身份验证。
PS:我正在使用 QUEST Active Directory 模块。
我在 Powershell 脚本中找不到任何可以实现此目的的东西。有人知道吗?它可以是任何语言,不一定是 Powershell。我总是可以让 Powershell 与另一个脚本对话以实现目标。
下面显示了手动添加名称映射的屏幕。
我编写脚本来创建/更新 Active Directory 用户没有问题。现在需要为每个域用户添加名称映射,以便我们可以使用中央 Kerberos 身份验证。
PS:我正在使用 QUEST Active Directory 模块。
我在 Powershell 脚本中找不到任何可以实现此目的的东西。有人知道吗?它可以是任何语言,不一定是 Powershell。我总是可以让 Powershell 与另一个脚本对话以实现目标。
下面显示了手动添加名称映射的屏幕。
警告:映射帐户的确切语法是
Set-ADUser "Username" -Add @{'altSecurityIdentities'="Kerberos:ACCOUNT1@DOMAIN","Kerberos:ACCOUNT2@DOMAIN2"}
请务必在括号内添加'altSecurityIdentities'=。
您可以根据要实现的目标使用 -Add 或 -Replace。
希望这可以帮助。
秘密在于这是altSecurityIdentities属性。
我花了很多时间在互联网上寻找一种方法来做到这一点,但我找不到答案。 这个微软页面是我需要的突破。
这就是我想出的:
您可能必须Import-Module ActiveDirectory
在脚本的开头。在下面的代码中,替换 USERNAME,但保留引号。
在这里,我添加了 2 个 Kerberos 名称:
Set-ADUser -Identity "USERNAME" -Replace @{Kerberos:ACCOUNT1@DOMAIN,Kerberos:ACCOUNT2@DOMAIN}
在这里,我插入了一个 X509 证书和一个 Kerberos 名称:
Set-ADUser -Identity "USERNAME" -Replace @{X509:CERTIFICATEINFORMATION,Kerberos:ACCOUNT2@DOMAIN}
显然,您可以通过使用逗号分隔条目来添加多于或少于 2 个。我用来验证我是否成功添加了信息的以下命令...但是手动映射用户并使用它来了解格式应该是什么样子可能会有所帮助:
Get-ADUser -Identity "USERNAME" -Properties * | select altSecurityIdentities
希望这可以帮助!