Hi Bert,

Thank you for the detailed report and reproduction of this issue. This is a 
known limitation with Shield and certain operations in elasticsearch. We're 
working to resolve this in a future release. 

We will be documenting this limitation and all of the operations affected 
shortly; this was something that we had forgotten to document.

-Jay

On Monday, April 20, 2015 at 10:46:40 AM UTC-4, Bert Vermeiren wrote:
>
> Hi,
>
> Using:
> * ElasticSearch 1.5.1
> * SHIELD 1.2
>
> Whenever I use a terms lookup filter in a search query, I get an 
> UnAuthorizedException for the  [__es_system_user] user although the actual 
> user has even 'admin' role privileges.
> This seems a bug to me, where the terms filter does not have the correct 
> security context.
>
> This is very easy to reproduce, see gist :
>
> https://gist.github.com/bertvermeiren/c29e0d9ee54bb5b0b73a
>
> Scenario :
>
> # Add user 'admin' with default 'admin' role.
> ./bin/shield/esusers useradd admin -p admin1 -r admin
>
> # create index.
> curl -XPUT 'admin:admin1@localhost:9200/customer'
>
> # create a document on the index
> curl -XPUT 'admin:admin1@localhost:9200/customer/external/1' -d '
> {
>   "name" : "John Doe",
>   "token" : "token1"
> }'
>
> # create additional index for the "terms lookup" filter functionality
> curl -XPUT 'admin:admin1@localhost:9200/tokens'
>
> # create document in 'tokens' index
> curl -XPUT 'admin:admin1@localhost:9200/tokens/tokens/1' -d '
> {
>   "group" : "1",
>   "tokens" : ["token1", "token2" ]
> }'
>
> # search with a terms lookup filter on the "customer" index, referring to 
> the 'tokens' index.
>
> curl -XGET 'admin:admin1@localhost:9200/customer/external/_search' -d '
> {
>   "query": {
>     "filtered": {
>       "query": {
>         "match_all": {}
>       },
>       "filter": {
>        "terms": {
>         "token": {
>           "index": "tokens",
>           "type": "tokens",
>           "id": "1",
>           "path": "tokens"
>          }
>        }
>       }
>     }
>   }
> }'
>
>
> => org.elasticsearch.shield.authz.AuthorizationException: action 
> [indices:data/read/get] is unauthorized for user [__es_system_user]
>

-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to elasticsearch+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/670b111f-54d0-46e8-8b8e-6ec47e8d4a1e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to