Exemplo de políticas baseadas em políticas gerenciadas - AWS Elastic Beanstalk

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

Exemplo de políticas baseadas em políticas gerenciadas

Esta seção demonstra como controlar o acesso do usuário ao AWS Elastic Beanstalk e inclui exemplos de políticas que fornecem o acesso necessário para cenários comuns. Essas políticas são derivadas das políticas gerenciadas do Elastic Beanstalk. Para obter informações sobre como anexar políticas gerenciadas a usuários e grupos, consulte Gerenciar políticas de usuário do Elastic Beanstalk.

Neste cenário, Exemplo Corp. é uma empresa de software com três equipes responsáveis pelo site da empresa: os administradores que gerenciam a infraestrutura, os desenvolvedores que criam o software para o site e uma equipe de controle de qualidade que testa o site. Para ajudar a gerenciar permissões para os recursos do Elastic Beanstalk, a Exemplo Corp. cria três grupos aos quais os membros de cada equipe pertencem: administradores, desenvolvedores e testadores. A Exemplo Corp. deseja que o grupo de administradores tenha acesso total a todas as aplicações, ambientes e seus recursos subjacentes, para que possam criar, solucionar problemas e excluir todos os ativos do Elastic Beanstalk. Os desenvolvedores precisam de permissões para visualizar todos os ativos do Elastic Beanstalk e para criar e implantar versões da aplicação. Os desenvolvedores não devem ter permissão para criar novos aplicativos ou ambientes ou para encerrar ambientes em execução. Os testadores precisam visualizar todos os recursos do Elastic Beanstalk para monitorar e testar aplicações. Os testadores não devem ser capazes de fazer alterações em nenhum recurso do Elastic Beanstalk.

O seguinte exemplo de políticas fornece as permissões necessárias para cada grupo.

Exemplo 1: Grupo de administradores: todas as APIs do Elastic Beanstalk e APIs de serviço relacionadas

A política a seguir oferece aos usuários permissões para todas as ações necessárias para usar o Elastic Beanstalk. Ela também permite que o Elastic Beanstalk provisione e gerencie recursos em seu nome nos serviços a seguir. O Elastic Beanstalk depende desses serviços adicionais para provisionar recursos subjacentes ao criar um ambiente.

  • Amazon Elastic Compute Cloud

  • Elastic Load Balancing

  • Auto Scaling

  • Amazon CloudWatch

  • Amazon Simple Storage Service

  • Amazon Simple Notification Service

  • Amazon Relational Database Service

  • AWS CloudFormation

Observe que esta política é um exemplo. Ela fornece um amplo conjunto de permissões aos serviços da AWS que o Elastic Beanstalk usa para gerenciar aplicações e ambientes. Por exemplo, ec2:* permite que um usuário do AWS Identity and Access Management (IAM) realize qualquer ação em qualquer recurso do Amazon EC2 na conta da AWS. Essas permissões não estão limitadas aos recursos utilizados com o Elastic Beanstalk. Como uma das melhores práticas, você deve conceder a indivíduos apenas as permissões de que precisam para executar suas tarefas.

{ "Version" : "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "elasticbeanstalk:*", "ec2:*", "elasticloadbalancing:*", "autoscaling:*", "cloudwatch:*", "s3:*", "sns:*", "rds:*", "cloudformation:*" ], "Resource" : "*" } ] }

Exemplo 2: Grupo de desenvolvedores: todas as operações, exceto altamente privilegiadas

A política a seguir nega permissão para criar aplicações e ambientes e permite todas as demais ações do Elastic Beanstalk.

Observe que esta política é um exemplo. Ela fornece um amplo conjunto de permissões para produtos da AWS que o Elastic Beanstalk usa para gerenciar aplicações e ambientes. Por exemplo, ec2:* permite que um usuário do IAM realize qualquer ação em qualquer recurso do Amazon EC2 na conta da AWS. Essas permissões não estão limitadas aos recursos utilizados com o Elastic Beanstalk. Como uma das melhores práticas, você deve conceder a indivíduos apenas as permissões de que precisam para executar suas tarefas.

{ "Version" : "2012-10-17", "Statement" : [ { "Action" : [ "elasticbeanstalk:CreateApplication", "elasticbeanstalk:CreateEnvironment", "elasticbeanstalk:DeleteApplication", "elasticbeanstalk:RebuildEnvironment", "elasticbeanstalk:SwapEnvironmentCNAMEs", "elasticbeanstalk:TerminateEnvironment"], "Effect" : "Deny", "Resource" : "*" }, { "Action" : [ "elasticbeanstalk:*", "ec2:*", "elasticloadbalancing:*", "autoscaling:*", "cloudwatch:*", "s3:*", "sns:*", "rds:*", "cloudformation:*"], "Effect" : "Allow", "Resource" : "*" } ] }

Exemplo 3: Testadores: somente visualização

A seguinte política permite acesso somente leitura a todos os aplicativos, versões de aplicativos, eventos e ambientes. Não permite realizar nenhuma ação.

{ "Version" : "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "elasticbeanstalk:Check*", "elasticbeanstalk:Describe*", "elasticbeanstalk:List*", "elasticbeanstalk:RequestEnvironmentInfo", "elasticbeanstalk:RetrieveEnvironmentInfo", "ec2:Describe*", "elasticloadbalancing:Describe*", "autoscaling:Describe*", "cloudwatch:Describe*", "cloudwatch:List*", "cloudwatch:Get*", "s3:Get*", "s3:List*", "sns:Get*", "sns:List*", "rds:Describe*", "cloudformation:Describe*", "cloudformation:Get*", "cloudformation:List*", "cloudformation:Validate*", "cloudformation:Estimate*" ], "Resource" : "*" } ] }