Gerenciamento de identidade e acesso no Amazon OpenSearch Sem Servidor - OpenSearch Serviço Amazon

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Gerenciamento de identidade e acesso no Amazon OpenSearch Sem Servidor

O AWS Identity and Access Management (IAM) é um AWS service (Serviço da AWS) que ajuda o administrador a controlar o acesso aos recursos da AWS de forma segura. Os administradores do IAM controlam quem pode ser autenticado (conectado) e autorizado (ter permissões) a usar os recursos do OpenSearch Sem Servidor. O IAM é um AWS service (Serviço da AWS) que pode ser usado sem custo adicional.

Políticas baseadas em identidade para o OpenSearch Sem Servidor

Suporta políticas baseadas em identidade

Sim

As políticas baseadas em identidade são documentos de políticas de permissões JSON que você pode anexar a uma identidade, como usuário do IAM, grupo de usuários ou perfil. Essas políticas controlam quais ações os usuários e perfis podem realizar, em quais recursos e em que condições. Para saber como criar uma política baseada em identidade, consulte Criar políticas do IAM no Guia do usuário do IAM.

Com as políticas baseadas em identidade do IAM, é possível especificar ações ou atributos permitidos ou negados, bem como as condições sob as quais as ações são permitidas ou negadas. Você não pode especificar a entidade principal em uma política baseada em identidade porque ela se aplica ao usuário ou função à qual ela está anexada. Para saber mais sobre todos os elementos que podem ser usados em uma política JSON, consulte Referência de elementos da política JSON do IAM no Guia do Usuário do IAM.

Exemplos de políticas baseadas em identidade para o OpenSearch Sem Servidor

Para exibir exemplos de políticas baseadas em identidade do OpenSearch Sem Servidor, consulte Exemplos de políticas baseadas em identidade para o OpenSearch Sem Servidor.

Ações de políticas para o OpenSearch Sem Servidor

Oferece suporte a ações de políticas

Sim

O elemento Action de uma política JSON descreve as ações que você pode usar para permitir ou negar acesso em uma política. As ações de política geralmente têm o mesmo nome que a operação de API da AWS associada. Existem algumas exceções, como ações somente de permissão, que não têm uma operação de API correspondente. Algumas operações também exigem várias ações em uma política. Essas ações adicionais são chamadas de ações dependentes.

Incluem ações em uma política para conceder permissões para executar a operação associada.

As ações de políticas no OpenSearch Sem Servidor usam o seguinte prefixo antes da ação:

aoss

Para especificar várias ações em uma única instrução, separe-as com vírgulas.

"Action": [ "aoss:action1", "aoss:action2" ]

É possível especificar várias ações usando caracteres curinga (*). Por exemplo, para especificar todas as ações que começam com a palavra Describe, inclua a seguinte ação:

"Action": "aoss:List*"

Para exibir exemplos de políticas baseadas em identidade do OpenSearch Sem Servidor, consulte Exemplos de políticas baseadas em identidade para o OpenSearch Sem Servidor.

Recursos de políticas para o OpenSearch Sem Servidor

Oferece suporte a atributos de políticas

Sim

Os administradores podem usar as políticas de JSON da AWS para especificar quem tem acesso a quê. Ou seja, qual entidade principal pode executar ações em quais recursos e em que condições.

O elemento de política Resource JSON especifica o objeto ou os objetos aos quais a ação se aplica. As instruções devem incluir um elemento Resource ou um elemento NotResource. Como prática recomendada, especifique um atributo usando seu Nome do atributo da Amazon (ARN). Isso pode ser feito para ações que oferecem suporte a um tipo de atributo específico, conhecido como permissões em nível de atributo.

Para ações que não oferecem suporte a permissões em nível de recurso, como operações de listagem, use um caractere curinga (*) para indicar que a instrução se aplica a todos os recursos.

"Resource": "*"

Chaves de condição de política do Amazon OpenSearch Sem Servidor

