【发布时间】:2017-12-01 16:55:52
【问题描述】:
我想知道有什么方法可以通过 elasticsearch inbuild 功能实现以下用例。
我在 elasticsearch 搜索中索引了员工数据
EMP ID FNAME LNAME COUNTRY 组织 其他 50 属性 与员工关联
1 Jayesh Bhoyar 美国 ABC
2 Tapan pal 美国ABC
3 Ajay 美国 ABC
4 Ravi Verma 韩国 ABC
7 Pankaj Pal 韩国 ABC
5 Sundar Lal 日本 ABC
6 rahul Sri 日本 ABC
现在我们有 4 个用户及其访问级别:
User1 - 可以访问美国
User2 - 可以访问美国、日本
User3 - 可以访问美国、韩国
User4 - 可以访问美国、日本、韩国
用户 1
现在,当用户 1 搜索 ABC 时,他应该得到 7 个结果,但输出应该 如下:
EMP ID FNAME LNAME COUNTRY 组织 其他 50 属性 与员工关联
1 Jayesh Bhoyar 美国 ABC
2 Tapan pal 美国ABC
3 Ajay 美国 ABC
XXX XXX XXX韩国XXX XXXXXXXXX
XXX XXX XXX韩国XXX XXXXXXXXX
XXX XXX XXX 日本 XXX XXXXXXXXX
XXX XXX XXX 日本 XXX XXXXXXXXX
用户2
现在,当用户 2 搜索 ABC 时,他应该得到 7 个结果,但输出应该 如下:
他应该可以看到日本的结果,韩国的结果应该 被蒙面
EMP ID FNAME LNAME COUNTRY 组织 其他 50 属性 与员工关联
1 Jayesh Bhoyar 美国 ABC
2 Tapan pal 美国ABC
3 Ajay 美国 ABC
XXX XXX XXX韩国XXX XXXXXXXXX
XXX XXX XXX韩国XXX XXXXXXXXX
5 Sundar Lal 日本 ABC
6 rahul Sri 日本 ABC
用户3
现在当用户 3 搜索 ABC 时,他应该得到 7 个结果,但输出应该 如下:
他应该能看到韩国的结果,日本的结果应该 被蒙面
EMP ID FNAME LNAME COUNTRY 组织 其他 50 属性 与员工关联
1 Jayesh Bhoyar 美国 ABC
2 Tapan pal 美国ABC
3 Ajay 美国 ABC
4 Ravi Verma 韩国 ABC
7 Pankaj Pal 韩国 ABC
XXX XXX XXX 日本 XXX XXXXXXXXX
XXX XXX XXX 日本 XXX XXXXXXXXX
我们有什么方法可以通过脚本或跨度或弹性搜索中内置的其他东西来实现这一点
【问题讨论】:
标签: elasticsearch search data-masking