You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Kibana 8.5.3中对特定用户屏蔽部分字段值?

Kibana 8.5.3 特定用户屏蔽/隐藏字段数值的解决方案

方法一:字段级安全(Field-Level Security)(官方推荐,权限层面控制)

这是最安全的方案,通过角色权限严格限制用户对字段的访问:

    1. 配置Elasticsearch角色
      进入Kibana的Stack Management → Roles,新建或编辑目标角色:
    • 在Index Privileges区域添加目标索引/索引模式;
    • 在Field Security模块选择模式:
      • 选Exclude:输入需要屏蔽的字段名(如phone, email),该角色下用户将完全无法访问这些字段;
      • 选Include:仅列出允许查看的字段,反向实现敏感字段屏蔽。
    1. 关联用户与角色
      进入Stack Management → Users,找到目标用户,在Roles选项卡添加上述配置好的角色,保存生效。

方法二:索引模式隐藏字段(界面层隐藏)

若仅需在Kibana界面隐藏字段(底层仍可通过Dev Tools查询,适合非敏感场景):

    1. 进入Stack Management → Index Patterns,找到目标索引模式;
    1. 点击Edit pattern,在Fields列表中找到目标字段,点击右侧菜单选择Hide field from index pattern;
    1. 保存修改后,该索引模式下所有用户均无法在Discover、可视化等界面看到该字段。

方法三:脚本字段替换敏感内容(保留字段但屏蔽部分值)

如果需要保留字段显示,但对内容打码(如手机号中间四位隐藏):

    1. 进入Stack Management → Index Patterns,选择目标索引模式后点击Scripted fields;
    1. 点击Add scripted field,设置字段名(如masked_phone),脚本类型选Painless;
    1. 输入Painless脚本实现内容替换,示例(手机号打码):
def phone = doc['phone.keyword'].value;
if (phone != null && phone.length() == 11) {
  return phone.substring(0,3) + '****' + phone.substring(7);
}
return phone;
    1. 保存后,在Discover或可视化中使用该脚本字段替代原字段,同时可通过方法二隐藏原字段,实现内容屏蔽。

内容的提问来源于stack exchange,提问作者Mr White

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 10:52:06