TLS-clientverificatie met Internet Information Services (IIS)¶
Compatible Nitrokeys |
|||||||
---|---|---|---|---|---|---|---|
✓ active |
⨯ inactive |
⨯ inactive |
⨯ inactive |
⨯ inactive |
⨯ inactive |
⨯ inactive |
⨯ inactive |
Deze handleiding beschrijft de configuratie van Windows Internet Information Services (IIS) voor TLS-clientverificatie die gebruikers koppelt aan lokale gebruikersaccounts.
Het toont de configuratie als voorbeeld met de Default Web Site van IIS. De configuratie kan ook worden gebruikt voor andere sites, inclusief of exclusief de standaardsite.
Prerequisits¶
Nitrokey 3 with PIV client authentication certificate.
Windows Server (webserver)
DNS record
TLS-certificaat voor het DNS-record. Clientcomputers moeten dit TLS-certificaat vertrouwen.
Installatie¶
Open the Server Manager.
In the menubar on the top click Manage → Add Roles and Features.
Volg de wizard tot de stap Server Roles.
Selecteer de rol Web Server (IIS) in de lijst met beschikbare rollen.
Volg de wizard naar de stap Roles Services onder Web Server Role (IIS).
Selecteer in de lijst met rolservices Web Server → Beveiliging → IIS Client Certificate Mapping Authentication.
Volg de installatiewizard. De installatie moet voltooid zijn voordat u kunt beginnen met configureren.
Configuratie¶
Open de Internet Information Services (IIS) Manager (
InetMgr.exe
).Selecteer en vouw de webserver die je wilt configureren uit in de boomstructuurweergave Connections aan de linkerkant.
Open in het middelste deelvenster Configuration Editor. Open de sectie
system.webServer/security/authentication/iisClientCertificateMappingAuthentication
en ontgrendel deze met een klik op Sectie ontgrendelen in het paneel Acties aan de rechterkant.Vouw de Sites uit onder de webserver en selecteer de site die je wilt configureren.
Klik in het deelvenster Acties aan de rechterkant op Bindingen….
Klik op Add… waarmee de bindingseditor wordt geopend. Stel het type in op https en de hostnaam volgens het DNS-record en het SAN-attribuut (Subject Alternative Name) van het TLS-certificaat. Schakel het selectievakje TLS 1.3 over TCP uitschakelen in. Selecteer in het veld SSL-certificaat het betreffende certificaat. Bevestig de configuratie met een klik op OK.
Tip
Om de vereiste om TLS 1.3 uit te schakelen te begrijpen en voor een configuratie-instructie over hoe het te gebruiken met ingeschakelde TLS 1.3, raadpleegt u deze Microsoft Support blog post.
Open in het middelste deelvenster SSL Settings. Activeer het selectievakje SSL vereisen en zet het keuzerondje onder Clientcertificaten op Vereisen. Bevestig de configuratie met een klik op Apply in het paneel Actions aan de rechterkant.
Open in het middelste deelvenster Authentication. Zorg ervoor dat alle andere verificatiemethoden zijn uitgeschakeld voor de site. De IIS Client Certificate Mapping Authentication zal nooit zichtbaar zijn in deze lijst. Navigeer terug naar de root van de site.
Belangrijk
Als een ander type authenticatie is ingeschakeld, zal de toewijzing van het cliëntcertificaat niet werken.
Open in het middelste deelvenster Configuration Editor. Open de sectie
system.webServer/security/authentication/iisClientCertificateMappingAuthentication
vanApplicationHost.config <location path='Default web site'/>
. Stel de sleutelenabled
in opTrue
en zorg ervoor dat een of beide van de sleutelsmanyToOneCertificateMappingsEnabled
enoneToOneCertificateMappingsEnabled
zijn ingeschakeld.De gebruikerstoewijzingen moeten naar de sleutels
manyToOneMappings
ofoneToOneMappings
worden geschreven. Welke sleutel gebruikt moet worden hangt af van de gewenste mapping die gebruikt moet worden. Je kunt informatie over de mapping en meer gedetailleerde uitleg over de configuratie vinden op Microsoft Learn.Om een sleutel te wijzigen, klik je op de knop … aan het einde van het tekstveld met de waarde. Hierdoor wordt de Collectie-editor geopend. Klik voor het maken van een nieuwe toewijzing op Toevoegen in het deelvenster Acties aan de rechterkant.
Veel naar één in kaart brengen
Vul de velden in zoals aangegeven in de onderstaande tabel.
Key
Waarde
enabled
True
name
<name-for-the-collection>
password
<user-password>
permissionMode
Allow
userName
<username>
Het veld
name
wordt gebruikt als identificatie van de verzameling en de veldenuserName
enpassword
vereisen de gebruikersnaam en het wachtwoord van de lokale gebruiker waarnaar je wilt mappen. Het veldrules
moet de beschrijving van toegestane of geweigerde certificaten bevatten. Om de regelsleutel te wijzigen, klik je op de knop … aan het einde van het tekstveld met de waarde. Dit opent een nieuw venster van de Collectie-editor. Om een nieuwe regel te maken, klik je op Toevoegen in het deelvenster Acties aan de rechterkant.Vul de velden in zoals aangegeven in de onderstaande tabel.
Key
Waarde
certificateField
Subject
certificateSubField
O
compareCaseSensitive
True
matchCriteria
<criteria-value-of-o-field-in-certificate-subject>
Sluit de vensters Collection Editor.
Eén op één in kaart brengen
Vul de velden in zoals in de onderstaande tabel.
Key
Waarde
certificate
<base64-encoded-certificate>
enabled
True
password
<user-password>
userName
<username>
Het Base64 gecodeerde certificaat voor het veld
certificate
kan worden verkregen uit de Nitrokey met Nitropie en het commandonitropy nk3 piv --experimental read-certificate --format PEM --key 9A
. De veldenuserName
enpassword
vereisen de gebruikersnaam en het wachtwoord van de lokale gebruiker waarnaar je wilt verwijzen.Sluit het venster Collection Editor.
Bevestig de configuratie met een klik op Apply in het deelvenster Actions aan de rechterkant.
De site is nu geconfigureerd voor TLS-cliëntverificatie met behulp van lokale gebruikersaccountmapping.