[krbdev.mit.edu #2137] krb5_cc_get_principal prevents implementation of auto kinit dialogs in KfM/KfW
Jeffrey Altman via RT
rt-comment at krbdev.mit.edu
Tue Jan 20 00:47:09 EST 2004
KfM and KfW both support the ability to display kinit dialogs
automatically under several circumstances:
* kclient api GetTicketGrantingTicket() when no tgt present
* krb4 krb_mk_req() call with service == "krbtgt" and no tgt present
* gssapi clients calling acquire_init_cred()
* krb5 clients calling krb5_fwd_tgt_creds() or krb5_sendauth()
However, there is a class of krb5 clients (such as sidecar, rcmd,
telnet) which all perform calls to krb5_cc_get_principal() prior to a
krb5_get_credentials() call. The krb5_cc_get_principal() call is used
to set the client portion of the krb5_creds structure which is used to
specify which credentials krb5_get_credentials() should obtain.
In the case where there is no ccache or no credentials in
the ccache, krb5_cc_get_principal() returns an error which in turn
prevents calls krb5_get_credentials, krb5_mk_req, or krb5_sendauth
from being made. krb5_cc_get_principal() looks like it would be a
nice place to place a hook for a kinit dialog until you realize that
krb5_cc_get_principal() is called at many times throughout the krb5
library for which we would certainly not desire a kinit dialog to
appear.
At the current time this is a limitation of what we can acheive.
I do not have a suggestion of how to address this limitation, but
if we have time the team should attempt to address it.
More information about the krb5-bugs
mailing list