On 2012-08-16 19:31, Russ Allbery wrote:
Peter Mogensen <[email protected]> writes:

Yes, but ...
Maybe I've misunderstood Kerberos, but isn't the session-key inside the
TGT entryped with the key of the krbtgt/REALM@REALM principal?
... which I suppose the WebKDC hasn't got access to.
Right, you have to do an TGS-REQ with the TGT to the KDC to get a service
ticket for the service to which you're authenticating, which gives you a
session key.  That's what krb5_mk_req does.  The WebKDC talks to the
regular Kerberos KDC as part of the process of generating the krb5
authenticator.

Sure - the WebKDC can create an authenticator from the TGS-REP session key and make a AP-REQ for the service and put it in the id-token (sad), right?

But that is not the session key / authenticator I was wondering about.

What I didn't understand was how the WebKDC could create the authenticator for the TGS-REQ, since it had to be encrypted with the session key from the TGT, which (when inside the TGT) is enrypted with the private key of the krbtgt/REALM@REALM. Granted, the WebKDC has access to that key, when it performs the AS-REQ and it's returned in the enc-part of AS-REP encrypted with the users private key, which the WebKDC knows at that pointe, because it has the password. ... but if that's the source then where's it kept until the user returns at a much later time doing SSO with the webkdc-proxy token?

From what I hear you say above that's not the source for the key needed to create PA-TGS-REQ authenticators. ... so I must have missed something important.

/Peter



Reply via email to