You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Current »

对于已经设置 kerberos 权限的集群,访问各种组件的 HTTP 服务时会要求认证。如果客户端是 Windows,那么配置过程就比较复杂。

某些服务,例如 Apache Knox 通过转发的方式进行代理,可以进行 SPNEGO 鉴权。

我实现的是基于浏览器代理的方式修改请求头,并注入 token,以此完成鉴权。

HTTP 代理

HTTP 因为是明文传输,所以代理程序可以直接读取请求的内容。将内容完整转发,并将请求体返回,就完成了代理。

对于 HTTPS 这种情况,通过 CONNECT 请求的方式,让代理服务建立一条 tcp 连接隧道,通过更底层的协议,转发 HTTPS 流量。

SPNEGO 鉴权过程

对 HTTP Header 中的 Authorization 字段填入 token,服务器即可验证访问者的身份。


  • No labels