Влизане на клиент с Active Directory

Този документ обяснява как да използвате приложението PIV на Nitrokey 3 за влизане със смарт карта в Active Directory.

В бъдеще това ръчно осигуряване може да бъде автоматизирано с помощта на Windows MiniDriver.

Warning

Приложението PIV на Nitrokey 3 понастоящем се счита за нестабилно и не е налично в стабилните версии на фърмуера. За да се получи тази функционалност, е необходимо да се инсталира тестова версия на фърмуера. Последващите актуализации на фърмуера могат да доведат до загуба на данни и криптографски ключове. За повече информация вижте документацията за актуализация на фърмуера.

Предварителни условия

Настройката изисква административен достъп до машините, на които работят Active Directory Directory Services (ADDS) и Active Directory Certificate Services (ADCS). На клиентската машина се изисква само достъп до съответния потребителски акаунт, използван за влизане в системата.

  • Windows Server (поддържаните версии са Windows Server 2016, 2019, 2022 във всички издания)
    • Ролята ADDS е инсталирана и конфигурирана.

    • Инсталирана е ролята ADCS и е конфигуриран Enterprise-CA с коренен сертификат.
      • Всеки Domain Controller (DC) трябва да има издадени сертификати Domain Controller, Domain Controller Authentication и Kerberos Authentication.

      • Ако имате клиенти, които напускат фирмената мрежа, уверете се, че публикуваните пълни и делта списъци с отменени сертификати (CRL) могат да бъдат изтеглени от външни мрежи.

  • Клиент на Windows (поддържаните версии са Windows 10, 11 в издания Professional и Enterprise)
    • Клиентът трябва да е член на домейна на Active Directory (AD).

  • Nitrokey 3 с приложение PIV.

Конфигуриране на влизането със смарткарта за използване с Active Directory (AD)

Входът със смарткарта изисква шаблон на сертификат в удостоверяващия орган (CA) на домейна. Този шаблон определя стойностите и ограниченията на потребителските сертификати. Той се използва за подписване на заявката за сертификат (CSR) по време на предоставянето на Nitrokey.

  1. Подписването на заявка за сертификат за влизане със смарткарта изисква да се създаде шаблон на сертификат в удостоверяващия орган.

    1. От командния ред, PowerShell или Run, въведете certtmpl.msc и натиснете Enter.

    2. В прозореца с подробности изберете шаблона Smartcard Logon.

    3. В лентата с менюта щракнете върху Actions (Действия) → All Tasks (Всички задачи) → Duplicate Template (Дублиране на шаблона).

    4. Задайте следните настройки на шаблона в съответствие с посочения раздел.

      Съвместимост
      • Деактивиране на Показване на получените промени

      • Задайте Certificate Authority (Орган за издаване на сертификати) и Certificate recipient (Получател на сертификати) на най-старите клиенти в домейна, които трябва да използват вход със смарткарта.

        Important

        Ако искате да използвате ключове с елиптична крива (EC), клиентите ви трябва да са не по-стари от Windows Server 2008 и Windows Vista.

      Обща информация
      • Задаване на име за показване на шаблона **** .

      • Задайте Период на валидност и Период на подновяване.

      Обработка на заявки
      • Задайте цел на Подпис и влизане със смарт карта.

      Криптография
      • Задайте категория на доставчика Доставчик на услуги за съхранение на ключове.

      • Задайте име на алгоритъм и минимален размер на ключа.

        Important

        Microsoft препоръчва да се използва алгоритъмът RSA с дължина на ключа от 2048 Bit. Ако решите да използвате ключове Eliptic Curve (EC), трябва да направите допълнителни промени на клиентските си компютри.

      Име на субекта
      • Задайте Доставка в заявката.

    5. Потвърдете създаването на шаблона с OK.

  2. След създаването на шаблон за удостоверение той трябва да бъде издаден, за да може да се използва от клиентите.

    1. От командния ред, PowerShell или Run, въведете certsrv.msc и натиснете Enter.

    2. В навигационния панел разширете Certificate Authority (CA) и отидете на Certificate Templates.

    3. В лентата с менюта щракнете върху Action → New → Certificate Template to Issue.

    4. Изберете шаблона на сертификата, който искате да издадете, и потвърдете с OK.

Осигуряване на Nitrokey 3 за влизане със смарт карта с Active Directory

Влизането със смарт карта изисква да се осигури Nitrokey за потребител в Active Directory. Провизията съдържа частния ключ и генерирането на заявка за издаване на сертификат (CSR). След това сертификатът се записва в Nitrokey.

