如RFC 4559中所述,该Negotiate
机制可能需要多个请求来完成 GSSAPI 上下文。但是,我无法从 RFC 中了解使用什么机制将这些请求相互关联。以 RFC 第 5 节中描述的示例为例:
1:
C: GET dir/index.html
2:
S: HTTP/1.1 401 Unauthorized
S: WWW-Authenticate: Negotiate
3:
C: GET dir/index.html
C: Authorization: Negotiate a87421000492aa874209af8bc028
4:
S: HTTP/1.1 401 Unauthorized
S: WWW-Authenticate: Negotiate 749efa7b23409c20b92356
5:
C: GET dir/index.html
C: Authorization: Negotiate 89a8742aa8729a8b028
直到第 5 步,我都清楚这一点。假设可能有许多客户端同时进行身份验证,服务器如何知道Authorization
第 5 步中的标头是对第 4 步数据的响应?我看不到任何关于会话 cookie 或任何内容的提及,虽然我不是 GSSAPI 专家,但我认为 GSSAPI 数据中没有任何固有的东西可用于将其与身份验证会话相关联。
那么有什么关系呢?:)