清除缓存 API

编辑

将用户从用户缓存中逐出。您可以完全清除缓存或逐出特定用户。

请求

编辑

POST /_security/realm/<realms>/_clear_cache

POST /_security/realm/<realms>/_clear_cache?usernames=<usernames>

描述

编辑

用户凭据缓存在每个节点的内存中,以避免每次传入请求都连接到远程身份验证服务或访问磁盘。您可以使用领域设置来配置用户缓存。有关更多信息,请参见 控制用户缓存

要从角色缓存中逐出角色,请参阅 清除角色缓存 API。要从权限缓存中逐出权限,请参阅 清除权限缓存 API。要从 API 密钥缓存中逐出 API 密钥,请参阅 清除 API 密钥缓存 API

路径参数

编辑
<realms>
(必需,字符串) 要清除的领域的逗号分隔列表。要清除所有领域,请使用 *。不支持其他通配符模式。
usernames
(可选,列表) 要从缓存中清除的用户的逗号分隔列表。如果您未指定此参数,则 API 会将所有用户从用户缓存中逐出。

示例

编辑

例如,要逐出 file 领域缓存的所有用户

resp = client.security.clear_cached_realms(
    realms="default_file",
)
print(resp)
const response = await client.security.clearCachedRealms({
  realms: "default_file",
});
console.log(response);
POST /_security/realm/default_file/_clear_cache

要逐出选定的用户,请指定 usernames 参数

resp = client.security.clear_cached_realms(
    realms="default_file",
    usernames="rdeniro,alpacino",
)
print(resp)
const response = await client.security.clearCachedRealms({
  realms: "default_file",
  usernames: "rdeniro,alpacino",
});
console.log(response);
POST /_security/realm/default_file/_clear_cache?usernames=rdeniro,alpacino

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

resp = client.security.clear_cached_realms(
    realms="default_file,ldap1",
)
print(resp)
const response = await client.security.clearCachedRealms({
  realms: "default_file,ldap1",
});
console.log(response);
POST /_security/realm/default_file,ldap1/_clear_cache

要清除所有领域的缓存,请使用 *

resp = client.security.clear_cached_realms(
    realms="*",
)
print(resp)
const response = await client.security.clearCachedRealms({
  realms: "*",
});
console.log(response);
POST /_security/realm/*/_clear_cache