Suporta chaves de condição de política específicas de serviço

Sim

Os administradores podem usar as políticas de JSON da AWS para especificar quem tem acesso a quê. Ou seja, qual entidade principal pode executar ações em quais recursos, e em que condições.

O elemento Condition (ou Condition bloco de) permite que você especifique condições nas quais uma instrução está em vigor. O elemento Condition é opcional. É possível criar expressões condicionais que usam agentes de condição, como “igual a” ou “menor que”, para fazer a condição da política corresponder aos valores na solicitação.

Se você especificar vários elementos Condition em uma instrução ou várias chaves em um único Condition elemento, a AWS os avaliará usando uma operação lógica AND. Se você especificar vários valores para uma única chave de condição, a AWS avaliará a condição usando uma operação lógica OR. Todas as condições devem ser atendidas antes que as permissões da instrução sejam concedidas.

Você também pode utilizar variáveis de espaço reservado ao especificar as condições. Por exemplo, é possível conceder a um usuário do IAM permissão para acessar um atributo somente se ele estiver marcado com seu nome de usuário do IAM. Para obter mais informações, consulte Elementos de política do IAM: variáveis e tags no Guia do usuário do IAM.

A AWS oferece suporte a chaves de condição globais e chaves de condição específicas do serviço. Para ver todas as AWS chaves de condição globais da , consulte AWSChaves de contexto de condição globais da no Guia do usuário do IAM.

Além do controle de acesso por atributo (ABAC), o OpenSearch Sem Servidor oferece suporte às seguintes chaves de condição:

  • aoss:collection

  • aoss:CollectionId

  • aoss:index

É possível usar essas chaves de condição mesmo ao fornecer permissões para políticas de acesso e políticas de segurança. Por exemplo:

[ { "Effect":"Allow", "Action":[ "aoss:CreateAccessPolicy", "aoss:CreateSecurityPolicy" ], "Resource":"*", "Condition":{ "StringLike":{ "aoss:collection":"log" } } } ]

Neste exemplo, a condição se aplica às políticas que contenham regras que correspondam a um nome ou padrão de coleção. As condições têm o seguinte comportamento:

  • StringEquals: aplica-se a políticas com regras que contenham a string de recurso “log” exata (ou seja, collection/log).

  • StringLike: aplica-se a políticas com regras que contenham uma string de recurso que inclua a string “log” (ou seja, collection/log, mas também collection/logs-application ou collection/applogs123).

nota

