0

我正在尝试在 Windows 服务器上编写新用户创建过程的脚本,该脚本的一部分是为该特定用户设置 SPN 记录。但是当我尝试将 SPN 参数与值一起放入时,我不断收到错误“New-ADUser:名称引用无效” 。我正在尝试遵循 Microsoft 网站(链接)的示例,我们将不胜感激。

如果我删除 ServicePrincipalNames 参数本身,它工作正常。

Import-Module ServerManager
Add-WindowsFeature RSAT-AD-PowerShell
Import-Module ActiveDirectory
$properties=@{
    Name="SQL Service Account For $customerName"
    DisplayName= "SQL Service Account For $customerName"
    ServicePrincipalNames= @{Add="MSSQLSvc\'$dbServerName.$domainName':1433","MSSQLSvc\'$dbServerName':1433"}
    Description= "SQL Service Account For $customerName"
    UserPrincipalName= "$sqlUser@$domainName"
    GivenName= "SQL Service Account For"
    Surname= "$customerName"
    SamAccountName= $sqlUser
    AccountPassword= $pwdsql
    Path= $path
    LogonWorkstations= $dbServerName
    TrustedForDelegation= $true
    Enabled= $True
    Credential= $credential
    PasswordNeverExpires= $True
    CannotChangePassword= $True
  }


New-ADUser @properties

谢谢,

拉胡尔

4

1 回答 1

0

所以这就是我如何让它发挥作用。我不确定这是否适用于所有情况,但目前适用于我的情况。我通过以下方式更改了服务主体名称输入:

ServicePrincipalNames= "MSSQLSvc/${dbServerName}.${domainName}:1433", "MSSQLSvc/${dbServerName}:1433"

这会在 SPN 记录上创建两个单独的条目。如果您放置一个逗号分隔的字符串,它将在单个条目上创建两个逗号分隔的项目。

如果有人知道它为什么以这种方式工作,而不是我在问题中提到的 Microsoft Url 上显示的方式,请告诉我。谢谢。

于 2016-03-28T20:06:46.943 回答