【问题标题】:AWS ElasticSearch console: How to Access to Indices tab in my ES domainAWS ElasticSearch 控制台:如何访问我的 ES 域中的索引选项卡
【发布时间】:2020-09-09 23:36:33
【问题描述】:

我无法在 AWS ElasticSearch 控制台中访问我的 ES 域的索引选项卡。这是它在控制台中的样子:

即使我将我的 IAM ARN (arn:aws:iam::NNNNNNNNNNNNN:root) 添加到控制台的访问策略中,我仍然收到此错误:

/_stats: {
    "error":{
      "root_cause":[
         {
            "type":"security_exception",
            "reason":"no permissions for [indices:monitor/stats] and User [name=arn:aws:iam::NNNNNNNNNNNNN:root, backend_roles=[], requestedTenant=null]"
         }
      ],
      "type":"security_exception",
      "reason":"no permissions for [indices:monitor/stats] and User [name=arn:aws:iam::NNNNNNNNNNNNN:root, backend_roles=[], requestedTenant=null]"
   },
   "status":403
}

知道出了什么问题吗?域也具有主密码的访问控制。

【问题讨论】:

  • 你已经很久没有投票给我的答案了,如果你的问题解决了,如果你能投票给答案就好了

标签: amazon-web-services elasticsearch amazon-iam aws-elasticsearch


【解决方案1】:

事实证明,我的访问策略设置本身是正确的,但如果您使用域中的基本身份验证配置了主用户帐户,则索引和集群运行状况将不起作用。在我切换到基于 ARN 的主帐户后,它就起作用了。

【讨论】:

    【解决方案2】:

    对于 Google 员工:

    截至 2020/01 年,Amazon ES 采用一种技巧来确定如何完成细粒度授权。

    • 如果您的主用户是 IAM 用户 ARN,则您隐式选择采用 IAM 方式
    • 如果您的主用户创建为具有自己的用户名和密码的 ES 用户,则您隐式选择正常方式

    含义是:

    • IAM-way 将 AWS 令牌作为授权请求的一种方式
    • 普通方式采用 HTTP 身份验证
    • 如果您选择正常方式,那么 ES 将不会与 IAM 集成,也不会将 IAM 用户/角色映射到内部用户,即使它们似乎已映射到 Kibana UI 中
    • 如果您选择 IAM 方式,那么您将失去通过 Kibana 默认登录页面登录的能力,它变得无法使用
    • 如果您仍想使用 IAM-way 和 Kibana UI,那么您需要集成 Cognito

    对于看到 IAM 用户/角色映射但在访问域时发现他们未经授权的用户来说,这看起来非常混乱。

    由于您可以更改 ES 域的主用户(停机时间),您可以来回更改它以避免与 Cognito 集成,但这很痛苦。

    这应该在official docs 中更清楚地说明或更好地强调。

    【讨论】:

      【解决方案3】:

      请转到下图所示的操作下拉菜单,它会显示当前的访问策略附加到您的 Elasticsearch 域。

      就我而言,它如下所示,我可以访问索引选项卡,请注意,具有 /* 的 Resources 键表示允许访问我域中的所有端点,索引是其中的一部分。

      注意:一旦获得访问权限,您可以直接点击_cat/indices?v API 获取所有索引的详细信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-11-28
        • 2023-01-26
        • 1970-01-01
        • 1970-01-01
        • 2011-06-15
        • 1970-01-01
        • 2016-08-18
        相关资源
        最近更新 更多