Přihlášení klienta pomocí služby Active Directory¶
Compatible Nitrokeys |
|||||||
---|---|---|---|---|---|---|---|
✓ active |
⨯ inactive |
⨯ inactive |
⨯ inactive |
⨯ inactive |
⨯ inactive |
⨯ inactive |
⨯ inactive |
This document explains how to use the PIV smart card of a Nitrokey 3 for logon with Active Directory. It is available as of firmware version 1.8 and higher.
V budoucnu může být toto ruční vytváření rezerv automatizováno pomocí ovladače MiniDriver systému Windows.
Předpoklady¶
Nastavení vyžaduje administrátorský přístup k počítačům se službami ADDS (Active Directory Directory Services) a ADCS (Active Directory Certificate Services). Na klientském počítači je vyžadován pouze přístup k příslušnému uživatelskému účtu používanému pro přihlášení.
- Windows server (supported versions are Windows Server 2016, 2019, 2022, 2025 in Standard and Enterprise editions)
Role ADDS je nainstalována a nakonfigurována.
- Nainstalovaná role ADCS a Enterprise-CA s nakonfigurovaným kořenovým certifikátem.
Každý řadič domény (DC) musí mít vydaný certifikát Domain Controller, Domain Controller Authentication a Kerberos Authentication.
Pokud klienti opouštějí firemní síť, ujistěte se, že zveřejněné úplné a delta seznamy odvolaných certifikátů (CRL) lze načíst z externích sítí.
- Klient systému Windows (podporované verze jsou Windows 10, 11 v edicích Professional a Enterprise).
Klient musí být členem domény Active Directory (AD).
Nitrokey 3 with PIV smart card.
Konfigurace přihlašování pomocí čipové karty pro použití se službou Active Directory (AD)¶
Přihlášení pomocí čipové karty vyžaduje šablonu certifikátu v certifikační autoritě (CA) domény. Tato šablona definuje hodnoty a omezení uživatelských certifikátů. Používá se k podepsání žádosti o certifikát (CSR) při poskytování klíče Nitrokey.
Podepsání žádosti o certifikát pro přihlášení pomocí čipové karty vyžaduje vytvoření šablony certifikátu v certifikační autoritě.
Z příkazového řádku, prostředí PowerShell nebo Spustit zadejte adresu
certtmpl.msc
a stiskněte klávesu Enter.V podokně podrobností vyberte šablonu Přihlášení pomocí čipové karty.
Na panelu nabídek klikněte na Actions → All Tasks → Duplicate Template.
Nastavte níže uvedená nastavení šablony podle uvedené karty.
- Kompatibilita
Zakázat Zobrazit výsledné změny
Nastavte Certifikační autorita a Příjemce certifikátu na nejstarší klienty v doméně, kteří mají používat přihlašování pomocí čipové karty.
Důležité
Pokud chcete používat klíče s eliptickou křivkou (EC), nesmí být klienti starší než Windows Server 2008 a Windows Vista.
- Obecné
Nastavení zobrazovacího názvu šablony **** .
Nastavte Doba platnosti a Doba obnovení.
- Vyřizování požadavků
Nastavení účelu Podpis a přihlášení pomocí čipové karty.
- Kryptografie
Nastavte kategorii zprostředkovatele Zprostředkovatel úložiště klíčů.
Nastavení názvu algoritmu a minimální velikosti klíče.
Důležité
Microsoft recommends to use the RSA algorithm with a key length of
2048
Bit. If you choose to use Elliptic Curve (EC) keys you need to make additional changes on your client computers.
- Jméno subjektu
V požadavku nastavte Supply.
Vytvoření šablony potvrďte pomocí OK.
Po vytvoření šablony certifikátu musí být šablona vydána, aby ji mohli klienti používat.
From the Command Line, PowerShell, or Run, type
certmgr.msc
and press Enter.V navigačním podokně rozbalte položku Certifikační autorita (CA) a přejděte na stránku Šablony certifikátů.
Na panelu nabídek klikněte na Action → New → Certificate Template to Issue.
Vyberte šablonu certifikátu, kterou chcete vystavit, a potvrďte ji tlačítkem OK.
Zajištění funkce Nitrokey 3 pro přihlašování pomocí čipových karet pomocí služby Active Directory¶
The smartcard logon requires to provision a Nitrokey for a user in Active Directory. The provisioning contains the private key and Certificate Singing Request (CSR) generation. The certificate is then written to the Nitrokey.
Varování
Před provedením následujících kroků se ujistěte, že uživatelský účet služby Active Directory, který chcete použít pro přihlášení pomocí čipové karty, existuje. Čas vytvoření certifikátu před časem vytvoření uživatelského účtu povede k neúspěšnému přihlášení.
Níže uvedeným příkazem vygenerujte soukromý klíč a zapište CSR do souboru.
nitropy nk3 piv --experimental generate-key --key 9A --algo <algorithm> --subject-name <subject-name> --subject-alt-name-upn <subject-alternative-name> --path <file>
The value of
<algorithm>
is the used algorithm with its key length, e.g.rsa2048
. The value of<subject-name>
corresponds to the value of thedistinguishedName
attribute of the Active Directory user account. In most cases it is only necessary to include the common name part of the distinguished name, e.g.CN=John Doe
. The value of<subject-alternative-name>
corresponds to the value of theuserPrincipalName
attribute of the Active Directory user account.Podepište CSR pomocí certifikační autority (CA) domény pomocí níže uvedeného příkazu.
certreq -attrib CertificateTemplate:<template-name> -submit <file>
Hodnota
<template-name>
je název šablony certifikátu pro přihlašování pomocí čipové karty. Hodnota<file>
je soubor žádosti o zpěv certifikátu.Podepsaný certifikát zapište do klíče Nitrokey pomocí níže uvedeného příkazu.
nitropy nk3 piv --experimental write-certificate --key 9A --format PEM --path <file>
Hodnota
<file>
je soubor s certifikátem.Mapujte certifikát s uživatelským účtem služby Active Directory. Mapování certifikátu vytvořte pomocí níže uvedeného příkazu.
nitropy nk3 piv --experimental get-windows-auth-mapping
Choose one of the offered certificate mappings.
Tip
Společnost Microsoft doporučuje používat mapování
X509IssuerSerialNumber
.Zapište vybrané mapování do atributu
altSecurityIdentities
objektu uživatele služby Active Directory. K této operaci můžete použít aplikaci Active Directory Users and Computers nebo PowerShell.From the Command Line, PowerShell, or Run, type
dsa.msc
and press Enter.In the menu bar click View → Advanced Features.
Vyberte příslušný uživatelský objekt.
In the menu bar click Action → Properties.
Otevřete kartu Editor atributů.
Vyberte atribut
altSecurityIdentities
.Click on Edit.
Insert the certificate mapping in the text field and click Add.
Změnu aplikujte kliknutím na OK.
Otevřete prostředí PowerShell.
Přidejte hodnotu s
Set-ADUser -Identity "<sAMAccountName>" -Add @{altSecurityIdentities="<certificate-mapping>"}
, nahraďte<sAMAccountName>
hodnotou přihlašovacího jména uživatele a<certificate-mapping>
zvoleným mapováním certifikátu z výše uvedeného.
Důležité
Pokud není mapování certifikátu správně nastaveno, zobrazí se při pokusu o přihlášení chybová zpráva
Logon screen message: Your credentials could not be verified.
. Kromě toho se v systémovém protokolu událostí systému Windows zobrazí níže uvedená zpráva.Source
Kerberos-Key-Distribution-Center
Message
The Key Distribution Center (KDC) encountered a user certificate that was valid but could not be mapped to a user in a secure way (such as via explicit mapping, key trust mapping, or a SID). Such certificates should either be replaced or mapped directly to the user via explicit mapping. See https://go.microsoft.com/fwlink/?linkid=2189925 to learn more.
Odvolání přihlášení pomocí čipové karty pro použití se službou Active Directory (AD)¶
Vydané přihlašovací certifikáty uživatelů jsou uvedeny v Certifikační službě Active Directory (ADCS). V systému ADCS lze certifikáty odvolat, čímž se přidají do nakonfigurovaného seznamu odvolaných certifikátů (CRL). To je nutné v případě ztráty nebo poškození klíče Nitrokey.
Důležité
Důrazně doporučujeme nikdy neponechávat nepoužívané uživatelské certifikáty bez jejich odvolání.
Poznámka
Certifikát je možné dočasně zrušit s důvodem Certificate Hold. Toto odvolání lze vzít zpět, není tedy trvalé.
Z příkazového řádku, prostředí PowerShell nebo Spustit zadejte adresu
certsrv.msc
a stiskněte klávesu Enter.V navigačním podokně rozbalte autoritu certifikátů (CA) a přejděte na stránku Vydané certifikáty.
V podokně podrobností vyberte certifikát uživatele, který chcete odvolat.
Na panelu nabídek klikněte na Action → All Tasks → Revoke Certificate.
Uveďte důvod odvolání, datum a čas a potvrďte na Yes.
V navigačním podokně přejděte na stránku Revokované certifikáty.
Na panelu nabídek klikněte na Action → All Tasks → Publish.
Vyberte seznam odvolání, který chcete zveřejnit, a potvrďte jej pomocí OK.
Poznámka
Při každém pokusu o přihlášení pomocí čipové karty systém Windows kontroluje, zda je certifikát předložený čipovou kartou uveden na seznamu odvolaných certifikátů (CRL). Pokud je certifikát nalezen na seznamu CRL, přihlášení je odmítnuto. Každý seznam CRL obsahuje údaje o platnosti, které způsobují, že jejich platnost vyprší. Systém Windows načtené seznamy CRL ukládá do mezipaměti a aktualizuje je, pokud se blíží vypršení platnosti seznamu CRL. Proto odvolání není okamžité a závisí na vypršení platnosti CRL, které má klient k dispozici.
Import certifikátu čipové karty uživatele do úložiště osobních certifikátů¶
Uživatelský certifikát uložený v systému Nitrokey lze importovat do osobního úložiště certifikátů uživatele. V určitých situacích je tento postup vyžadován.
Ujistěte se, že jste přihlášeni k uživatelskému účtu, kterému certifikát odpovídá.
Z příkazového řádku, prostředí PowerShell nebo Spustit zadejte adresu
certsrv.msc
a stiskněte klávesu Enter.V navigačním podokně rozbalte úložiště klíčů Personal a přejděte na Certificates.
Na panelu nabídek klikněte na Action → All Tasks → Import.
Postupujte podle průvodce importem a na požádání zadejte soubor s certifikátem uživatele.
Po dokončení importu zkontrolujte podokno podrobností importovaného certifikátu. Pokud je Nitrokey připojen, měla by se ve vlastnostech certifikátu zobrazit zpráva You have a private key that corresponds to this certificate., která naznačuje, že soukromý na Nitrokey mohl být identifikován.
Ujistěte se, že jste přihlášeni k uživatelskému účtu, kterému certifikát odpovídá.
Otevřete prostředí PowerShell.
Import the certificate with
Import-Certificate -CertStoreLocation Cert:\CurrentUser\My -FilePath <path>
, replacing<file>
with the certificate file path.After the import completed check for the certificate with
Get-ChildItem Cert:\CurrentUser\My
.