Exemplos de políticas baseadas em identidade do Amazon Kendra - Amazon Kendra

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á.

Exemplos de políticas baseadas em identidade do Amazon Kendra

Por padrão, usuários e perfis não têm permissão para criar ou modificar recursos do Amazon Kendra. Eles também não podem realizar tarefas usando o AWS Management Console, AWS CLI, ou AWS API. Um IAM administrador deve criar IAM políticas que concedam aos usuários e funções permissão para realizar API operações específicas nos recursos especificados de que precisam. O administrador deve anexar essas políticas aos usuários ou grupos que exigem essas permissões.

Para saber como criar uma política IAM baseada em identidade usando esses exemplos de documentos JSON de política, consulte Criação de políticas na JSON guia do IAMusuário.

Melhores práticas de política

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

  • Comece com as políticas AWS gerenciadas e avance para as permissões de privilégios mínimos — Para começar a conceder permissões aos seus usuários e cargas de trabalho, use as políticas AWS gerenciadas que concedem permissões para muitos casos de uso comuns. Eles estão disponíveis no seu Conta da AWS. Recomendamos que você reduza ainda mais as permissões definindo políticas gerenciadas pelo AWS cliente que sejam específicas para seus casos de uso. Para obter mais informações, consulte políticas AWS gerenciadas ou políticas AWS gerenciadas para funções de trabalho no Guia IAM do usuário.

  • Aplique permissões com privilégios mínimos — Ao definir permissões com IAM políticas, conceda somente as permissões necessárias para realizar 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 IAM como usar para aplicar permissões, consulte Políticas e permissões IAM no Guia IAM do usuário.

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

  • Use o IAM Access Analyzer para validar suas IAM políticas e garantir permissões seguras e funcionais — o IAM Access Analyzer valida políticas novas e existentes para que as políticas sigam a linguagem da IAM política (JSON) e as melhores práticas. IAM IAMO Access Analyzer fornece mais de 100 verificações de políticas e recomendações práticas para ajudá-lo a criar políticas seguras e funcionais. Para obter mais informações, consulte Validação da política do IAM Access Analyzer no Guia do IAM Usuário.

  • Exigir autenticação multifatorial (MFA) — Se você tiver um cenário que exija IAM usuários ou um usuário root Conta da AWS, ative MFA para obter segurança adicional. Para exigir MFA quando API as operações são chamadas, adicione MFA condições às suas políticas. Para obter mais informações, consulte Configurando o API acesso MFA protegido no Guia do IAMusuário.

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

Políticas gerenciadas pela AWS (predefinidas) para o Amazon Kendra

AWS aborda muitos casos de uso comuns fornecendo IAM políticas autônomas que são criadas e administradas pela AWS. Essas políticas são chamadas de políticas AWS gerenciadas. AWS as políticas gerenciadas facilitam a atribuição de permissões a usuários, grupos e funções do que se você mesmo tivesse que escrever as políticas. Para obter mais informações, consulte Adicionar permissões a um usuário no Guia do IAM usuário.

As seguintes políticas AWS gerenciadas, que você pode anexar a grupos e funções em sua conta, são específicas da Amazon Kendra:

  • AmazonKendraReadOnly— Concede acesso somente para leitura aos recursos do Amazon Kendra.

  • AmazonKendraFullAccess— Concede acesso total para criar, ler, atualizar, excluir, marcar e executar todos os recursos da Amazon Kendra.

Para o console, sua função também deve ter as permissões iam:CreateRole, iam:CreatePolicy, iam:AttachRolePolicy, e s3:ListBucket.

nota

Você pode revisar essas permissões fazendo login no IAM console e pesquisando políticas específicas.

Você também pode criar suas próprias políticas personalizadas para permitir permissões para ações do Amazon API Kendra. Você pode anexar essas políticas personalizadas às IAM funções ou grupos que exigem essas permissões. Para obter exemplos de IAM políticas para o Amazon Kendra, consulte. Exemplos de políticas baseadas em identidade do Amazon Kendra

Permitir que usuários visualizem suas próprias permissões

Este exemplo mostra como você pode criar uma política que permita IAM aos usuários visualizar as políticas embutidas e gerenciadas que estão anexadas à identidade do usuário. Essa política inclui permissões para concluir essa ação no console ou programaticamente usando o AWS CLI ou. AWS API

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Acessando um índice do Amazon Kendra

Neste exemplo, você deseja conceder a um usuário da sua AWS conta acesso para consultar um índice.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "QueryIndex", "Effect": "Allow", "Action": [ "kendra:Query" ], "Resource": "arn:aws:kendra:${Region}:${Account}:index/${Index ID}" } ] }

Exemplos de política baseada na tag do

Políticas baseadas em tags são documentos de JSON política que especificam as ações que um diretor pode realizar em recursos marcados.

Exemplo: uso de uma tag para acessar um recurso

Este exemplo de política concede a um usuário ou função em sua AWS conta permissão para usar a Query operação com qualquer recurso marcado com a chave department e o valorfinance.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kendra:Query" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/department": "finance" } } } ] }

Exemplo: use uma tag para ativar as operações do Amazon Kendra

Este exemplo de política concede a um usuário ou função em sua AWS conta permissão para usar qualquer operação do Amazon Kendra, TagResource exceto a operação com qualquer recurso marcado com a department chave e o valor. finance

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "kendra:*", "Resource": "*" }, { "Effect": "Deny", "Action": [ "kendra:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/department": "finance" } } } ] }

Exemplo: use uma tag para restringir o acesso a uma operação

Este exemplo de política restringe o acesso de um usuário ou função em sua AWS conta para usar a CreateIndex operação, a menos que o usuário forneça a department tag e ela tenha os valores permitidos finance e. IT

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "kendra:CreateIndex", "Resource": "*" }, { "Effect": "Deny", "Action": "kendra:CreateIndex", "Resource": "*", "Condition": { "Null": { "aws:RequestTag/department": "true" } } }, { "Effect": "Deny", "Action": "kendra:CreateIndex", "Resource": "*", "Condition": { "ForAnyValue:StringNotEquals": { "aws:RequestTag/department": [ "finance", "IT" ] } } } ] }