I've got an elasticsearch instance, with an Nginx reverse proxy sat in front of it, implementing a URL level access control mechanism - approximately as described in this article
This is giving me per-index granularity, which is handy.
What I'm trying to figure out next though is - can I enforce a blanket filter criteria that excludes results from searches and direct document retrievals?
I'm thinking a 'group' model, where docs in my indices are tagged by group, and users can only see results and docs for their group.
Now, I know I could do a per-group index, and apply URL level controls. That may be my workaround if I can't do this.
I have had a look at aliasing - this seems to do 90% of what I want, in that I can restrict a search to an alias. But what I can't then do is inhibit a direct 'GET' request with an (unauthorised) document ID.
Is there a way of doing this, or am I just on a road to nowhere?
Note - part of my reasons for this, is I'm trying to use a fairly standard kibana setup, and I have overlapping groups of users.