View a markdown version of this page

Crie uma função do IAM para o AWS Security Agent - Agente de segurança da AWS

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

Crie uma função do IAM para o AWS Security Agent

O AWS Security Agent usa funções do IAM de três maneiras:

  1. Função do aplicativo: usada ao criar o aplicativo AWS Security Agent. Para casos de uso do IAM Identity Center e do link de acesso administrativo, o serviço assume essa função de conceder aos WebApp usuários permissões para interagir com as APIs do AWS Security Agent.

  2. Função do serviço de teste de penetração: especificada ao criar espaços de agente como uma lista de funções disponíveis. Posteriormente, WebApp os usuários selecionam uma dessas funções ao criar um teste de penetração. O serviço AWS Security Agent assume essa função para acessar seus recursos da AWS durante o teste.

  3. Papel do ator: usado para autenticar e autorizar solicitações para seu aplicativo web de destino (por exemplo, APIs do AWS API Gateway). Essas funções são fornecidas durante a criação do espaço do agente. O agente do AWS Security Agent assume funções de ator para interagir com seu aplicativo de destino.

Função do aplicativo

A função do aplicativo é usada ao criar seu aplicativo do AWS Security Agent no serviço. Para cenários de autenticação do IAM Identity Center e do link de acesso do administrador, o serviço AWS Security Agent assume essa função para conceder aos WebApp usuários as permissões necessárias para interagir com as APIs do AWS Security Agent.

Permissões obrigatórias

Essa função precisa de permissões para:

  • Invoque operações de API do AWS Security Agent

  • Leia e grave dados de configuração do aplicativo

  • Acesse as informações da sessão do usuário

  • Gerenciar tokens de autenticação para WebApp usuários

Política de confiança

A política de confiança deve permitir que o serviço AWS Security Agent assuma essa função:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "securityagent.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Política de permissões

A função deve incluir permissões para:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "securityagent:GetApplication", "securityagent:UpdateApplication", "securityagent:ListAgentInstances", "securityagent:CreatePentestSession" ], "Resource": "arn:aws:securityagent:*:*:application/*" } ] }
nota

Personalize as permissões com base nos requisitos específicos do seu aplicativo e no princípio do menor privilégio.

Função do serviço de teste de penetração

A função do serviço de teste de penetração é especificada ao criar espaços de agente como uma lista de funções disponíveis. Quando WebApp os usuários criam um teste de penetração, eles selecionam uma dessas funções. O serviço AWS Security Agent então assume essa função para acessar e testar seus recursos da AWS.

Permissões obrigatórias

Essa função precisa de permissões para acessar e analisar seus recursos da AWS durante o teste de penetração:

  • Leia e descreva as configurações de VPC e a topologia de rede

  • Inspecione instâncias do EC2, grupos de segurança e ACLs de rede

  • Analise as políticas do IAM e as permissões de recursos

  • Leia CloudWatch registros e métricas

  • Acesse as configurações de serviços da AWS relevantes para testes de segurança

Política de confiança

A política de confiança deve permitir que o serviço AWS Security Agent assuma essa função nas operações de teste de penetração:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "securityagent.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "your-external-id" } } } ] }
nota

Use uma ID externa para maior segurança ao permitir o acesso entre contas ou serviços.

Política de permissões

A função deve incluir acesso somente de leitura aos seus recursos da AWS. Considere usar estas políticas gerenciadas:

  • SecurityAudit- Política gerenciada pela AWS para auditoria de segurança

  • ViewOnlyAccess- Read-only acesso à maioria dos serviços da AWS

Ou crie uma política personalizada com permissões específicas:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:Describe*", "vpc:Describe*", "iam:Get*", "iam:List*", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "cloudwatch:Describe*", "cloudwatch:Get*", "cloudwatch:List*", "s3:GetObject", "s3:ListBucket" ], "Resource": "*" } ] }
Importante

Conceda somente as permissões mínimas necessárias para o escopo do seu teste de penetração. Revise e ajuste as permissões com base nos serviços da AWS que você deseja incluir nos testes de segurança.

Papel do ator

A função de ator é usada para autenticar e autorizar solicitações para seu aplicativo web de destino durante o teste de penetração. Essas funções são fornecidas durante a criação do espaço do agente, e o agente do AWS Security Agent presume que elas interajam com os endpoints do aplicativo de destino (como APIs do AWS API Gateway, URLs da função Lambda ou outros aplicativos). AWS-hosted

Permissões obrigatórias

Essa função precisa de permissões para:

  • Invoque os endpoints do API Gateway

  • Execute funções Lambda

  • Acesse recursos da AWS específicos do aplicativo

  • Autentique-se com os mecanismos de autenticação do seu aplicativo de destino

  • Execute operações HTTP nos endpoints do seu aplicativo

Política de confiança

A política de confiança deve permitir que o serviço de agente do AWS Security Agent assuma essa função:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "securityagent.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "your-external-id" } } } ] }

Política de permissões

As permissões dependem da arquitetura do aplicativo de destino. Aqui estão alguns exemplos de cenários comuns:

Para aplicativos do API Gateway

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "execute-api:Invoke" ], "Resource": "arn:aws:execute-api:us-east-1:*:your-api-id/*" } ] }

Para URLs da função Lambda

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:InvokeFunctionUrl", "lambda:InvokeFunction" ], "Resource": "arn:aws:lambda:us-east-1:*:function:your-function-name" } ] }

Para Application Load Balancer com Autenticação Cognito

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cognito-idp:InitiateAuth", "cognito-idp:RespondToAuthChallenge" ], "Resource": "arn:aws:cognito-idp:us-east-1:*:userpool/your-user-pool-id" } ] }
Importante

Configure as permissões do Actor Role para corresponder aos requisitos de autenticação e autorização do seu aplicativo de destino. A função deve ter o mesmo nível de acesso dos usuários ou serviços que o Security Agent simulará durante o teste de penetração.