Discussion:
Kerberos token
(too old to reply)
m***@yahoo.com
2024-03-22 17:49:58 UTC
Permalink
Hi,
I have an application that authenticates against a Proxy server which user Kerberos authentication scheme.
My application is using SSPI library (github/alexbrainman/sspi Golang package to be exact) generate a kerberos token and this token is passed to the Proxy server through Proxy-Authorization header "Proxy-Authorization: Negotiate <kerberos token>"
My query, for the subsequent calls to the proxy do I need to regenerate this key or can I reuse the one generated the first time ? Or is it that each call to the proxy is treated as a session and that Kerberos token is for that session only ?

Thanks for any info.
Ken Hornstein
2024-03-22 19:27:23 UTC
Permalink
Hi, I have an application that authenticates against a Proxy server
which user Kerberos authentication scheme. My application is using SSPI
library (github/alexbrainman/sspi Golang package to be exact) generate
a kerberos token and this token is passed to the Proxy server through
Proxy-Authorization header "Proxy-Authorization: Negotiate <kerberos
token>" My query, for the subsequent calls to the proxy do I need to
regenerate this key or can I reuse the one generated the first time ?
Or is it that each call to the proxy is treated as a session and that
Kerberos token is for that session only ?
As a general rule, GSSAPI tokens (which in the specific case of Kerberos
contain AP-REQ/AP-REP messages) are supposed to be only used once;
they contain an expiration time in them and are supposed to be checked
for reuse on the server side (although that may not always happen
depending on implementation details). You should always get a new
one by calling the appropriate APIs. Note that assuming your client
is using a standard ticket cache only the first request will require
contacting the KDC.

--Ken
m***@yahoo.com
2024-03-24 12:52:28 UTC
Permalink
Thanks Ken, I'm getting the token every time I communicate with the proxy. I was wondering if the token could be reused so that I could optimize code.  Thanks for the clarification .

Yahoo Mail: Search, organise, conquer
which user Kerberos authentication scheme.  My application is using SSPI
library (github/alexbrainman/sspi Golang package to be exact) generate
a kerberos token and this token is passed to the Proxy server through
Proxy-Authorization header "Proxy-Authorization: Negotiate <kerberos
token>" My query, for the subsequent calls to the proxy do I need to
regenerate this key or can I reuse the one generated the first time ?
Or is it that each call to the proxy is treated as a session and that
Kerberos token is for that session only ?
As a general rule, GSSAPI tokens (which in the specific case of Kerberos
contain AP-REQ/AP-REP messages) are supposed to be only used once;
they contain an expiration time in them and are supposed to be checked
for reuse on the server side (although that may not always happen
depending on implementation details).  You should always get a new
one by calling the appropriate APIs.  Note that assuming your client
is using a standard ticket cache only the first request will require
contacting the KDC.

--Ken

Loading...