Warning

Преди да следвате стъпките по-долу, се уверете, че потребителският акаунт в Active Directory, който искате да използвате за влизане със смарт карта, съществува. Времето на създаване на сертификата преди времето на създаване на потребителския акаунт ще доведе до неуспешно влизане в системата.

Important

Ако приложението PIV на Nitrokey не е било използвано преди, първо извършете инициализация с nitropy nk3 piv init.

  1. Генерирайте частен ключ и запишете CSR във файл с командата по-долу.

    nitropy nk3 piv generate-key --key 9A --algo <algorithm> --subject-name <subject-name> --subject-alt-name-upn <subject-alternative-name> --out-file <file>
    

    Стойността на <algorithm> е използваният алгоритъм с неговата дължина на ключа, например rsa2048. Стойностите на <subject-name> и <subject-alternative-name> обикновено съответстват на атрибута commonName и userPrincipalName на потребителския акаунт в Active Directory.

  2. Подпишете CSR с удостоверяващия орган (CA) на домейна с командата по-долу.

    certreq -attrib CertificateTemplate:<template-name> -submit <file>
    

    Стойността на <template-name> е името на шаблона на сертификата за влизане със смарт карта. Стойността на <file> е файлът със заявката за пеене на сертификат.

  3. Запишете подписания сертификат в Nitrokey с командата по-долу.

    nitropy nk3 piv write-certificate --format PEM --path <file>
    

    Стойността на <file> е файлът на сертификата.

Отмяна на влизането със смарткарта за използване с Active Directory (AD)

Издадените удостоверения за влизане на потребителите в системата са изброени в Active Directory Certificate Services (ADCS). От ADCS сертификатите могат да бъдат отменяни, което ги добавя към конфигурирания списък за отменяне на сертификати (CRL). Това е необходимо в случай на изгубен или повреден Nitrokey.

Important

Силно препоръчително е никога да не оставяте неизползвани потребителски сертификати, без да ги отменяте.

Note

Възможно е временно да се отнеме сертификат с причината Certificate Hold. Това отнемане може да бъде върнато и следователно не е постоянно.

  1. От командния ред, PowerShell или Run, въведете certsrv.msc и натиснете Enter.

  2. В навигационния панел разширете органа за издаване на сертификати (CA) и преминете към Issued Certificates (Издадени сертификати).

  3. В прозореца с подробности изберете потребителския сертификат, който искате да анулирате.

  4. В лентата с менюта щракнете върху Action → All Tasks → Revoke Certificate.

  5. Посочете причината за отмяната, датата и часа и потвърдете с Yes.

  6. В навигационния панел преминете към Отнети сертификати.

  7. В лентата с менюта щракнете върху Action → All Tasks → Publish.

  8. Изберете списъка за оттегляне, който искате да публикувате, и потвърдете с OK.

Note

По време на всеки опит за влизане в системата със смарткарта Windows проверява дали представеният от смарткартата сертификат е включен в списъка с оттеглени сертификати (CRL). Ако сертификатът е открит в CRL, влизането в системата се отказва. Всеки CRL съдържа срок на валидност, който го прави невалиден. Windows кешира изтеглените CRL и ги актуализира, ако срокът на валидност на CRL изтича. Следователно анулирането не е незабавно и зависи от изтичането на срока на валидност на CRL, с който разполага клиентът.

Импортиране на потребителски сертификат от смарткарта в личното хранилище за сертификати

Потребителският сертификат, който се съхранява в Nitrokey, може да бъде импортиран в личното хранилище за сертификати на потребителя. В определени ситуации това е задължителна процедура.

  1. Уверете се, че сте влезли в потребителския акаунт, на който съответства сертификатът.

  2. От командния ред, PowerShell или Run, въведете certsrv.msc и натиснете Enter.

  3. В навигационния прозорец разширете Personal key store и преминете към Certificates.

  4. В лентата с менюта щракнете върху Action → All Tasks → Import.

  5. Следвайте съветника за импортиране и при поискване предоставете файла със сертификата на потребителя.

  6. След приключване на импортирането проверете в прозореца с подробности за импортирания сертификат. Ако Nitrokey е свързан, свойствата на сертификата трябва да показват съобщението You have a private key that corresponds to this certificate (Имате частен ключ, който съответства на този сертификат)., което показва, че частният на Nitrokey може да бъде идентифициран.