1

アプリケーションに Algolia Search を使用することを検討しています。Algolia の利便性は気に入っていますが、1 つの点にこだわっています。カスタム ユーザー グループがあり、各ユーザー グループはレコードのサブセットのみを表示できます。レコードを Algolia にプッシュすると、すべてのレコードが表示されます。特定のユーザーが特定のレコードを表示できるカスタム ロジックとどのように組み合わせて、検索リストに表示しないようにしますか。

4

1 に答える 1

5

このユース ケースを処理する最善の方法は、権限情報をレコード内 (グループやユーザーなど) に直接エンコードすることです。たとえば、レコードに許可配列を追加できます。

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

次に、ファセットの属性のリストにこの許可属性を追加し、 facetFilters 引数を介してクエリに制限を適用するだけです。

また、クエリがブラウザーやモバイル アプリからのものであっても、この制限を安全な方法で適用できる、セキュリティで保護されたAPI キー機能を使用することをお勧めします。HMAC-SHA 256 署名は、バックエンドで API キーと制限の間で計算され、誰もこの制限を変更できないようにします。

于 2016-02-16T07:04:51.947 に答える