全文搜索和角色权限

Posted

技术标签:

【中文标题】全文搜索和角色权限【英文标题】:Full Text Search and Role permissions 【发布时间】:2011-08-21 02:35:48 【问题描述】:

我正在构建一个系统,其中用户具有特定的动态角色,使他们能够访问某些资源(即元文档)。这些文档 META 使用 Elastic Search 进行索引。

我可以毫无困难地进行查询。

现在我需要考虑角色: 如果我在索引文档时添加允许查看给定文档的角色,我将过滤我的查询以匹配特定角色并返回结果。

这很好,但如果角色发生变化,我需要重新索引我的所有文档。

如果我在接收到弹性搜索结果时在服务器端动态地执行它,它可能也可以工作,但会消耗一些 CPU 和带宽,另外它可能是方面搜索和分页的问题。

你会如何解决这样的问题?什么是最合适的解决方案?

【问题讨论】:

有趣的问题!我想这是执行将全文搜索与关系方面相结合的查询的更普遍问题的一个具体案例。当然,一些关系数据库已经支持快速全文搜索。 角色多久更换一次?索引需要多长时间?重新编制索引会影响搜索吗? 实际上,在我看到 ES 支持 Bulk insert 以加快索引速度之后,重新索引将是一个可行的解决方案,因为角色更改不那么频繁。 【参考方案1】:

将代理放在 Elastic Search 前面怎么样,这将删除所有不需要的结果并且根本不关心搜索的角色?

【讨论】:

以上是关于全文搜索和角色权限的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins 用户角色权限管理

Jenkins 用户角色权限管理

具有 keycloak 实例的角色权限

使用 SQL 搜索一对多关系中的集合

用户角色权限数据库设计

如何查看oracle用户具有的权限和角色