Skip to content

Commit 8b310f3

Browse files
committed
Design pages: fix userId in passkey
userId is a private attribute and it shouldn't be stored in a public LDAP attribute. Thus, it was decided to stop printing it and storing it in LDAP, but I forgot to update the design. This commit fixes this issue. Resolves: SSSD/sssd#7165 Signed-off-by: Iker Pedrosa <[email protected]>
1 parent 4fa29f1 commit 8b310f3

File tree

2 files changed

+6
-14
lines changed

2 files changed

+6
-14
lines changed

src/design-pages/passkey_authentication.rst

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -72,13 +72,9 @@ ipapasskey from the
7272
`ipapasskeyuser objectclass <https://freeipa.readthedocs.io/en/latest/designs/passkeys.html#ldap-schema>`__
7373
. For any other LDAP server we use the passkey attribute.
7474

75-
The format for server-side credentials for the key mapping is
75+
The format for the key mapping is
7676
``passkey:credentialId,pemPublicKey``.
7777

78-
The format for
79-
`discoverable credentials <https://developers.yubico.com/WebAuthn/WebAuthn_Developer_Guide/Resident_Keys.html>`__ for the key mapping is
80-
``passkey:credentialId,pemPublicKey,userId``.
81-
8278
IPA process
8379
+++++++++++
8480
FreeIPA provides a direct way to register the passkey attributes to the user
@@ -146,10 +142,7 @@ Execute the passkey_child passing the arguments listed above. The passkey PIN
146142
is retrieved from the PAM conversation and written to the stdin of the
147143
forked passkey child process(Similar to ``get_p11_child_write_buffer()``).
148144
Check the passkey_child return code, return PAM_SUCCESS or failure based on the
149-
result and call ``pam_reply()``. If the credential is discoverable, then the
150-
passkey_child also prints the ``userId``, and the PAM responder has to
151-
compare it with the one provided by the LDAP server. If they match, then it can
152-
return PAM_SUCCESS.
145+
result and call ``pam_reply()``.
153146

154147
Prompting implementation
155148
************************
@@ -276,7 +269,7 @@ The most basic example of a registration would be the following: ::
276269
# sssctl passkey-exec --register --username=USERNAME --domain=DOMAIN
277270

278271
This outputs the key mapping data (
279-
``passkey:credentialId,pemPublicKey,userId``) that is used as the input for the
272+
``passkey:credentialId,pemPublicKey``) that is used as the input for the
280273
registration in the LDAP server. In AD and other LDAP servers the output is
281274
copied to the LDAP attribute. In FreeIPA, the key mapping can copied to the
282275
WebUI or to a command:

src/design-pages/passkey_kerberos.rst

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -139,10 +139,9 @@ the components involved in it:
139139
* The passkey returns the assertion data, which also is returned by the
140140
passkey_child.
141141

142-
* The PAM responder fills the pre-authentication with the assertion data. If
143-
the credential is discoverable, then the ``userId`` is included in the
144-
assertion data. The PAM responder checks if it matches with the one stored in
145-
the LDAP attribute, and it fails if they don't match.
142+
* The PAM responder fills the pre-authentication with the assertion data. The
143+
PAM responder checks if it matches with the one stored in the LDAP attribute,
144+
and it fails if they don't match.
146145

147146
* libkrb5 send another AS-REQ but this time with the assertion in the
148147
pre-authentication.

0 commit comments

Comments
 (0)