3.3. 为 Hot Rod 客户端配置身份验证机制
数据网格服务器使用不同的机制来验证 Hot Rod 客户端连接。
流程
-
使用
AuthenticationConfigurationBuilder类的saslMechanism ()方法或infinispan.client.hotrod.sasl_mechanism属性指定身份验证机制。
授权是每次新连接上执行昂贵的操作。我们强烈建议您对连接池进行调优。
SCRAM
摘要
PLAIN
OAUTHBEARER
EXTERNAL
GSSAPI
基本回调处理程序
BasicCallbackHandler 如 GSSAPI 示例所示,调用以下回调:
-
NameCallback和PasswordCallback构造客户端主题。 -
在 SASL 身份验证过程中调用
AuthorizeCallback。
带有令牌回调处理程序的 OAUTHBEARER
使用 TokenCallbackHandler 在 OAuth2 令牌过期前刷新 OAuth2 令牌,如下例所示:
自定义 CallbackHandler
热 Rod 客户端设置默认 CallbackHandler,将凭证传递给 SASL 机制。在某些情况下,您可能需要提供自定义 CallbackHandler,如下例所示:
自定义 CallbackHandler 需要处理特定于您使用的身份验证机制的回调。但是,超出了本文档的范围,为每个可能的回调类型提供示例。
3.3.1. 创建 GSSAPI 登录上下文 复制链接链接已复制到粘贴板!
要使用 GSSAPI 机制,您必须创建一个 LoginContext,以便您的 Hot Rod 客户端可以获取 Ticket Granting Ticket Granting Ticket Granting Ticket Granting Ticket Granting Ticket (TGT)。
流程
在登录配置文件中定义登录模块。
gss.conf
GssExample { com.sun.security.auth.module.Krb5LoginModule required client=TRUE; };GssExample { com.sun.security.auth.module.Krb5LoginModule required client=TRUE; };Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于 IBM JDK:
gss-ibm.conf
GssExample { com.ibm.security.auth.module.Krb5LoginModule required client=TRUE; };GssExample { com.ibm.security.auth.module.Krb5LoginModule required client=TRUE; };Copy to Clipboard Copied! Toggle word wrap Toggle overflow 设置以下系统属性:
java.security.auth.login.config=gss.conf java.security.krb5.conf=/etc/krb5.conf
java.security.auth.login.config=gss.conf java.security.krb5.conf=/etc/krb5.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注意krb5.conf提供 KDC 的位置。使用 kinit 命令与 Kerberos 进行身份验证并验证krb5.conf。
3.3.2. SASL 身份验证机制 复制链接链接已复制到粘贴板!
Data Grid 服务器支持使用 Hot Rod 和 Memcached 二进制协议端点的以下 SASL 验证机制:
| 身份验证机制 | 描述 | 安全域类型 | 相关详情 |
|---|---|---|---|
|
|
以纯文本格式使用凭据。您应该只在加密连接中使用 | 属性域和 LDAP 域 |
与 |
|
|
使用哈希算法和非ce 值。热 Rod 连接器支持 | 属性域和 LDAP 域 |
与 |
|
|
除了哈希算法和非ce 值外,还使用 salt 值。热 Rod 连接器支持 | 属性域和 LDAP 域 |
与 |
|
|
使用 Kerberos 票据并需要一个 Kerberos 域控制器。您必须在 realm 配置中添加对应的 | Kerberos realm |
与 |
|
|
使用 Kerberos 票据并需要一个 Kerberos 域控制器。您必须在 realm 配置中添加对应的 | Kerberos realm |
与 |
|
| 使用客户端证书。 | 信任存储域 |
与 |
|
|
使用 OAuth 令牌并需要一个 | 令牌域 |
与EARER |