@@ -117,6 +117,32 @@ diagram.
117
117
authentication mechanism. This will be explained separately for each
118
118
mechanism.
119
119
120
+ krb5_child
121
+ **********
122
+ ``krb5_child `` is the helper binary in charge of Kerberos authentication. It
123
+ follows the general model of separating the authencation in two steps:
124
+ ``preauthentication `` and ``authentication ``. The first part opens a session
125
+ to obtain the data related to the authentication (i.e. EIdP code). The
126
+ ``krb5_child `` keeps the state while the information is displayed to the user
127
+ and they follow the necessary steps for authentication. At this point is when
128
+ the status changes to ``authentication `` and proceeds with the authentication
129
+ itself.
130
+
131
+ This was a valid solution when SSSD was the one deciding which authentication
132
+ method to use during the process. This is no longer the case, since with this
133
+ new proposal it is the user who decides the mechanism to be used, so the
134
+ current ``krb5_child `` design must be extended.
135
+
136
+ During the ``preauthentication `` phase all authentication methods that are
137
+ available to the user are checked and all necessary information (e.g. login
138
+ URLs, codes, prompts) is obtained to proceed with the authentication. At
139
+ this point ``krb5_child `` is kept alive as it must wait for the response.
140
+ The information is displayed to the user and once the user enters the
141
+ credentials, pam_sss switches to the ``authentication `` phase and PAM responder
142
+ serializes the credentials in the ``sss_auth_token `` structure. ``krb5_child ``
143
+ gets the authentication type and the credentials, and continues with the
144
+ authentication process.
145
+
120
146
.. _data :
121
147
122
148
Data
0 commit comments