Trong Azure Tìm kiếm, chúng tôi có thể tạo nhiều chỉ mục cho các kết quả tìm kiếm khác nhau và chúng tôi có hai loại khóa api. Một là dành cho quản trị và một là để truy vấn. Nhưng với cùng một người dùng api-key có thể tìm kiếm tất cả các chỉ mục.Có thể triển khai bảo mật dựa trên người dùng trên Tìm kiếm Azure không?
Trong giải pháp của mình, tôi cần phải thiết kế một hệ thống để những người dùng khác nhau sử dụng hệ thống sẽ nhận được kết quả khác nhau bằng những ưu tiên của họ. Tôi nghĩ rằng điều này có thể được giải quyết với các chỉ mục chuyên dụng cho từng vai trò nhưng người dùng vẫn có thể truy vấn các chỉ mục khác nếu họ muốn.
Làm cách nào để đảm bảo rằng mọi người dùng CHỈ có thể tìm kiếm trên một chỉ mục cụ thể.
Tôi nghĩ rằng việc tạo một dịch vụ web sẽ hoạt động giữa máy khách và Tìm kiếm Azure. Nó sẽ lấy từ tìm kiếm từ khách hàng và gửi đến Azure Search bằng cách thêm api-key vào nó. Sau khi nhận được kết quả, nó sẽ lọc kết quả theo vai trò của máy khách và trả về kết quả cuối cùng. Bằng cách này api-key sẽ được ẩn từ các khách hàng để không ai có thể tìm kiếm trực tiếp từ dịch vụ Azure Search. Nó trông thế nào ? –
Điều đó sẽ hiệu quả vì ứng dụng của bạn đang hạn chế quyền truy cập bằng cách chỉ hiển thị chỉ mục (hoặc chỉ mục) mà người dùng có quyền truy cập. –
Acutally sẽ chỉ có một chỉ mục. Chỉ mục sẽ bao gồm một trường có tên Vai trò sẽ bao gồm những vai trò nào sẽ có quyền truy cập vào tài liệu cụ thể. Dịch vụ web của tôi sẽ lọc các tài liệu theo trường vai trò. –