3.2. 配置 Data Grid 服务器身份验证机制
您可以明确配置 Hot Rod 和 REST 端点,以使用特定的身份验证机制。只有在需要显式覆盖安全域的默认机制时,才需要配置验证机制。
注意
配置中的每个 endpoint
部分都必须包含 hotrod-connector
和 rest-connector
元素或字段。例如,如果您明确声明了 hotrod-connector
,还必须声明 rest-connector
,即使它没有配置身份验证机制。
先决条件
- 根据需要,将安全域添加到您的 Data Grid 服务器配置。
流程
- 打开 Data Grid Server 配置以进行编辑。
-
添加
endpoint
元素或字段,并指定它与security-realm
属性一起使用的安全域。 添加
hotrod-connector
元素或字段来配置 Hot Rod 端点。-
添加
authentication
元素或字段。 -
为 Hot Rod 端点指定 SASL 身份验证机制,以用于
sasl 机制
属性。 -
如果适用,使用
qop
属性指定保护设置的 SASL 质量。 -
如有必要,使用
server-name
属性指定 Data Grid 服务器身份。
-
添加
添加
rest-connector
元素或字段来配置 REST 端点。-
添加
authentication
元素或字段。 -
为 REST 端点指定用于 mechanism 属性的 HTTP
身份验证机制
。
-
添加
- 保存对配置的更改。
身份验证机制配置
以下配置指定了用于身份验证的 Hot Rod 端点的 SASL 机制:
XML
<server xmlns="urn:infinispan:server:15.0"> <endpoints> <endpoint socket-binding="default" security-realm="my-realm"> <hotrod-connector> <authentication> <sasl mechanisms="SCRAM-SHA-512 SCRAM-SHA-384 SCRAM-SHA-256 SCRAM-SHA-1 DIGEST-SHA-512 DIGEST-SHA-384 DIGEST-SHA-256 DIGEST-SHA DIGEST-MD5 PLAIN" server-name="infinispan" qop="auth"/> </authentication> </hotrod-connector> <rest-connector> <authentication mechanisms="DIGEST BASIC"/> </rest-connector> </endpoint> </endpoints> </server>
JSON
{ "server": { "endpoints": { "endpoint": { "socket-binding": "default", "security-realm": "my-realm", "hotrod-connector": { "authentication": { "security-realm": "default", "sasl": { "server-name": "infinispan", "mechanisms": ["SCRAM-SHA-512", "SCRAM-SHA-384", "SCRAM-SHA-256", "SCRAM-SHA-1", "DIGEST-SHA-512", "DIGEST-SHA-384", "DIGEST-SHA-256", "DIGEST-SHA", "DIGEST-MD5", "PLAIN"], "qop": ["auth"] } } }, "rest-connector": { "authentication": { "mechanisms": ["DIGEST", "BASIC"], "security-realm": "default" } } } } } }
YAML
server: endpoints: endpoint: socketBinding: "default" securityRealm: "my-realm" hotrodConnector: authentication: securityRealm: "default" sasl: serverName: "infinispan" mechanisms: - "SCRAM-SHA-512" - "SCRAM-SHA-384" - "SCRAM-SHA-256" - "SCRAM-SHA-1" - "DIGEST-SHA-512" - "DIGEST-SHA-384" - "DIGEST-SHA-256" - "DIGEST-SHA" - "DIGEST-MD5" - "PLAIN" qop: - "auth" restConnector: authentication: mechanisms: - "DIGEST" - "BASIC" securityRealm: "default"
3.2.1. 禁用身份验证
在本地开发环境或隔离网络中,您可以将 Data Grid 配置为允许未经身份验证的客户端请求。当您禁用用户身份验证时,您还应在 Data Grid 安全配置中禁用授权。
流程
- 打开 Data Grid Server 配置以进行编辑。
-
从 endpoint 元素或字段中删除
security-realm
属性。 -
从
cache-container
的安全配置和每个缓存配置中删除任何授权
元素。 - 保存对配置的更改。
XML
<server xmlns="urn:infinispan:server:15.0"> <endpoints socket-binding="default"/> </server>
JSON
{ "server": { "endpoints": { "endpoint": { "socket-binding": "default" } } } }
YAML
server: endpoints: endpoint: socketBinding: "default"