Aanmelden van klanten met Active Directory

In dit document wordt uitgelegd hoe u de PIV-toepassing van een Nitrokey 3 kunt gebruiken voor aanmelden met een smartcard bij Active Directory.

In de toekomst kan deze handmatige voorziening worden geautomatiseerd via een Windows MiniDriver.

Waarschuwing

De PIV-toepassing van de Nitrokey 3 wordt momenteel als instabiel beschouwd en is niet beschikbaar op de stabiele firmwarereleases. Om deze functionaliteit te verkrijgen, moet een testfirmware worden geïnstalleerd. Latere firmware-updates kunnen leiden tot verlies van gegevens en cryptografische sleutels. Raadpleeg de documentatie over firmware-updates voor meer informatie.

Vereisten

Voor de installatie is administratieve toegang nodig tot de machines waarop Active Directory Directory Services (ADDS) en Active Directory Certificate Services (ADCS) draaien. Op de clientmachine is alleen toegang nodig tot de respectieve gebruikersaccount die wordt gebruikt om in te loggen.

  • Windows server (ondersteunde versies zijn Windows Server 2016, 2019, 2022 in alle edities)
    • ADDS-rol geïnstalleerd en geconfigureerd.

    • ADCS-rol geïnstalleerd en Enterprise-CA met rootcertificaat geconfigureerd.
      • Voor elke Domain Controller (DC) moet een certificaat Domain Controller, Domain Controller Authentication en Kerberos Authentication zijn uitgegeven.

      • Als je clients hebt die het bedrijfsnetwerk verlaten, zorg er dan voor dat de gepubliceerde volledige en delta certificate revocation lists (CRL) opvraagbaar zijn vanaf externe netwerken.

  • Windows-client (ondersteunde versies zijn Windows 10, 11 in edities Professional en Enterprise)
    • Client moet lid zijn van het Active Directory (AD)-domein.

  • Nitrokey 3 met PIV-toepassing.

Smartcard-aanmelding configureren voor gebruik met Active Directory (AD)

De smartcard-aanmelding vereist een certificaatsjabloon in de certificaatautoriteit (CA) van het domein. Deze sjabloon definieert de waarden en beperkingen van de gebruikerscertificaten. Het wordt gebruikt om het Certificate Request (CSR) te ondertekenen tijdens de provisioning van de Nitrokey.

  1. Voor het ondertekenen van een certificaataanvraag voor smartcard-aanmelding moet een certificaatsjabloon worden aangemaakt in de certificaatautoriteit.

    1. Typ in de opdrachtregel, PowerShell of Uitvoeren certtmpl.msc en druk op Enter.

    2. Selecteer in het deelvenster Details de sjabloon Smartcard Logon.

    3. Klik in de menubalk op Acties → Alle taken → Sjabloon dupliceren.

    4. Stel de onderstaande instellingen in op de sjabloon, volgens het genoemde tabblad.

      Compatibiliteit
      • Uitschakelen Toon resulterende wijzigingen

      • Stel Certificate Authority en Certificate recipient in op de oudste clients in het domein die verondersteld worden gebruik te maken van smartcard logon.

        Belangrijk

        Als je Elliptic Curve (EC) sleutels wilt gebruiken, moeten je clients niet ouder zijn dan Windows Server 2008 en Windows Vista.

      Algemeen
      • Stel een sjabloonweergavenaam in.

      • Stel de Geldigheidsperiode en Vernieuwingsperiode in.

      Afhandeling van verzoeken
      • Stel een doel in voor Handtekening en smartcard aanmelden.

      Cryptografie
      • Stel een providercategorie in op Key Storage Provider.

      • Stel een algoritmenaam en minimale sleutelgrootte in.

        Belangrijk

        Microsoft raadt aan het RSA-algoritme te gebruiken met een sleutellengte van 2048 Bit. Als u ervoor kiest om Eliptic Curve (EC)-sleutels te gebruiken, moet u extra wijzigingen aanbrengen op uw clientcomputers.

      Onderwerp Naam
      • Stel Supply in op de aanvraag.

    5. Bevestig het aanmaken van het sjabloon met OK.

  2. Na het aanmaken van een certificaatsjabloon moet het sjabloon worden uitgegeven om gebruikt te kunnen worden door de clients.

    1. Typ in de opdrachtregel, PowerShell of Uitvoeren certsrv.msc en druk op Enter.

    2. Vouw in het navigatiedeelvenster de Certificaat Autoriteit (CA) uit en navigeer naar Certificaatsjablonen.

    3. Klik in de menubalk op Actie → Nieuw → Certificaatsjabloon voor uitgifte.

    4. Selecteer het certificaatsjabloon dat u wilt uitgeven en bevestig met OK.

Provisioneer Nitrokey 3 voor smartcard-aanmelding met Active Directory

