Поделиться через


Рекомендации по включению входа смарт-карты в сторонние центры сертификации

В этой статье приведены некоторые рекомендации по включению входа смарт-карты в сторонние центры сертификации.

Исходный номер базы знаний: 281245

Итоги

Вы можете включить процесс входа смарт-карты в Microsoft Windows 2000 и центр сертификации, отличный от Майкрософт, следуя рекомендациям в этой статье. Ограниченная поддержка этой конфигурации описана далее в этой статье.

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

Требования

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

Как и при любой реализации PKI, все стороны должны доверять корневому ЦС, к которому выдаются цепочки ЦС. Контроллеры домена и рабочие станции смарт-карт доверяют этому корневому каталогу.

Конфигурация Active Directory и контроллера домена

  • Обязательный: Active Directory должен иметь сторонний поставщик ЦС в хранилище NTAuth для проверки подлинности пользователей в Active Directory.
  • Обязательно. Контроллеры домена должны быть настроены с помощью сертификата контроллера домена для проверки подлинности пользователей смарт-карт.
  • Необязательно. Active Directory можно настроить для распространения стороннего корневого ЦС в доверенное корневое хранилище ЦС всех членов домена с помощью групповой политики.

Требования к сертификату смарт-карты и рабочей станции

  • Обязательный: все требования смарт-карты, описанные в разделе "Инструкции по настройке", должны быть выполнены, включая форматирование текста полей. Проверка подлинности смарт-карты завершается ошибкой, если они не выполнены.
  • Обязательный: смарт-карта и закрытый ключ должны быть установлены на смарт-карте.

