You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Simplify certificate listing with PowerShell
* Update set PIN for PIV
* Correct commands in PIV setup guide
* Add --experimental option to piv subcommands in PIV guide
* Add instructions about certificate mapping
* Add --experimental flag on all piv commands
* Use same terminology to refer to PIV smart card
* Correct key slot option
* Fix typo
* Use code-block directive for standalone commands
* Correct options in key generation command
* Correct incorrect indent
* Fix syntax error
* Correct compatibility and grammar in PIV logon guide
Copy file name to clipboardExpand all lines: source/components/nitrokeys/features/piv/guides/client_logon_with_active_directory.rst
+62-17Lines changed: 62 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ Client Logon with Active Directory
3
3
4
4
.. product-table:: nk3
5
5
6
-
This document explains how to use the PIV application of a Nitrokey 3 for smartcard logon with Active Directory. It is available as of firmware version 1.8 and higher.
6
+
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.
7
7
8
8
In the future, this manual provisioning may be automated through a Windows MiniDriver.
9
9
@@ -13,14 +13,14 @@ Prerequisites
13
13
The setup requires administrative access to the machines running Active Directory Directory Services (ADDS) and Active Directory Certificate Services (ADCS).
14
14
On the client machine only access to the respective user account used for logon is required.
15
15
16
-
* Windows server (supported versions are Windows Server 2016, 2019, 2022in all editions)
16
+
* Windows server (supported versions are Windows Server 2016, 2019, 2022, 2025 in Standard and Enterprise editions)
17
17
* ADDS role installed and configured.
18
18
* ADCS role installed and *Enterprise-CA* with root certificate configured.
19
19
* Each Domain Controller (DC) must have a *Domain Controller*, *Domain Controller Authentication*, and *Kerberos Authentication* certificate issued.
20
20
* If you have clients leaving the company network, make sure the published full and delta certificate revocation lists (CRL) are retrievable from external networks.
21
21
* Windows client (supported versions are Windows 10, 11 in editions *Professional* and *Enterprise*)
22
22
* Client must be a domain member of the Active Directory (AD) domain.
23
-
* Nitrokey 3 with PIV application.
23
+
* Nitrokey 3 with PIV smart card.
24
24
25
25
Configure smartcard logon for use with Active Directory (AD)
The value of ``<algorithm>`` is the used algorithm with its key length, e.g. ``rsa2048``.
98
-
The values of ``<subject-name>`` and ``<subject-alternative-name>`` corresponds typically to the ``commonName`` and ``userPrincipalName`` attribute of the Active Directory user account.
95
+
The value of ``<subject-name>`` corresponds to the value of the ``distinguishedName`` attribute of the Active Directory user account.
96
+
In most cases it is only necessary to include the common name part of the distinguished name, e.g. ``CN=John Doe``.
97
+
The value of ``<subject-alternative-name>`` corresponds to the value of the ``userPrincipalName`` attribute of the Active Directory user account.
99
98
100
99
2. Sign the CSR with the certificate authority (CA) of the domain with the command below.
Microsoft recommends the use of the ``X509IssuerSerialNumber`` mapping.
127
+
128
+
Write the choosen mapping to the ``altSecurityIdentities`` attribute of the Active Directory user object.
129
+
You can use the *Active Directory Users and Computers* application or PowerShell for this operation.
130
+
131
+
.. tabs::
132
+
.. tab:: Active Directory Users and Computers
133
+
1. From the Command Line, PowerShell, or Run, type ``dsa.msc`` and press Enter.
134
+
2. In the menu bar click **View → Advanced Features**.
135
+
3. Select the respective user object.
136
+
4. In the menu bar click **Action → Properties**.
137
+
5. Open the tab **Attribute Editor**.
138
+
6. Select the attribute ``altSecurityIdentities``.
139
+
7. Click on **Edit**.
140
+
8. Insert the certificate mapping in the text field and click **Add**.
141
+
9. Apply the change with a click on **OK**.
142
+
143
+
.. tab:: PowerShell
144
+
1. Open PowerShell.
145
+
2. Add the value with ``Set-ADUser -Identity "<sAMAccountName>" -Add @{altSecurityIdentities="<certificate-mapping>"}``, replacing ``<sAMAccountName>`` with the value of the user logon name and ``<certificate-mapping>`` with the choosen certficate mapping from above.
146
+
147
+
.. important::
148
+
If the certificate mapping is not correctly set you will receive the error message ``Logon screen message: Your credentials could not be verified.`` when attempting to logon.
149
+
Additionally, you will see the event message below in the Windows system event log.
150
+
151
+
**Source**
152
+
153
+
::
154
+
155
+
Kerberos-Key-Distribution-Center
156
+
157
+
**Message**
158
+
159
+
::
160
+
161
+
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.
117
162
118
163
Revoke smartcard logon for use with Active Directory (AD)
@@ -167,5 +212,5 @@ In certain situations this is a required procedure.
167
212
.. tab:: PowerShell
168
213
1. Make sure you are logged on to the user account the certificate corresponds to.
169
214
2. Open PowerShell.
170
-
3. Change to the personal certficate store of the user with ``Set-Location -Path cert:\CurrentUser\My``.
171
-
4. Import the certificate to the store with ``Import-Certificate -Filepath '<path>'``, replacing ``<path>`` with the certificate file path.
215
+
3. Import the certificate with ``Import-Certificate -CertStoreLocation Cert:\CurrentUser\My -FilePath <path>``, replacing ``<file>`` with the certificate file path.
216
+
4. After the import completed check for the certificate with ``Get-ChildItem Cert:\CurrentUser\My``.
The *Personal Identity Verfication* (PIV) is based on the NIST special publication `SP 800-73 <https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-73-4.pdf>`__.
6
+
The *Personal Identity Verfication* (PIV) smart card is based on the NIST special publication `SP 800-73 <https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-73-4.pdf>`__.
7
7
It is available as of firmware version 1.8 and higher.
Copy file name to clipboardExpand all lines: source/components/nitrokeys/features/piv/key_management.rst
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,7 +35,7 @@ For each purpose the private key and its corresponding certificate are stored in
35
35
Algorithms
36
36
----------
37
37
38
-
PIV uses asymmetric and symmetric algorithms. The asymmetric algorithms are used for the user private keys and the symmetric algorithms for the management key.
38
+
The PIV smart card uses asymmetric and symmetric algorithms. The asymmetric algorithms are used for the user private keys and the symmetric algorithms for the management key.
39
39
40
40
Supported asymmetric key algorithms:
41
41
@@ -57,15 +57,15 @@ For compatibility reasons, the default management key is the following 3DES (TDE
The PIV smart card can generate a new private key on the Nitrokey.
66
66
67
-
The command below will create a private key in key slot ``9a`` for the user with the subject name ``John Doe`` and subject alternative name ``[email protected]``.
67
+
The command below will create a private key in key slot ``9a`` with the RSA algorithm and a key length of 2048 bit, for the user with the subject name ``CN=John Doe`` and subject alternative name ``[email protected]``.
0 commit comments