0

我在 AWS Elasticsearch 中设置了不同的 kibana 角色来保护不同的索引。这些 kibana 角色映射到 IAM 角色,这些角色映射到 Cognito 组。

我的计划是将用户分配到一个或多个认知组中,这将授予他们访问各自 kibana 索引的权限。

但是,当我尝试使用包含cognito:roles集合中多个元素的 Cognito 令牌登录时,我收到一个错误:OpenDistro ES: Missing Role No roles available for this user, please contact your system administrator.

这是预期的吗?这些示例仅包括属于单个认知组的用户(受限用户或管理员)。如果我是一个 cognito 组的成员,我可以登录,但一旦我成为多个组的成员,我就会收到上述错误。我希望有多个 kibana 角色。

https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html

https://github.com/aws-samples/amazon-elasticsearch-service-with-cognito/blob/master/lib/search-stack.ts

4

1 回答 1

0

显然这是每个 AWS 架构师的设计限制,尽管它无助于解决我的用例:

ES 细粒度访问控制旨在仅将一个后端角色映射到 Cognito 令牌的 IAM 角色。您能否将多个后端角色合并为一个角色?,这是一个选项吗?. 这将有利于对具有相似需求的用户进行分组,您需要管理的 Cognito 组和 IAM 角色数量较少。

AWS WWCS 地理解决方案架构

于 2022-02-03T18:18:41.107 回答