我在Kerberos上运行了一些testing,发现了一些与Firefox和Kerberos相关的奇怪行为。 我有一台运行Apache + mod_auh_kerb的服务器,该服务器configuration为在向客户端提供请求时检查Kerberos凭据。 执行Kerberos身份validation,拒绝没有有效凭据的用户。 不过,我不明白以下几点:
一旦发出第一个请求,一个TGS被caching在/ tmp / krb5ccXXXX客户端,但是一个networking捕获显示firefox为每一个连接请求一个TGS。 当我的服务票据被caching的时候,为什么不重复使用其他请求呢? 每个连接如下:
client = GET index.html => server
客户端<= 401authentication需要=服务器
客户端= TGS-REQ => KDC
…
客户端<= TGS-REP = KDC
client = GET index.html + kerberos payload => server
客户端<= 200 OK =服务器
由于Konqueror按预期执行,因此这不是configuration问题。
有任何想法吗 ?
提前致谢。
PS:这对GET请求来说不是一个大问题,但是考虑基于表单的上传(POST)数据不应该被发送两次到服务器!
我不认为有问题。 / tmp /中的文件表示kerberos票据被缓存。 Apache会在每个请求中查询auth,不会应用任何缓存。 Konqueror足够聪明,可以自行缓存,并自动响应正确的票据。