Инструкции по настройке

  1. Экспорт или скачивание корневого сертификата стороннего производителя. Как получить корневой сертификат стороны зависит от поставщика. Сертификат должен быть в формате X.509 в кодировке Base64.

  2. Добавьте сторонний корневой ЦС в доверенные корни в объект групповой политики Active Directory. Чтобы настроить групповую политику в домене Windows 2000 для распространения стороннего ЦС в доверенное корневое хранилище всех компьютеров домена:

    1. Нажмите кнопку Пуск и выберите последовательно пункты Программы, Администрирование и Active Directory — пользователи и компьютеры.
    2. На панели слева найдите домен, в котором применяется политика, которую требуется изменить.
    3. Щелкните правой кнопкой мыши домен и выберите пункт "Свойства".
    4. Перейдите на вкладку групповой политики .
    5. Щелкните объект групповой политики групповой политики по умолчанию и нажмите кнопку "Изменить". Откроется новое окно.
    6. В левой области разверните следующие элементы:
      • Конфигурация компьютера
      • Параметры Windows
      • Параметры безопасности
      • Политика открытого ключа
    7. Щелкните правой кнопкой мыши доверенные корневые центры сертификации.
    8. Выберите "Все задачи" и нажмите кнопку "Импорт".
    9. Следуйте инструкциям мастера, чтобы импортировать сертификат.
    10. Нажмите кнопку ОК.
    11. Закройте окно групповой политики .
  3. Добавьте стороннего поставщика ЦС в хранилище NTAuth в Active Directory.

    Сертификат входа смарт-карты должен быть выдан из ЦС, который находится в хранилище NTAuth. По умолчанию ЦС Microsoft Enterprise добавляются в хранилище NTAuth.

    • Если ЦС, выдавшего сертификат входа смарт-карты или сертификаты контроллера домена, неправильно размещены в хранилище NTAuth, процесс входа смарт-карты не работает. Соответствующий ответ — "Не удается проверить учетные данные".

    • Хранилище NTAuth находится в контейнере конфигурации для леса. Например, пример расположения выглядит следующим образом: LDAP://server1.name.com/CN=NTAuthCertificates,CN=Public key Services,CN=Services,CN=Configuration,DC=name,DC=com

    • По умолчанию это хранилище создается при установке ЦС Microsoft Enterprise. Объект также можно создать вручную с помощью ADSIedit.msc в средствах поддержки Windows 2000 или с помощью LDIFDE. Для получения дополнительной информации щелкните приведенный ниже номер статьи базы знаний Майкрософт:

      295663 Импорт сертификатов сторонних центров сертификации (ЦС) в хранилище ENTERPRISE NTAuth

    • Соответствующий атрибут — cACertificate, который представляет собой многозначный список сертификатов в кодировке ASN.

      После размещения стороннего ЦС в хранилище NTAuth групповая политика на основе домена помещает раздел реестра (отпечаток сертификата) в следующем расположении на всех компьютерах в домене:

      HKEY_LOCAL_MACHINE\Software\Microsoft\EnterpriseCertificates\NTAuth\Certificates

      Он обновляется каждые восемь часов на рабочих станциях (типичный интервал пульса групповой политики).

  4. Запрос и установка сертификата контроллера домена на контроллере домена. Каждый контроллер домена, который будет проходить проверку подлинности пользователей смарт-карт, должен иметь сертификат контроллера домена.

    При установке ЦС Microsoft Enterprise в лесу Active Directory все контроллеры домена автоматически регистрируются для сертификата контроллера домена. Дополнительные сведения о требованиях к сертификатам контроллера домена из стороннего ЦС щелкните следующий номер статьи, чтобы просмотреть статью в Базе знаний Майкрософт:

    Требования 291010 для сертификатов контроллера домена из стороннего ЦС

    Примечание.

    Сертификат контроллера домена используется для проверки подлинности ssl, шифрования протокола SMTP, подписывания удаленного вызова процедур (RPC) и процесса входа смарт-карты. Использование ЦС, отличного от Майкрософт, для выдачи сертификата контроллеру домена может привести к непредвиденному поведению или неподдерживаемых результатов. Неправильно отформатированный сертификат или сертификат с именем субъекта отсутствует, может привести к тому, что эти или другие возможности перестают отвечать.

  5. Запрос сертификата смарт-карты из стороннего ЦС.

    Зарегистрируйте сертификат из стороннего ЦС, соответствующего указанным требованиям. Метод регистрации зависит от поставщика ЦС.

    Сертификат смарт-карты имеет определенные требования к формату:

    • Расположение точки распространения CRL (CDP) (где список отзыва сертификатов является списком отзыва сертификатов) должно быть заполнено, в сети и доступно. Например:

      [1]CRL Distribution Point  
      Distribution Point Name:  
      Full Name:  
      URL=http://server1.name.com/CertEnroll/caname.crl
      
    • Использование ключа = цифровая подпись

    • Основные ограничения [Сущность темы=end сущности, ограничение длины пути=нет] (необязательно)

    • Расширенное использование ключей =

      • проверка подлинности клиента (1.3.6.1.5.5.7.3.2);
        (OID проверки подлинности клиента) требуется только в том случае, если сертификат используется для проверки подлинности SSL.)
      • Вход смарт-карты (1.3.6.1.4.1.311.20.2.2)
    • Альтернативное имя субъекта = другое имя: имя участника-пользователя (UPN). Например:
      UPN = user1@name.com
      Идентификатор имени участника-пользователя: "1.3.6.1.4.1.311.20.2.3".
      Значение имени участника-пользователя: должна быть строка UTF8 в кодировке ASN1.

    • Subject = различающееся имя пользователя. Это обязательное расширение, но популяция этого поля является необязательным.

  6. Существует два предопределенных типа закрытых ключей. Эти ключи — только сигнатуры (AT_SIGNATURE) и Key Exchange(AT_KEYEXCHANGE). Сертификаты входа смарт-карты должны иметь тип закрытого ключа Exchange (AT_KEYEXCHANGE), чтобы смарт-карта правильно функционировала.

  7. Установите драйверы и программное обеспечение смарт-карт на рабочую станцию смарт-карт.

    Убедитесь, что на рабочей станции смарт-карт установлены соответствующие устройства чтения смарт-карт и программное обеспечение драйвера. Он зависит от поставщика средства чтения смарт-карт.

  8. Установите сторонний сертификат смарт-карты на рабочую станцию смарт-карт.

    Если смарт-карта еще не была помещена в личное хранилище пользователя смарт-карты в процессе регистрации на шаге 4, необходимо импортировать сертификат в личное хранилище пользователя. Для этого:

    1. Откройте консоль управления Майкрософт (MMC), содержащую оснастки "Сертификаты".

    2. В дереве консоли в разделе "Личные" щелкните "Сертификаты".

    3. В меню "Все задачи" нажмите кнопку "Импорт", чтобы запустить мастер импорта сертификатов.

    4. Щелкните файл, содержащий импортируемые сертификаты.

      Примечание.

      Если файл, содержащий сертификаты, является файлом Обмена персональными данными (PKCS #12), введите пароль, используемый для шифрования закрытого ключа, щелкните, чтобы выбрать соответствующий флажок, если вы хотите экспортировать закрытый ключ, а затем включите защиту строгого закрытого ключа (если вы хотите использовать эту функцию).

      Примечание.

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

    5. Выберите параметр, чтобы автоматически поместить сертификат в хранилище сертификатов на основе типа сертификата.

  9. Установите сторонний сертификат смарт-карты на смарт-карту. Эта установка зависит от поставщика служб шифрования (CSP) и поставщика смарт-карт. Инструкции см. в документации поставщика.

  10. Войдите на рабочую станцию с помощью смарт-карты.

Возможные проблемы

Во время входа в систему смарт-карты чаще всего отображается следующее сообщение об ошибке:

Система не могла войти в систему. Не удалось проверить учетные данные.

Это сообщение является универсальной ошибкой и может быть результатом одной или нескольких из следующих проблем.

Проблемы с сертификатом и конфигурацией

  • Контроллер домена не имеет сертификата контроллера домена.

  • Поле SubjAltName сертификата смарт-карты плохо отформатировано. Если данные в поле SubjAltName отображаются как шестнадцатеричные или необработанные данные ASCII, форматирование текста не является ASN1 / UTF-8.

  • Контроллер домена имеет неправильный или неполный сертификат.

  • Для каждого из следующих условий необходимо запросить новый действительный сертификат контроллера домена. Если срок действия допустимого сертификата контроллера домена истек, вы можете продлить сертификат контроллера домена, но этот процесс является более сложным и, как правило, сложнее, чем при запросе нового сертификата контроллера домена.

    • Срок действия сертификата контроллера домена истек.
    • Контроллер домена имеет недоверенный сертификат. Если хранилище NTAuth не содержит сертификат центра сертификации (ЦС) выданного ЦС сертификата контроллера домена, необходимо добавить его в хранилище NTAuth или получить сертификат контроллера домена из выданного ЦС, сертификат которого находится в хранилище NTAuth.

    Если контроллеры домена или рабочие станции смарт-карт не доверяют корневому ЦС, к которому цепочки сертификатов контроллера домена, необходимо настроить эти компьютеры для доверия к корневому ЦС.

  • Смарт-карта имеет недоверенный сертификат. Если хранилище NTAuth не содержит сертификат ЦС выдачи сертификата смарт-карты, необходимо добавить его в хранилище NTAuth или получить сертификат смарт-карты от выданного ЦС, сертификат которого находится в хранилище NTAuth.

    Если контроллеры домена или рабочие станции смарт-карт не доверяют корневому ЦС, к которому цепочки сертификатов смарт-карт пользователя, необходимо настроить эти компьютеры для доверия к корневому ЦС.

  • Сертификат смарт-карты не установлен в хранилище пользователя на рабочей станции. Сертификат, хранящийся на смарт-карте, должен находиться на рабочей станции смарт-карт в профиле пользователя, который входит в систему с помощью смарт-карты.

    Примечание.

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

  • Правильный сертификат смарт-карты или закрытый ключ не установлен на смарт-карте. Действительный сертификат смарт-карты должен быть установлен на смарт-карте с закрытым ключом, а сертификат должен соответствовать сертификату, хранящейся в профиле пользователя смарт-карты на рабочей станции смарт-карт.

  • Сертификат смарт-карты не может быть получен из средства чтения смарт-карт. Это может быть проблема с оборудованием средства чтения смарт-карт или программного обеспечения средства чтения смарт-карт. Убедитесь, что вы можете использовать программное обеспечение поставщика средств чтения смарт-карт для просмотра сертификата и закрытого ключа смарт-карты.

  • Срок действия сертификата смарт-карты истек.

  • Имя участника-пользователя (UPN) недоступно в расширении SubjAltName сертификата смарт-карты.

  • Имя участника-пользователя в поле SubjAltName сертификата смарт-карты плохо отформатировано. Если сведения в SubjAltName отображаются как шестнадцатеричные или необработанные данные ASCII, форматирование текста не является ASN1 / UTF-8.

  • Смарт-карта имеет неправильный или неполный сертификат. Для каждого из этих условий необходимо запросить новый действительный сертификат смарт-карты и установить его на смарт-карту и в профиль пользователя на рабочей станции смарт-карт. Сертификат смарт-карты должен соответствовать требованиям, описанным ранее в этой статье, которые включают правильно отформатированный поле имени участника-пользователя в поле SubjAltName.

    Если срок действия допустимого сертификата смарт-карты истек, вы также можете продлить сертификат смарт-карты, который сложнее и сложнее, чем запрашивать новый сертификат смарт-карты.

  • У пользователя нет имени участника-пользователя, определенного в учетной записи пользователя Active Directory. Учетная запись пользователя в Active Directory должна иметь допустимое имя участника-пользователя в свойстве userPrincipalName учетной записи пользователя Active Directory смарт-карты.

  • Имя участника-пользователя в сертификате не соответствует имени участника-пользователя, определенному в учетной записи пользователя Active Directory. Исправьте имя участника-пользователя в учетной записи пользователя Active Directory смарт-карты или повторно войдите в сертификат смарт-карты, чтобы значение имени участника-пользователя в поле SubjAltName соответствовало имени участника-пользователя в учетной записи пользователя Active Directory смарт-карты. Рекомендуется, чтобы имя участника-пользователя смарт-карты соответствовало атрибуту учетной записи пользователя userPrincipalName для сторонних ЦС. Однако если имя участника-пользователя в сертификате является неявным именем участника-пользователя учетной записи (формат samAccountName@domain_FQDN), имя участника-пользователя не обязательно соответствует свойству userPrincipalName явным образом.

Проблемы проверки отзыва

Если проверка отзыва завершается ошибкой, когда контроллер домена проверяет сертификат входа в систему смарт-карты, контроллер домена запрещает вход. Контроллер домена может вернуть сообщение об ошибке, указанное ранее, или следующее сообщение об ошибке:

Система не могла войти в систему. Сертификат смарт-карты, используемый для проверки подлинности, не является доверенным.

Примечание.

Не удалось найти и скачать список отзыва сертификатов (CRL), недопустимый список отзыва, отозванный сертификат и состояние отзыва "неизвестно" все считаются сбоями отзыва.

Проверка отзыва должна успешно выполняться как от клиента, так и от контроллера домена. Убедитесь, что следующие значения имеют значение true:

  • Проверка отзыва не отключена.

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

  • Каждый сертификат ЦС, кроме корневого ЦС в цепочке сертификатов, содержит допустимое расширение CDP в сертификате.

  • В списке CRL есть поле следующего обновления, а список отзыва сертификатов обновлен. Вы можете проверить, что список отзыва сертификатов находится в сети в CDP и действителен, скачав его из Internet Explorer. Вы должны иметь возможность скачать и просмотреть список отзыва сертификатов из любой из протоколов HTTP или ПРОТОКОЛА FTP в Internet Explorer с рабочих станций смарт-карт и контроллеров домена.

Убедитесь, что каждый уникальный ПРОТОКОЛ CDP HTTP и FTP, используемый сертификатом в вашей организации, доступен в Сети.

Чтобы убедиться, что список отзыва сертификатов находится в сети и доступен из ПРОТОКОЛА FTP или HTTP CDP:

  1. Чтобы открыть соответствующий сертификат, дважды щелкните файл .cer или дважды щелкните сертификат в хранилище.
  2. Щелкните вкладку "Сведения" и выберите поле точки распространения CRL.
  3. В нижней области выделите полный УКАЗАТЕЛЬ ресурсов FTP или HTTP Uniform Resource Locator (URL-адрес) и скопируйте его.
  4. Откройте Internet Explorer и вставьте URL-адрес в адресную строку.
  5. При получении запроса выберите параметр "Открыть список отзыва сертификатов".
  6. Убедитесь, что в списке отзыва сертификатов есть поле следующего обновления, а время в поле следующего обновления не прошло.

Чтобы скачать или убедиться, что cdP для упрощенного доступа к каталогу (LDAP) действителен, необходимо написать скрипт или приложение для скачивания списка отзыва сертификатов. После скачивания и открытия списка отзыва сертификатов убедитесь, что в списке отзыва сертификатов есть поле следующего обновления, а время в поле следующего обновления не прошло.

Поддержка

Службы поддержки продуктов Майкрософт не поддерживают процесс входа в систему смарт-карт сторонних поставщиков ЦС, если он определяет, что один или несколько следующих элементов способствуют проблеме:

  • Неправильный формат сертификата.
  • Состояние сертификата или состояние отзыва недоступно для стороннего ЦС.
  • Проблемы с регистрацией сертификатов из стороннего ЦС.
  • Сторонний ЦС не может публиковаться в Active Directory.
  • Сторонний поставщик служб CSP.

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

Клиентский компьютер проверяет сертификат контроллера домена. Поэтому локальный компьютер скачивает список отзыва сертификатов для сертификата контроллера домена в кэш CRL.

Процесс автономного входа не включает сертификаты, только кэшированные учетные данные.

Чтобы принудительно заполнить хранилище NTAuth на локальном компьютере вместо ожидания следующего распространения групповой политики, выполните следующую команду, чтобы инициировать обновление групповой политики:

  dsstore.exe -pulse  

Вы также можете выгрузить данные смарт-карты в Windows Server 2003 и Windows XP с помощью команды Certutil.exe -scinfo.