Настройка центра сертификации для публикации сертификатов в Active Directory доверенного домена

В этой статье устранена проблема, из-за которой выданный сертификат не публикуется в Active Directory, когда пользователи из дочернего домена в качестве центра сертификации (ЦС) запрашивают сертификат.

Применимо к: Все поддерживаемые версии Windows Server
Исходный номер базы знаний: 281271

Симптомы

В следующих сценариях, если пользователь из того же домена, что и ЦС, запрашивает сертификат, выданный сертификат публикуется в Active Directory. Если пользователь из дочернего домена, этот процесс не будет успешным. Кроме того, когда пользователи из того же домена, что и ЦС, запрашивают сертификат, выданный сертификат может не быть опубликован в Active Directory.

Сценарий 1

В этом сценарии ЦС не публикует выданные сертификаты для объекта DS пользователя в дочернем домене при выполнении следующих условий:

  • Пользователь находится в двухуровневой иерархии доменов с родительским и дочерним доменами.
  • ЦС Предприятия находится в родительском домене, а пользователь — в дочернем домене.
  • Пользователь в дочернем домене регистрируется в родительском ЦС.

В двухуровневой иерархии доменов с родительским и дочерним доменами ЦС Предприятия находится в родительском домене. А пользователи находятся в дочернем домене. Пользователи в дочернем домене регистрироваться в родительском ЦС, а ЦС публикует выданные сертификаты для объекта DS пользователя в дочернем домене.

Кроме того, на сервере ЦС регистрируется следующее событие:

Имя журнала: Приложение
Источник: Microsoft-Windows-CertificationAuthority
Идентификатор события: 80
Категория задачи: Нет
Уровень: предупреждение
Ключевые слова:
Пользователь: SYSTEM
Компьютер: CA.CONTOSO.COM
Описание:
Службам сертификатов Active Directory не удалось опубликовать сертификат для запроса XXX в следующем расположении на сервере DC.CHILD.CONTOSO.COM: CN=CHILDSRV,CN=Computers,DC=CHILD,DC=CONTOSO,DC=COM. Недостаточно прав доступа для выполнения операции. 0x80072098 (WIN32: 8344 ERROR_DS_INSUFF_ACCESS_RIGHTS).
ldap: 0x32: 00002098: SecErr: DSID-XXXXXXXXX, проблема 4003 (INSUFF_ACCESS_RIGHTS), data 0

Сценарий 2

Рассмотрим следующий сценарий.

  • Пользователь находится в одноуровневом или родительском домене.
  • ЦС Предприятия находится в родительском домене.
  • На контроллерах домена не установлено исправление 327825 .
  • Пользователь в одноуровневом или родительском домене регистрируется в одноуровневом центре сертификации или родительском центре сертификации.

В этом сценарии центр сертификации не публикует выданные сертификаты для объекта сервера домена пользователя в одноуровневом домене или в родительском домене.

Причина

  • Для сценария 1: двухуровневая иерархия доменов

    Пользователи из дочернего домена не имеют соответствующих разрешений для регистрации. Даже в этом случае ЦС не имеет разрешений на доступ для публикации сертификата в Active Directory.

    По умолчанию разрешения на регистрацию имеют только пользователи домена из того же домена, что и ЦС.

    По умолчанию ЦС имеет следующие необходимые разрешения для пользователей в его домене:

    • Чтение userCertificate.

    • Напишите userCertificate.

      ЦС в родительском домене не имеет разрешений на userCertificate свойство для пользователей в дочернем домене.

  • Для сценария 2: одноуровневый домен или родительский домен

    По умолчанию в Windows объект AdminSDHolder не предоставляет группе издателей сертификатов необходимые разрешения для учетных записей пользователей, которые охватываются процессом AdminSDHolder. В следующем списке содержатся защищенные группы учетных записей пользователей в Windows:

    • Администраторы предприятия

    • Администраторы схемы

    • Администраторы домена

    • Администраторы

      После применения исправления KB327825 следующий список групп учетных записей пользователей в Windows теперь является защищенными группами учетных записей пользователей:

    • Администраторы

    • Операторы учетных записей

    • Операторы сервера

    • Операторы печати

    • Операторы архивации

    • Администраторы домена

    • Администраторы схемы

    • Администраторы предприятия

    • Издатели сертификатов

Разрешение

Попробуйте следующее решение в соответствии с вашим сценарием.

Для сценария 1: двухуровневая иерархия доменов

Чтобы разрешить пользователям дочернего домена получать сертификаты и публиковать их в Active Directory, выполните следующие действия.

  1. Задайте разрешения для шаблона ЦС, чтобы разрешить запросы на регистрацию. Задайте разрешения объекта пользователя, чтобы разрешить ЦС публиковать сертификат. Измените AdminSDHolder, чтобы передать разрешения объекта пользователя пользователям, которые являются администраторами.

  2. Задайте разрешения объекта пользователя, чтобы разрешить ЦС публиковать сертификат. Измените AdminSDHolder, чтобы передать разрешения объекта пользователя пользователям, которые являются администраторами.

  3. Измените AdminSDHolder, чтобы передать разрешения объекта пользователя пользователям, которые являются администраторами.

Примечание.

