控制用户缓存编辑

用户凭据缓存在每个节点的内存中,以避免为每个传入请求连接到远程身份验证服务或访问磁盘。您可以使用 cache.ttlcache.max_userscache.hash_algo 领域设置来配置用户缓存的特征。

JWT 领域使用 jwt.cache.ttljwt.cache.size 领域设置。

PKI 和 JWT 领域不缓存用户凭据,但会缓存已解析的用户对象,以避免在每个请求上不必要地执行角色映射。

缓存的用户凭据在内存中进行哈希处理。默认情况下,Elasticsearch 安全功能使用加盐的 sha-256 哈希算法。您可以通过设置 cache.hash_algo 领域设置来使用不同的哈希算法。请参阅用户缓存和密码哈希算法

从缓存中逐出用户编辑

您可以使用清除缓存 API 来强制逐出缓存的用户。例如,以下请求会逐出 ad1 领域中的所有用户

$ curl -XPOST 'https://127.0.0.1:9200/_security/realm/ad1/_clear_cache'

要清除多个领域的缓存,请将领域指定为逗号分隔的列表

$ curl -XPOST 'https://127.0.0.1:9200/_security/realm/ad1,ad2/_clear_cache'

您还可以逐出特定用户

$ curl -XPOST 'https://127.0.0.1:9200/_security/realm/ad1/_clear_cache?usernames=rdeniro,alpacino'