Что такое UPN и как им управлять в Active Directory

UPN (User Principal Name) – это уникальный идентификатор учетной записи пользователя в каталоге Active Directory (AD) и в облачных сервисах Microsoft (Entra ID / Azure AD)․ Формат UPN полностью совпадает с адресом электронной почты:

имя_пользователя@доменный_суффикс

Благодаря такому виду UPN пользователи могут входить в систему, используя привычный e‑mail‑логин, независимо от того, где находится их учетная запись – в локальном AD, в Azure AD или в гибридном окружении․


Структура и правила формирования UPN

  • Локальная часть (prefix) – обычно это samAccountName (короткое имя пользователя), но может быть любой строкой, соответствующей требованиям DNS‑имен․
  • Суффикс (suffix) – доменное имя, которое задаётся в AD как UPN suffix․ По умолчанию используется основной DNS‑домен леса (например, contoso․com), но администратор может добавить дополнительные суффиксы․
  • Полный UPN хранится в атрибуте userPrincipalName объекта user в глобальном каталоге․

Важно помнить, что UPN должен быть уникальным в пределах всего леса AD․ Дублирование приводит к ошибкам аутентификации․


Где используется UPN

  1. Вход в Windows‑домены (логин в Windows, RDP, PowerShell Remoting)․
  2. Аутентификация в облачных сервисах Microsoft (Microsoft Entra ID, Office 365, Azure Portal)․
  3. Kerberos‑аутентификация в гибридных сценариях (например, через krb5_use_enterprise_principal = True в sssd․conf);
  4. Работа с сертификатами: в поле Other Name – Principal Name сертификата хранится UPN, который контроллер домена сравнивает с атрибутом userPrincipalName․
  5. Службы NPS (Network Policy Server) могут применять правила замены суффикса UPN для перенаправления запросов в нужный realm․

Управление UPN‑суффиксами в Active Directory

3․1 Добавление нового суффикса через графический интерфейс

  1. Откройте Active Directory Domains and Trusts (adsiedit․msc)․
  2. В корневом узле дерева щёлкните правой кнопкой мыши → Properties․
  3. В открывшемся окне найдите поле UPN suffixes и нажмите Add․
  4. Введите новый суффикс (например, corp․local) и подтвердите․
  5. Суффикс сразу становится доступным в Active Directory Users and Computers (ADUC) при выборе свойства User Principal Name у пользователя․

3․2 Добавление суффикса через PowerShell

Import-Module ActiveDirectory

$forest = Get-ADForest
$forest․UPNSuffixes += "corp․local"
Set-ADForest -Identity $forest -UPNSuffixes $forest;UPNSuffixes

После выполнения команды новый суффикс будет виден в ADUC и может быть назначен пользователям․


Как изменить UPN пользователя

4․1 Через графический интерфейс (ADUC)

  1. Откройте Active Directory Users and Computers․
  2. Найдите нужного пользователя, откройте его свойства․
  3. Перейдите на вкладку Account → поле User logon name (User Principal Name)․
  4. Выберите нужный суффикс из выпадающего списка и нажмите OK․

4․2 Через PowerShell (одиночный пользователь)

Set-ADUser -Identity "jdoe" -UserPrincipalName "jdoe@corp․local"

4․3 Массовое изменение UPN (PowerShell + MSOnline/MgGraph)

Пример скрипта, меняющего суффикс у всех пользователей в облаке Microsoft Entra ID:

# Подключаем модуль MSOnline (или Microsoft․Graph)
Import-Module MSOnline
Connect-MsolService # запрос учетных данных администратора

$sourceUpn = Read-Host -Prompt "Введите исходный UPN‑суффикс (например, contoso․com)"
$targetUpn = Read-Host -Prompt "Введите целевой UPN‑суффикс (например, corp․local)"

$users = Get-MsolUser -All | Where-Object {$_․UserType -eq "Member"}

foreach ($user in $users) {
 $newUserName = $user․UserPrincipalName -replace $sourceUpn,$targetUpn
 if ($newUserName -ne $user․UserPrincipalName) {
 Write-Host "Изменяем UPN: $($user․UserPrincipalName) → $newUserName"
 Set-MsolUserPrincipalName -UserPrincipalName $user․UserPrincipalName -NewUserPrincipalName $newUserName
 }
}

Скрипт запрашивает исходный и целевой суффиксы, ищет всех пользователей и меняет их UPN, выводя прогресс в консоль․


Настройка аутентификации по UPN в Network Policy Server (NPS)

Для замены суффикса UPN в запросах RADIUS можно использовать правило в Connection Request Policy:

  1. Откройте NPS MMC → Connection Request Policies․
  2. Выберите нужную политику → Properties → вкладка Settings․
  3. В секции Specify a Realm Name выберите Attribute → User-Name․
  4. Нажмите Add и задайте правило:
    • Find: старый․суффикс․upn
    • Replace: новый․суффикс․upn
  5. Сохраните изменения и перезапустите службу NPS․

После этого пользователи, вводящие старый суффикс, будут автоматически перенаправлены на новый, а их имя пользователя останется неизменным․


Интеграция с Microsoft Entra ID (Azure AD)

  • При синхронизации из локального AD в Microsoft Entra Connect атрибут userPrincipalName копируется в Azure AD без изменений․
  • Если в облаке требуется использовать альтернативный логин (например, e‑mail), можно задать Alternative login ID в Azure AD, но UPN остаётся основным идентификатором․
  • В случае изменения суффикса в локальном AD необходимо выполнить Start-ADSyncSyncCycle -PolicyType Delta для быстрой репликации в облако․

Частые проблемы и их решение

Проблема Причина Решение
Ошибка “User principal name is already in use” Дублирование UPN в лесу Проверьте уникальность с помощью Get-ADUser -Filter {UserPrincipalName -eq "jdoe@corp․local"} и измените конфликтующий объект․
Пользователь не может войти после изменения суффикса Суффикс не добавлен в список доверенных в AD или в Azure AD Добавьте суффикс в Active Directory Domains and Trusts и/или в Azure AD Custom Domain․
Kerberos‑аутентификация не работает с UPN В клиентском Linux‑клиенте параметр krb5_use_enterprise_principal = True отключён Отредактируйте /etc/sssd/sssd․conf, добавьте параметр в секцию домена и перезапустите sssd․

Лучшие практики при работе с UPN

  • Используйте один основной суффикс для всех пользователей (например, company․com) и добавляйте альтернативные только при необходимости․
  • Сохраняйте совместимость с e‑mail: если у вас уже есть корпоративный почтовый домен, делайте его UPN‑суффиксом․
  • Планируйте миграцию суффикса заранее: создайте скрипт массовой замены, протестируйте на небольшом наборе пользователей․
  • Обновляйте сертификаты: если используете сертификаты с полем Other Name – Principal Name, убедитесь, что в сертификате указан актуальный UPN․
  • Документируйте изменения: храните журнал изменений UPN (кто, когда, какой суффикс заменил) – это ускорит отладку․

UPN – это центральный элемент идентификации в современных корпоративных сетях․ Правильная настройка суффиксов, их добавление и изменение позволяют обеспечить:

  • Единый вход (SSO) в локальные и облачные сервисы;
  • Гибкую миграцию между доменами и облаком;
  • Совместимость с Kerberos, сертификатами и RADIUS‑аутентификацией․

Следуя описанным выше шагам и рекомендациям, администратор сможет быстро настроить UPN в любой корпоративной инфраструктуре, избежать типичных ошибок и обеспечить пользователям удобный и безопасный способ входа․