Сначала необходимо установить средства поддержки с компакт-диска Windows Professional или Windows Server.

Разрешить пользователям дочернего домена получать сертификаты и публиковать их в Active Directory

  1. Задайте разрешения для ЦС, чтобы разрешить пользователям в дочернем домене запрашивать сертификат. По умолчанию он должен быть на месте.

    1. Откройте оснастку Центр сертификации, щелкните правой кнопкой мыши ЦС и выберите Пункт Свойства.
    2. На вкладке Безопасность убедитесь, что группе Прошедшие проверку подлинности пользователи разрешено запрашивать сертификаты.
  2. Задайте разрешения для применимых шаблонов сертификатов, чтобы разрешить регистрацию пользователям в дочернем домене.

    Примечание.

    Необходимо войти в корневой домен с правами администратора домена.

    1. Откройте оснастку "Сайты и службы Active Directory".
    2. Выберите Вид, а затем — Показать узел служб.
    3. Разверните папку Services Node , разверните узел Службы открытых ключей, а затем выберите Шаблоны сертификатов.
    4. В области Сведения выберите нужный шаблон или шаблоны. Например, щелкните правой кнопкой мыши шаблон Сертификата пользователя и выберите Свойства.
    5. На вкладке Безопасность предоставьте разрешения на регистрацию нужной группе, например пользователям, прошедшим проверку подлинности.
  3. Настройте модуль выхода ЦС для публикации сертификатов в Active Directory.

    1. В оснастке Центра сертификации щелкните правой кнопкой мыши ЦС и выберите Пункт Свойства.
    2. На вкладке Выход из модуля выберите Настроить.
    3. В свойствах модуля Exit (Выход из модуля) установите флажок Разрешить публикацию сертификатов в Active Directory .

    На дочернем контроллере домена:

    Примечание.

    В доменах Windows Server группа издателей сертификатов является глобальной группой домена. Необходимо вручную добавить группу издателей Cert в каждый дочерний домен.

    Вы можете разрешить пользователям дочерних доменов получать сертификаты и публиковать их в доменах Windows Server. Для этого измените тип группы на Domain Local и включите сервер ЦС из родительского домена. Эта процедура создает ту же конфигурацию, которая присутствует в только что установленном домене Windows Server. Пользовательский интерфейс не позволяет изменить тип группы. Однако вы можете использовать dsmod команду , чтобы изменить группу издателей Cert с глобальной группы домена на локальную группу домена:

    dsmod group Group Distinguished Name -scope l
    

    В некоторых случаях невозможно изменить groupType напрямую с глобальной на локальную группу домена. В этом случае необходимо преобразовать глобальную группу в универсальную группу, а универсальную — в локальную группу домена. Для этого выполните указанные ниже действия.

    1. Введите следующую команду и нажмите клавишу ВВОД:

      dsmod group Group Distinguished Name -scope u
      

      Эта команда преобразует глобальную группу в универсальную.

    2. Введите следующую команду и нажмите клавишу ВВОД:

      dsmod group Group Distinguished Name -scope l
      

      Эта команда преобразует универсальную группу в локальную группу домена.

Для сценария 2: одноуровневый домен или родительский домен

На одноуровневом контроллере домена или родительском контроллере домена выполните следующие две команды, сохраняя кавычки:

dsacls "cn=adminsdholder,cn=system, dc=<your domain>,dc=<com>" /G "<CA's domain> \Cert Publishers:WP;userCertificate"
dsacls "cn=adminsdholder,cn=system, dc=<your domain>,dc=<com>" /G "<CA's domain> \Cert Publishers:RP;userCertificate"

Где dc=<ваш домен>, dc=<com> — это различающееся имя (DN) дочернего домена. Где <домен> ЦС — это доменное имя, в котором находится ЦС.

Состояние

Корпорация Майкрософт подтвердила, что это проблема в Windows Server.

Дополнительная информация

Если пользователю из дочернего домена не удается зарегистрироваться, в журнале событий приложения ЦС возникает следующая ошибка:

Тип события: Предупреждение
Источник события: CertSvc
Категория события: None
Идентификатор события: 53
Дата: 14.08.2000
Время: 05:13:00
Пользователь: Н/Д
Компьютер: <имя корневого ЦС>
Описание:
Службам сертификатов отказано в запросе <#> из-за отказа в доступе.
0x80070005 (WIN32: 5). Запрос был для (Неизвестный субъект). Дополнительные сведения: Отклонено модулем политики

Если списки ACL настроены таким образом, что пользователь может зарегистрироваться, но у ЦС нет разрешений на публикацию в Active Directory пользователя, в журнале событий приложения ЦС создается следующая ошибка:

Тип события: Ошибка
Источник события: CertSvc
Категория события: None
Идентификатор события: 46
Дата: 14.08.2000
Время: 05:13:00
Пользователь: Н/Д
Компьютер: <имя корневого ЦС>
Описание:
Метод "Enterprise and Stand-alone Exit Module" Exit Module "Notify" возвратил ошибку. Отказ в доступе. Возвращенный код состояния — 0x80070005 (5). Центру сертификации не удалось опубликовать сертификат для child\User в службе каталогов. Отказ в доступе.
(0x80070005)