访问控制列表在阿尔及利亚搜索列表
Access Control List in Algolia Search listing
在algolia中管理访问控制列表最有效的方法是什么?
我们有项目列表,但我们不想使用全局列表。我们的清单因用户而异。
我们的应用程序有一个ACL
逻辑-我们可以将访问逻辑与Algolia对齐吗?
处理这个问题的最佳方法是将所有记录(跨用户)存储在单个索引中,并用单个用户id标记它们。
{ "objectID": 1, ....., "_tags": ["user_21"] }
{ "objectID": 2, ....., "_tags": ["user_21"] }
{ "objectID": 3, ....., "_tags": ["user_42"] }
然后在搜索时,使用Secured API Keys将搜索限制为特定的用户ID。这是一个安全的解决方案,你可以从你的JavaScript代码中使用,确保你的用户只搜索他们有权访问的记录。
在后端:
// if the current user is ID=42
public_key = Algolia.generate_secured_api_key('<SearchOnlyAPIKeyKeptPrivate>', {filters: 'user_42'})
在你的前端:
var client = algoliasearch("APPID", '<PublicApiKeyGeneratedForUser42>');
index.search('.....');
您可以在这里阅读更多关于API密钥(特别是安全API密钥):https://www.algolia.com/doc/guides/security/api-keys
相关文章:
- 在javascript中搜索项目列表的性能
- 如何在剑道下拉列表中按文本和值搜索
- 为非列表项目创建HTML实时搜索
- 在元素列表中搜索给定字符串
- 在字符串列表中搜索任何出现的单词,如果单词的第一个字符匹配,则高亮匹配单词.Javascript正则表达式
- 从下拉列表中搜索并建议关键字
- 使自动完成可搜索下拉菜单don'我不想在点击搜索时显示列表
- 返回谷歌搜索的网址列表
- 如何创建一个脚本,该脚本给定网站列表,它使用其搜索功能来获取信息
- 如何将从谷歌自定义搜索API获取的数据放入复选框列表
- 以有效的方式搜索对象列表 mongo
- 如何在 jQuery 中显示“未找到结果”列表搜索
- select2v4用于实时搜索-可以从下拉列表中选择或提交关键字
- 为了在列表中搜索,角度过滤器有问题
- JQuery在链接的静态页面中搜索,突出显示找到的单词,而不破坏列表
- 用于在列表中进行多重搜索的正则表达式,用逗号分隔
- JavaScript 表按下拉列表搜索
- Javascript - 更快的功能:线性列表搜索或获取对象值
- 多个下拉列表搜索替换字符串
- 使用下拉列表搜索元素