As chaves de condição coleção não se aplicam ao nível do índice. Por exemplo, na política acima, a condição não se aplicaria a uma política de acesso ou segurança contendo a string de recurso index/logs-application/*.

Para exibir uma lista de chaves de condição do OpenSearch Sem Servidor, consulte Chaves de condição do Amazon OpenSearch Sem Servidor na Referência de autorização do serviço. Para saber com quais ações e recursos é possível usar a chave de condição, consulte Ações definidas pelo Amazon OpenSearch Sem Servidor.

ABAC com o OpenSearch Sem Servidor

Oferece suporte a ABAC (tags em políticas)

Sim

O controle de acesso por atributo (ABAC) é uma estratégia de autorização que define permissões com base em atributos. Na AWS, esses atributos são chamados de tags. É possível anexar tags a entidades do IAM (usuários ou perfis) e a muitos atributos da AWS. A marcação de entidades e atributos é a primeira etapa do ABAC. Em seguida, você cria políticas de ABAC para permitir operações quando a tag da entidade principal corresponder à tag do atributo que ela está tentando acessar.

O ABAC é útil em ambientes que estão crescendo rapidamente e ajuda em situações onde o gerenciamento de políticas se torna um problema.

Para controlar o acesso baseado em tags, forneça informações sobre as tags no elemento de condição de uma política usando as aws:ResourceTag/key-name, aws:RequestTag/key-name ou aws:TagKeys chaves de condição.

Se um serviço oferecer suporte às três chaves de condição para cada tipo de recurso, o valor será Sim para o serviço. Se um serviço oferecer suporte às três chaves de condição somente para alguns tipos de recursos, o valor será Parcial.

Para obter mais informações sobre o ABAC, consulte O que é ABAC? no Guia do usuário do IAM. Para visualizar um tutorial com etapas para configurar o ABAC, consulte Usar controle de acesso baseado em atributos (ABAC) no Guia do usuário do IAM.

Para obter mais informações sobre aplicação de tags em recursos do OpenSearch Sem Servidor, consulte Aplicação de tags nas coleções do Amazon OpenSearch Sem Servidor.

Uso de credenciais temporárias com o OpenSearch Sem Servidor

Oferece suporte a credenciais temporárias

Sim

Alguns Serviços da AWS não funcionam quando você faz login usando credenciais temporárias. Para obter informações adicionais, incluindo quais Serviços da AWS funcionam com credenciais temporárias, consulte Serviços da AWS que funcionam com o IAM no Guia do usuário do IAM.

Você está usando credenciais temporárias se faz login no AWS Management Console usando qualquer método, exceto um nome de usuário e uma senha. Por exemplo, quando você acessa a AWS usando o link de autenticação única (SSO) da sua empresa, esse processo cria automaticamente credenciais temporárias. Você também cria automaticamente credenciais temporárias quando faz login no console como usuário e, em seguida, alterna perfis. Para obter mais informações sobre como alternar perfis, consulte Alternar para um perfil (console) no Guia do usuário do IAM.

Você pode criar credenciais temporárias manualmente usando a AWS CLI ou a API da AWS. Em seguida, você pode usar essas credenciais temporárias para acessar aAWS .AWS A recomenda que você gere credenciais temporárias dinamicamente em vez de usar chaves de acesso de longo prazo. Para obter mais informações, consulte Credenciais de segurança temporárias no IAM.

Funções vinculadas ao serviço do OpenSearch Sem Servidor

Oferece suporte a perfis vinculados ao serviço

Sim

Um perfil vinculado ao serviço é um tipo de perfil de serviço vinculado a um AWS service (Serviço da AWS). O serviço pode presumir a função de executar uma ação em seu nome. Os perfis vinculados ao serviço aparecem em sua Conta da AWS e são de propriedade do serviço. Um administrador do IAM pode exibir, mas não pode editar as permissões para perfis vinculados ao serviço.

Para obter detalhes sobre como criar e gerenciar funções vinculadas ao serviço do OpenSearch Sem Servidor, consulte Usando funções vinculadas a serviços para criar OpenSearch coleções sem servidor.

Exemplos de políticas baseadas em identidade para o OpenSearch Sem Servidor

Por padrão, usuários e funções não têm permissão para criar ou modificar recursos do OpenSearch Sem Servidor. Eles também não podem executar tarefas usando o AWS Management Console, a AWS Command Line Interface (AWS CLI) ou a API AWS. Para conceder aos usuários permissão para executar ações nos recursos de que precisam, um administrador do IAM pode criar políticas do IAM. O administrador pode então adicionar as políticas do IAM aos perfis, e os usuários podem assumir os perfis.

Para saber como criar uma política baseada em identidade do IAM usando esses exemplos de documento de política JSON, consulte Criação de políticas do IAM no Guia do Usuário do IAM.

Para obter detalhes sobre ações e tipos de recursos definidos pelo Amazon OpenSearch Sem Servidor, inclusive o formato dos ARNs para cada um dos tipos de recurso, consulte Ações, recursos e chaves de condição do Amazon OpenSearch Sem Servidor na Referência de autorização do serviço.

Melhores práticas de políticas

As políticas baseadas em identidade são muito eficientes. Elas determinam se alguém pode criar, acessar ou excluir recursos do OpenSearch Sem Servidor em sua conta. Essas ações podem incorrer em custos para a Conta da AWS. Ao criar ou editar políticas baseadas em identidade, siga estas diretrizes e recomendações:

As políticas baseadas em identidade determinam se alguém pode criar, acessar ou excluir recursos do OpenSearch Sem Servidor na sua conta. Essas ações podem incorrer em custos para a Conta da AWS. Ao criar ou editar políticas baseadas em identidade, siga estas diretrizes e recomendações:

  • Comece com AWS as políticas gerenciadas pela e avance para as permissões de privilégio mínimo: para começar a conceder permissões a seus usuários e workloads, use as AWS políticas gerenciadas pela que concedem permissões para muitos casos de uso comuns. Elas estão disponíveis na sua Conta da AWS. Recomendamos que você reduza ainda mais as permissões definindo políticas gerenciadas pelo cliente da AWS específicas para seus casos de uso. Para obter mais informações, consulte Políticas gerenciadas pela AWS ou Políticas gerenciadas pela AWS para perfis de trabalho no Guia do usuário do IAM.

  • Aplique permissões de privilégio mínimo: ao definir permissões com as políticas do IAM, conceda apenas as permissões necessárias para executar uma tarefa. Você faz isso definindo as ações que podem ser executadas em atributos específicos sob condições específicas, também conhecidas como permissões de privilégio mínimo. Para obter mais informações sobre como usar o IAM para aplicar permissões, consulte Políticas e permissões no IAM no Guia do usuário do IAM.

  • Use condições nas políticas do IAM para restringir ainda mais o acesso: você pode adicionar uma condição às políticas para limitar o acesso a ações e atributos. Por exemplo, você pode escrever uma condição de política para especificar que todas as solicitações devem ser enviadas usando SSL. Você também pode usar condições para conceder acesso a ações de serviço, se elas forem usadas por meio de um AWS service (Serviço da AWS) específico, como o AWS CloudFormation. Para obter mais informações, consulte Elementos de política JSON do IAM: Condition no Guia do usuário do IAM.

  • Use o IAM Access Analyzer para validar suas políticas do IAM a fim de garantir permissões seguras e funcionais: o IAM Access Analyzer valida as políticas novas e existentes para que elas sigam a linguagem de política do IAM (JSON) e as práticas recomendadas do IAM. O IAM Access Analyzer oferece mais de 100 verificações de política e recomendações acionáveis para ajudá-lo a criar políticas seguras e funcionais. Para obter mais informações, consulte Validação de políticas do IAM Access Analyzer no Guia do usuário do IAM.

  • Exigir autenticação multifator (MFA): se houver um cenário que exija usuários do IAM ou um usuário raiz em sua Conta da AWS, ative a MFA para obter segurança adicional. Para exigir MFA quando as operações de API forem chamadas, adicione condições de MFA às suas políticas. Para obter mais informações, consulte Configuração de acesso à API protegido por MFA no Guia do usuário do IAM.

Para obter mais informações sobre as práticas recomendadas do IAM, consulte Práticas recomendadas de segurança no IAM no Guia do usuário do IAM.

Uso do OpenSearch Sem Servidor no console

Para acessar o OpenSearch Sem Servidor no console do OpenSearch Service, é necessário ter um conjunto mínimo de permissões. Essas permissões dão autorização para que você liste e exiba detalhes sobre os recursos do OpenSearch Sem Servidor na sua conta da AWS. Se você criar uma política baseada em identidade que seja mais restritiva que as permissões mínimas necessárias, o console não funcionará como pretendido para entidades (como perfis do IAM) com essa política.

Não é necessário conceder permissões mínimas do console para usuários que fazem chamadas somente à AWS CLI ou à API do AWS. Em vez disso, permita o acesso somente às ações que corresponderem a operação da API que você estiver tentando executar.

A política a seguir permite que um usuário acesse o OpenSearch Sem Servidor no console do OpenSearch Service:

{ "Version": "2012-10-17", "Statement": [ { "Resource": "*", "Effect": "Allow", "Action": [ "aoss:ListCollections", "aoss:BatchGetCollection", "aoss:ListAccessPolicies", "aoss:ListSecurityConfigs", "aoss:ListSecurityPolicies", "aoss:ListTagsForResource", "aoss:ListVpcEndpoints", "aoss:GetAccessPolicy", "aoss:GetAccountSettings", "aoss:GetSecurityConfig", "aoss:GetSecurityPolicy" ] } ] }

Administração de coleções do OpenSearch Sem Servidor

Esta política é um exemplo de política de “administração de coleções” que permite que um usuário gerencie e administre coleções do Amazon OpenSearch Sem Servidor. O usuário pode criar, exibir e excluir coleções.

{ "Version": "2012-10-17", "Statement": [ { "Resource": "arn:aws:aoss:region:123456789012:collection/*", "Action": [ "aoss:CreateCollection", "aoss:DeleteCollection", "aoss:UpdateCollection" ], "Effect": "Allow" }, { "Resource": "*", "Action": [ "aoss:BatchGetCollection", "aoss:ListCollections", "aoss:CreateAccessPolicy", "aoss:CreateSecurityPolicy" ], "Effect": "Allow" } ] }

Exibição de coleções do OpenSearch Sem Servidor

Este exemplo de política permite que um usuário exiba detalhes de todas as coleções do Amazon OpenSearch Sem Servidor em sua conta. O usuário não pode modificar as coleções nem as políticas de segurança associadas.

{ "Version": "2012-10-17", "Statement": [ { "Resource": "*", "Action": [ "aoss:ListAccessPolicies", "aoss:ListCollections", "aoss:ListSecurityPolicies", "aoss:ListTagsForResource", "aoss:BatchGetCollection" ], "Effect": "Allow" } ] }

Usar operações de API do OpenSearch

As operações de API do plano de dados consistem nas funções que você usa no OpenSearch sem Servidor para obter valor em tempo real do serviço. As operações da API do plano de controle consistem nas funções que você usa para configurar o ambiente.

Para acessar as APIs do plano de dados do Amazon OpenSearch Sem Servidor e do OpenSearch Dashboards no navegador, você precisa adicionar duas permissões do IAM para recursos de coleções. Essas permissões são aoss:APIAccessAll e aoss:DashboardsAccessAll.

nota

A partir de 10 de maio de 2023, a tecnologia sem servidor do OpenSearch exige essas duas novas permissões do IAM para recursos de coleções. A aoss:APIAccessAll permissão permite o acesso ao plano de dados e a aoss:DashboardsAccessAll permissão permite o OpenSearch Dashboards a partir do navegador. A falha na adição das duas novas permissões do IAM resulta em um erro 403.

Este exemplo de política permite que um usuário acesse APIs do plano de dados de uma coleção específica em sua conta e acesse OpenSearch Dashboards para todas as coleções na sua conta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "aoss:APIAccessAll", "Resource": "arn:aws:aoss:region:account-id:collection/collection-id" }, { "Effect": "Allow", "Action": "aoss:DashboardsAccessAll", "Resource": "arn:aws:aoss:region:account-id:dashboards/default" } ] }

Tanto aoss:APIAccessAll quanto aoss:DashboardsAccessAll fornecem permissão total do IAM aos recursos da coleção, enquanto a permissão para o Dashboards também fornece acesso ao OpenSearch Dashboards. Cada permissão funciona de forma independente, portanto, uma negação explícita de aoss:APIAccessAll não bloqueia o acesso aos recursos de aoss:DashboardsAccessAll, incluindo as Ferramentas de desenvolvimento. O mesmo vale para uma negativa de aoss:DashboardsAccessAll.

O tecnologia sem servidor do OpenSearch suporta apenas o endereço IP de origem na configuração de condição na política do IAM da entidade principal para chamadas de plano de dados:

"Condition": { "IpAddress": { "aws:SourceIp": "52.95.4.14" } }