Voor het inloggen met een smartcard moet een Nitrokey voor een gebruiker in Active Directory worden ingesteld. De provisiong bevat de privésleutel en het genereren van Certificate Singing Request (CSR). Het certificaat wordt vervolgens naar de Nitrokey geschreven.

Waarschuwing

Controleer voordat u onderstaande stappen uitvoert of het Active Directory gebruikersaccount dat u wilt gebruiken voor het inloggen met de smartcard bestaat. Als het tijdstip waarop het certificaat wordt aangemaakt eerder is dan het tijdstip waarop het gebruikersaccount wordt aangemaakt, zal het inloggen mislukken.

Belangrijk

Als de PIV applicatie op de Nitrokey nog niet eerder is gebruikt, voer dan eerst een initialisatie uit met nitropy nk3 piv init.

  1. Genereer een privésleutel en schrijf het CSR naar een bestand met het onderstaande commando.

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

    De waarde van <algorithm> is het gebruikte algoritme met de bijbehorende sleutellengte, bijvoorbeeld rsa2048. De waarden van <subject-name> en <subject-alternative-name> komen typisch overeen met het kenmerk commonName en userPrincipalName van de Active Directory gebruikersaccount.

  2. Onderteken het CSR met de certificaatautoriteit (CA) van het domein met de onderstaande opdracht.

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

    De waarde van <template-name> is de naam van het certificaatsjabloon voor smartcard-aanmelding. De waarde van <file> is het aanvraagbestand voor het zingen van het certificaat.

  3. Schrijf het ondertekende certificaat naar de Nitrokey met het onderstaande commando.

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

    De waarde van <file> is het certificaatbestand.

Intrekken smartcard-aanmelding voor gebruik met Active Directory (AD)

De uitgegeven gebruikersaanmeldingscertificaten worden opgenomen in de Active Directory Certificate Services (ADCS). Vanuit ADCS kunnen de certificaten worden ingetrokken, waardoor ze worden toegevoegd aan de geconfigureerde Certificate Revocation List (CRL). Dit is nodig in het geval van een verloren of kapotte Nitrokey.

Belangrijk

Het wordt sterk aangeraden om ongebruikte gebruikerscertificaten nooit te laten staan zonder ze in te trekken.

Notitie

Het is mogelijk om een certificaat tijdelijk in te trekken met de reden Certificate Hold. Deze intrekking kan ongedaan worden gemaakt en is dus niet permanent.

  1. Typ in de opdrachtregel, PowerShell of Uitvoeren certsrv.msc en druk op Enter.

  2. Vouw in het navigatiedeelvenster de certificaatautoriteit (CA) uit en navigeer naar Uitgegeven certificaten.

  3. Selecteer in het detailvenster het gebruikerscertificaat dat je wilt intrekken.

  4. Klik in de menubalk op Actie → Alle taken → Certificaat intrekken.

  5. Geef een reden op voor de intrekking, datum en tijd, en bevestig met Ja.

  6. Navigeer in het navigatiedeelvenster naar ingetrokken certificaten.

  7. Klik in de menubalk op Actie → Alle taken → Publiceren.

  8. Selecteer de intrekkingslijst die u wilt publiceren en bevestig met OK.

Notitie

Tijdens elke inlogpoging met een smartcard controleert Windows of het certificaat dat door de smartcard wordt aangeboden, voorkomt op een Certificate Revocation List (CRL). Als het certificaat op een CRL voorkomt, wordt het aanmelden geweigerd. Elke CRL bevat een geldigheidsduur waardoor deze verloopt. Windows slaat de opgehaalde CRL op in de cache en werkt deze bij als de CRL bijna verloopt. Een intrekking is dus niet onmiddellijk en hangt af van de vervaldatum van de CRL die de client heeft.

Een smartcardcertificaat van een gebruiker importeren naar de persoonlijke certificatenwinkel

Het gebruikerscertificaat dat is opgeslagen op de Nitrokey kan worden geïmporteerd in de persoonlijke certificatenwinkel van de gebruiker. In bepaalde situaties is dit een vereiste procedure.

  1. Zorg ervoor dat je bent aangemeld bij het gebruikersaccount waar het certificaat bij hoort.

  2. Typ in de opdrachtregel, PowerShell of Uitvoeren certsrv.msc en druk op Enter.

  3. Vouw in het navigatiedeelvenster de sleutelopslag Personal uit en navigeer naar Certificates.

  4. Klik in de menubalk op Actie → Alle taken → Importeren.

  5. Volg de importwizard en geef het bestand met het gebruikerscertificaat op wanneer daarom wordt gevraagd.

  6. Controleer nadat het importeren is voltooid het detailvenster voor het geïmporteerde certificaat. Als de Nitrokey is aangesloten, moet bij de eigenschappen van het certificaat het bericht staan. U hebt een privésleutel die overeenkomt met dit certificaat. geeft aan dat de privésleutel op de Nitrokey kon worden geïdentificeerd.