Hadoop 认证, Java HTTP SPNEGO

Hadoop Auth是一个Java库,包含客户端和服务器组件,用于为HTTP启用Kerberos SPNEGO认证。

Hadoop Auth还通过两个简单的接口支持客户端和服务器端的额外认证机制。

此外,它还提供了Kerberos SPNEGO认证的部分实现衍生方案,支持一种"混合"认证模式:非浏览器客户端使用Kerberos SPNEGO认证,而浏览器客户端则采用用户自行实现的其他认证形式。

许可证

Hadoop Auth 遵循 Apache License 2.0 协议发布。

认证如何工作?

Hadoop Auth 对受保护的资源强制执行身份验证,一旦验证通过,它会设置一个签名的HTTP Cookie,其中包含带有用户名、用户主体、验证类型和过期时间的身份验证令牌。

后续的HTTP客户端请求只要提供已签名的HTTP Cookie,在Cookie过期前都可以访问受保护的资源。

用于签署HTTP Cookie的密钥有多种实现方式,提供不同的行为特性,包括硬编码的密钥字符串、轮换随机生成的密钥,以及通过ZooKeeper在多个服务器之间同步的轮换随机生成密钥。

用户文档