Active-Directory

setspn 不影響 Active Directory 使用者

  • August 5, 2019

我在域控制器上為特定使用者執行 setspn 命令。

C:\>setspn -s example/username.companyname.com username
Checking domain DC=companyname,DC=com

Registering ServiceprincipalNames for CN=username,CN=Users,DC=companyname,DC=com
       example/username.companyname.com
Updated object

並立即可以在控制台中看到結果。

C:\>setspn -L username
Registering ServiceprincipalNames for CN=username,CN=Users,DC=companyname,DC=com
       example/username.companyname.com

但它永遠不會影響“Active Directory 使用者和電腦”中的該使用者。

他的屬性“servicePrincipalName”沒有設置。

也許有某種記憶體?

我很確定 setspn 統一性不影響“Active Directory 使用者和電腦”的原因是它的舊版本:6.1。

在我用於測試的虛擬機上,我有 10.0 版的 setspn,它執行良好。

我發現我可以通過 Powershell 更改 SPN。

C:\> $ReplaceHashTable = New-Object Hash-Table
C:\> $ReplaceHashTable.Add("servicePrincipalName", "example/username.companyname.com")
C:\> Set-ADUser -Identity "username" -Replace $ReplaceHashTable
C:\> Get-ADUser -Identity "username" -Properties ServicePrincipalNames

DistinguishedName     : CN=username,CN=Users,DC=companyname,DC=com
Enabled               : True
Name                  : username
ObjectClass           : user
SamAccountName        : username
ServicePrincipalNames : (example/username.companyname.com)
UserPrincipalName     : username@companyname.com

引用自:https://serverfault.com/questions/976657