Combining Basic Auth & Cognito Auth in ES

0

A customer wants to use HTTP Basic Auth for direct ES API access and use Cognito based federate Auth for Kibana access. Leaving aside the security issues with using Basic Auth, do we have any caveat that I should be aware of in this approach?

已提問 4 年前檢視次數 958 次
1 個回答
0
已接受的答案

You can use Internal master user option. WIth this, the HTTP Basic Auth for direct ES API will work with a username password as well as Cognito integration will work seamlessly. (https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/fgac.html)

With the internal master user, The rest APIs and signing request will require username and password. See below for examples :

Rest :

curl --user 'username:Password01' https://vpc-testgranular01-xxxxxx.us-west-2.es.amazonaws.com

Signed Req:

es = Elasticsearch(
    hosts = [{'host': host, 'port': 443}],
    http_auth = ('username','Password01'),
    use_ssl = True,
    verify_certs = True,
    connection_class = RequestsHttpConnection
)

The Cognito Kibana will work too without any issues. However if youchoose IAM for the master user and don't enable Amazon Cognito authentication, Kibana displays a nonfunctional sign-in page and basic auth will not work.

已回答 4 年前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南