1

我们正在寻找使用 Algolia Search 的应用程序。我们喜欢 Algolia 的便利性,但只停留在一点上。我们有自定义用户组,每个用户组只能看到记录的子集。当我们将记录推送到 Algolia 时,所有记录都会显示出来。我们如何将其与特定用户的自定义逻辑配对,才能看到特定记录,而我们不会显示在搜索列表中。

4

1 回答 1

5

处理此用例的最佳方法是将权限信息直接编码到您的记录中(如组或用户)。例如,您可以在记录中添加权限数组:

"permission": ["group1", "user42"]

然后,您只需在分面属性列表中添加此权限属性,并通过 facetFilters 参数在查询中应用限制。

我还建议使用安全 API 密钥功能,即使查询来自浏览器或移动应用程序,也可以安全地应用此限制。HMAC-SHA 256 签名在您的后端计算 API 密钥和限制之间,以确保没有人可以更改此限制。

于 2016-02-16T07:04:51.947 回答