当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 在 Active Directory 中配置 UserPrincipalName 和 UPN 后缀

作者:精品下载站 日期:2024-12-14 23:13:08 浏览:14 分类:玩电脑

在 Active Directory 中配置 UserPrincipalName 和 UPN 后缀


在本文中,我们将了解 Active Directory 中的 UPN (UserPrincipalName) 后缀是什么、如何在 AD 林中添加备用后缀,以及如何使用 ADUC 控制台和 PowerShell 更改 Active Directory 用户的 UPN 后缀。

UserPrincipalName (UPN) 是电子邮件地址格式的用户登录名,例如,

maxb@contoso.com

。 UPN 名称不一定必须与用户的电子邮件地址匹配。在这种情况下,

maxb

是 Active Directory 域中的用户名(用户登录名),

contoso.com

是 UPN 后缀。他们有一个分隔符

@

它们之间。

默认情况下,AD 域的 DNS 名称用作 Active Directory 中的 UPN 后缀。例如,a-d.local 域中的 UserPrincipalName 如下所示:

username@a-d.local

请勿将 UserPrincipalName 与 sAMAccountName 混合使用,sAMAccountName 是旧时代保留的旧 AD 属性。

如果您的内部 AD DS 使用不可路由的域名(例如 mydomain.loc),您将无法验证 Azure (Microsoft 365) 中的域。要配置与 Azure 的同步,您必须重命名您的 AD 域(并不总是可行)或(更容易)向您的 AD 添加额外(备用)UPN 后缀。

如何在 Active Directory 中添加备用 UPN 后缀?

在 Active Directory 中,您可以使用 Active Directory 域和信任图形控制台或 PowerShell 添加其他(备用)UPN 后缀。

打开 PowerShell 控制台并从 AD PowerShell 模块运行 Get-ADForest 命令。以下命令将列出林中所有分配的 UPN 后缀:

Get-ADForest | Format-List UPNSuffixes

如果列表为空,则意味着您正在使用与您的 DNS 域名匹配的默认 UPN 后缀。

添加备用 UPN 后缀(例如,

a-d.site

),运行此命令:

Get-ADForest | Set-ADForest -UPNSuffixes @{add="a-d.site"}

确保后缀出现在 UPNSuffixes 中:

Get-ADForest | Format-List UPNSuffixes

[玩转系统] 在 Active Directory 中配置 UserPrincipalName 和 UPN 后缀

您可以添加多个唯一的 UPN 后缀。通常,如果您的域中有来自不同组织(品牌)的用户并且您希望为他们使用不同的 UPN 后缀,则值得这样做。

  1. 您还可以使用 Active Directory 域和信任控制台添加 UPN 后缀;

  2. 跑过

    domain.msc

    管理单元;

  3. 打开Active Directory 域和信任属性;

  4. 将新后缀添加到备用 UPN 后缀框中,然后单击添加

[玩转系统] 在 Active Directory 中配置 UserPrincipalName 和 UPN 后缀

更改 Active Directory 中的用户主体名称 (UPN)

您可以使用 Get-ADUser cmdlet 显示 UserPrincipalName 属性的当前值:

Get-ADUser f.martusciello -properties select userprincipalname

[玩转系统] 在 Active Directory 中配置 UserPrincipalName 和 UPN 后缀

您可以更改 AD 用户的 UPN 后缀。最简单的方法是在 ADUC 控制台的用户属性中更改 UserPrincipalName (

dsa.msc

)。

如您所见,该域的所有 UPN 后缀都在列表中可用。选择您想要的一项,然后单击“确定”。

[玩转系统] 在 Active Directory 中配置 UserPrincipalName 和 UPN 后缀

请注意,此形式的 UserPrincipalName 由两部分组成:用户名和 UPN 后缀。事实上,UserPrincipalName 值存储单个 AD 属性。

[玩转系统] 在 Active Directory 中配置 UserPrincipalName 和 UPN 后缀

当您想要一次更改多个用户的 UPN 时,可以在 ADUC 控制台中选择用户,然后单击属性。转到帐户选项卡并更改所有选定用户的 UPN 后缀。 (如果您希望将不同 OU 的用户放入平面列表中,请使用 ADUC 控制台中保存的查询。)

[玩转系统] 在 Active Directory 中配置 UserPrincipalName 和 UPN 后缀

但使用PowerShell更改用户UPN后缀更容易。

要更改用户的 UPN 后缀,请使用带有 UserPrincipalName 参数的 Set-ADUser cmdlet:

Set-ADUser f.martusciello -UserPrincipalName f.martusciello@a-d.site

以下 PowerShell 脚本允许在 OU 中查找具有特定 UPN 后缀的用户,并将 UserPrincipalName 更改为新的。

Get-ADUser -Filter {UserPrincipalName -like "*@mydomain.loc"} -SearchBase " OU=Users,OU=Munich,DC=mydomain,DC=loc" |
ForEach-Object {
$UPN = $_.UserPrincipalName.Replace("mydomain.loc","a-d.site")
Set-ADUser $_ -UserPrincipalName $UPN -verbose
}

此 PowerShell 命令允许查找未设置 UserPrincipalName 的用户:

Get-ADUser -LDAPFilter "(!(userPrincipalName=*))" | Select distinguishedName

Microsoft 建议在通过 Azure AD Connect 同步到 Azure 之前使用 IdFix 工具验证本地 Active Directory。这可以帮助识别用户属性(包括 UserPrincipalName)的不同问题。

如果您创建新用户,则可以选择备用 UPN 后缀而不是域的 DNS 名称。

[玩转系统] 在 Active Directory 中配置 UserPrincipalName 和 UPN 后缀

如果使用 New-ADUser PowerShell cmdlet 创建用户,请使用 UserPrincipalName 开关指定新的 UPN 后缀:

New-ADUser -Name "Jan Kraus" -GivenName "Jan" -Surname "Kraus" -SamAccountName "j.kraus" -UserPrincipalName j.kraus@a-d.site

如今,如果您要配置与 Azure AD、Microsoft 365、Intune 的本地 Active Directory 同步,则会出现 UPN 后缀问题。 UserPrincipalName 是 Azure 中的唯一用户标识符。

从历史上看,许多公司一直在使用不可路由或不存在的 DNS 名称(例如

*.loc

,

*.local

)为其内部 AD 域。

必须为每个要同步到 Azure 的 AD 用户分配一个唯一且可通过 Internet 路由的 userPrincipalName,该用户主体名称与 Azure 租户 (Microsoft 365) 的域相匹配。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