В этой статье мы рассмотрим, что такое UPN ( UserPrincipalName ) суффиксы в Active Directory, как добавить дополнительные суффиксы в лесу AD, и назначить/изменить UPN суффикс пользователям Active Directory через графическую консоль и PowerShell.
UserPrincipalName (UPN) – это имя для входа пользователя в формате email адреса, например [email protected]
(UPN имя не обязательно должно соответствовать email адресу пользователя). В этом примере kbuldogov
это имя пользователя в домене AD (user logon name), contoso.com
– UPN суффикс. Между ними разделитель @
.
По умолчанию в Active Directory в качестве UPN суффикса используется DNS имя вашего домена AD. Например, UserPrincipalName пользователя в домене remontka.local выглядит так: [email protected] .
Если в вашей внутренней AD DS используется немаршрутизируемое имя домена (например domain.local), вы не сможете верифицировать такой домен в Azure (Microsoft 365). Чтобы настроить синхронизацию с Azure вам придется переименовать домен AD (не всегда возможно), или (гораздо проще) добавить дополнительные (альтернативные) UPN суффиксы в своем AD.
В Active Directory вы можете добавить дополнительные (альтернативные) UPN суффиксы с помощью графической консолей Active Directory Domains and Trusts или через PowerShell.
Откройте консоль PowerShell и выполните команду Get-ADForest из модуля AD PowerShell . Следующая команда выведет все назначенные UPN суффиксы в лесу:
Get-ADForest | Format-List UPNSuffixes
Если список пуст, значит у вас используется суффикс UPN по умолчанию, соответствующий имени DNS домена.
Чтобы добавить дополнительный UPN суффикс (например, remontka.com), выполните команду:
Get-ADForest | Set-ADForest -UPNSuffixes @{add="remontka.com"}
Проверьте, что суффикс появился в UPNSuffixes:
Get-ADForest | Format-List UPNSuffixes
domain.msc
;
Текущее значение UserPrincipalName пользователя можно вывести с помощью командлета Get-ADUser :
Dы можете задать новый UPN суффикс для своих пользователей. Самый простой вариант – изменить UserPrincipalName в свойствах пользователя в консоли ADUC ( dsa.msc
).
Как вы видите, в выпадающем списке доступны все UPN суффиксы домена. Выберите нужный и нажмите OK.
Обратите внимание, что на этой форме UserPrincipalName как бы состоит из двух частей – имени пользователя и UPN суффикса. Но по факту значение UserPrincipalName хранится в одном атрибуте AD .
Когда вам нужно изменить UPN сразу нескольким пользователям, можно выбрать
несколько пользователей в консоли ADUC и нажать Properties. Перейдите на вкладку Account и вы можете сменить UPN суффикс сразу для всех пользователей (если нужно собрать в плоский список пользователей из разных OU, воспользуйтесь сохраненными запросами в консоли ADUC ).
На гораздо проще для смены UPN суффикса использовать PowerShell.
Чтобы изменить UPN суффикс одному пользователю, используйте командлет Set-ADUser с параметром UserPrincipalName
Set-ADUser kbuldogov -UserPrincipalName [email protected]
Следующий PowerShell скрипт позволит найти в указанной OU всех пользователей с определённым UPN суффиксом и изменить UserPrincipalName на новый.
Get-ADUser -Filter {UserPrincipalName -like "*@resource.loc"} -SearchBase " OU=Users,OU=SPB,OU=RU,DC=resource,DC=loc" |
ForEach-Object {
$UPN = $_.UserPrincipalName.Replace("resource.loc","remontka.com")
Set-ADUser $_ -UserPrincipalName $UPN -verbose
}
Следующая команд PowerShell позволит найти пользователей, у которых userPrincipalName не задан:
Get-ADUser -LDAPFilter "(!(userPrincipalName=*))" | Select distinguishedName
Если вы создаёте нового пользователя, можете выбрать нужный UPN суффикс вместо DNS имени вашего домена.
Если вы создаёте пользователей с помощью PowerShell командлета New-ADUser , укажите новый UPN суффикс с помощью параметра UserPrincipalName:
New-ADUser -Name "Test User2" -GivenName "Test" -Surname "User2" -SamAccountName "testuser2" -UserPrincipalName " [email protected] "
Сегодня вопрос с UPN суффиксами чаще всего возникает, когда вы планируете настроить синхронизацию локальной (on-premises) Active Directory с Azure AD, Microsoft 365, Intune. В Azure именно userPrincipalName является уникальным идентификатором пользователя.
Исторически так сложилось, что многие компании для своих внутренних доменов AD использует немаршрутизируемые или несуществующие DNS имена (вида *.loc, *.local).
У каждого пользователя AD, который будет синхронизироваться в Azure должен быть назначен уникальный и маршрутизируемый в интернете userPrincipalName, который соответствует доменному имени вашего тенанта Azure (Microsoft 365).
Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…
Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…
Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…
Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…
YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…
Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…