Integrar o Amazon EC2 ao Google SecOps
Neste documento, descrevemos como integrar o AWS Elastic Compute Cloud (Amazon EC2) ao Google Security Operations.
Casos de uso
Proteger as instâncias do Amazon Elastic Compute Cloud (Amazon EC2)
- Crie grupos de segurança para restringir o acesso à internet de entrada e saída para o Amazon EC2.
- Alocar um novo endereço IP elástico
- Associar um novo endereço IP elástico
Gerenciamento de recursos: use tags personalizadas de instância para rastrear e identificar recursos da AWS.
Antes de começar
Antes de configurar a integração do AWS Elastic Compute Cloud (EC2) no Google SecOps, verifique se o ambiente de rede e as credenciais da AWS atendem a todos os pré-requisitos operacionais.
Para preparar o ambiente para integração, conclua o seguinte:
Verifique a linha de visão da rede entre o Google SecOps e os endpoints de serviço regionais do AWS EC2.
Consiga credenciais de API programática da AWS (um ID de chave de acesso e uma chave de acesso secreta) com as permissões do IAM adequadas.
Configure e teste a instância de integração no Google SecOps.
Requisitos de rede
O Google SecOps se comunica diretamente com o serviço AWS EC2
usando APIs REST HTTPS e o SDK do Python da AWS (boto3).
Verifique se o ambiente de rede atende às seguintes regras de conectividade:
Acesso HTTPS de saída: ative a comunicação HTTPS de saída da sua instância do Google SecOps ou do agente remoto para o endpoint regional do AWS EC2 (
ec2.<region>.amazonaws.com) pela porta443/TCP.Para mais informações, consulte Endpoints de serviço da AWS na documentação da AWS.
Configuração de proxy: se a organização rotear o tráfego de saída por um proxy HTTP/HTTPS, configure as variáveis de proxy de ambiente padrão (
HTTP_PROXY,HTTPS_PROXY,NO_PROXY) no servidor do Google SecOps ou no host do agente remoto.
Autenticação e credenciais
A integração com o AWS EC2 requer credenciais de API programáticas para autenticar solicitações usando o AWS Signature versão 4.
Verifique se o ambiente da AWS atende aos seguintes requisitos de autenticação:
Credenciais programáticas: consiga um ID de chave de acesso e uma chave secreta da AWS válidos associados a um usuário ou papel do AWS IAM.
Para informações sobre como criar identidades do IAM e gerar credenciais, consulte Como gerenciar chaves de acesso para usuários do IAM e Identidades do IAM na documentação da AWS.
Privilégio mínimo: restrinja as permissões apenas às ações e aos recursos de computação necessários para seus fluxos de trabalho automatizados e alterne as credenciais periodicamente.
Para detalhes sobre as recomendações de segurança, consulte Práticas recomendadas de segurança no IAM na documentação da AWS.
Configurar permissões de ação
Conceda à identidade de autenticação do AWS IAM as permissões específicas necessárias para as ações que os playbooks do Google SecOps executam.
Consulte as permissões mínimas para ações do AWS Elastic Compute Cloud (EC2) na tabela a seguir:
| Nome da ação | Permissão do IAM da AWS obrigatória
(ActionName:Permission) |
Permissão de pré-requisito | Descrição / Escopo do recurso |
|---|---|---|---|
| Authorize Security Group Egress | ec2:AuthorizeSecurityGroupEgress |
ec2:DescribeRegions |
Adiciona regras de saída a um grupo de segurança do EC2. Recurso: ARN do grupo de segurança de destino. |
| Autorizar entrada do grupo de segurança | ec2:AuthorizeSecurityGroupIngress |
ec2:DescribeRegions |
Adiciona regras de entrada a um grupo de segurança do EC2. Recurso: ARN do grupo de segurança de destino. |
| Criar tags | ec2:CreateTags |
ec2:DescribeRegions |
Adiciona ou substitui tags em recursos do EC2. Recurso: ARN do recurso de destino do EC2. |
| Listar instâncias | ec2:DescribeInstances |
ec2:DescribeRegions |
Recupera o status e os metadados das instâncias do EC2. Recurso:
*. |
| Listar grupos de segurança | ec2:DescribeSecurityGroups |
— | Recupera configurações e regras de grupos de segurança. Recurso:
*. |
| Ping | ec2:DescribeRegions |
— | Valida a conectividade da integração. Recurso: *. |
| Revoke Security Group Egress | ec2:RevokeSecurityGroupEgress |
ec2:DescribeRegions |
Remove regras de saída de um grupo de segurança do EC2. Recurso: ARN do grupo de segurança de destino. |
| Revogar entrada do grupo de segurança | ec2:RevokeSecurityGroupIngress |
ec2:DescribeRegions |
Remove regras de entrada de um grupo de segurança do EC2. Recurso: ARN do grupo de segurança de destino. |
| Iniciar instância | ec2:StartInstances |
— | Inicia instâncias do EC2 interrompidas. Recurso: ARN da instância de destino do EC2. |
| Interromper instância | ec2:StopInstances |
— | Interrompe a execução de instâncias do EC2. Recurso: ARN da instância de destino do EC2. |
| Criar snapshot | ec2:CreateSnapshots |
ec2:DescribeRegions |
Cria snapshots pontuais do EBS para volumes de instâncias. Recurso: ARNs de instância e volume. |
| Encerrar instância | ec2:TerminateInstances |
— | Encerra e finaliza instâncias do EC2. Recurso: ARN da instância de destino do EC2. |
Referência rápida (ActionName:Permission)
Use a seguinte referência rápida para analisar as permissões necessárias para cada ação:
Ping: ec2:DescribeRegions
Authorize Security Group Egress: ec2:AuthorizeSecurityGroupEgress, ec2:DescribeRegions
Authorize Security Group Ingress: ec2:AuthorizeSecurityGroupIngress, ec2:DescribeRegions
Create Tags: ec2:CreateTags, ec2:DescribeRegions
List Instances: ec2:DescribeInstances, ec2:DescribeRegions
List Security Groups: ec2:DescribeSecurityGroups
Revoke Security Group Egress: ec2:RevokeSecurityGroupEgress, ec2:DescribeRegions
Revoke Security Group Ingress: ec2:RevokeSecurityGroupIngress, ec2:DescribeRegions
Start Instance: ec2:StartInstances
Stop Instance: ec2:StopInstances
Take Snapshot: ec2:CreateSnapshots, ec2:DescribeRegions
Terminate Instance: ec2:TerminateInstances
Exemplo de política do IAM (privilégio mínimo)
O exemplo de política a seguir demonstra as permissões necessárias para executar todas as ações do AWS EC2 no Google SecOps.
Para instruções sobre como criar e anexar políticas do IAM, consulte Como criar políticas do IAM na documentação da AWS.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "SecOpsEC2Discovery",
"Effect": "Allow",
"Action": [
"ec2:DescribeRegions",
"ec2:DescribeInstances",
"ec2:DescribeSecurityGroups"
],
"Resource": "*"
},
{
"Sid": "SecOpsEC2InstanceRemediation",
"Effect": "Allow",
"Action": [
"ec2:StartInstances",
"ec2:StopInstances",
"ec2:TerminateInstances",
"ec2:CreateTags",
"ec2:CreateSnapshots"
],
"Resource": "*"
},
{
"Sid": "SecOpsEC2SecurityGroupManagement",
"Effect": "Allow",
"Action": [
"ec2:AuthorizeSecurityGroupIngress",
"ec2:RevokeSecurityGroupIngress",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:RevokeSecurityGroupEgress"
],
"Resource": "arn:aws:ec2:*:*:security-group/*"
}
]
}
Parâmetros de integração
Use os seguintes parâmetros para configurar a integração:
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| ID da chave de acesso da AWS | String | N/A | Sim | ID da chave de acesso da AWS a ser usado na integração. |
| Chave secreta da AWS | Senha | N/A | Sim | Chave secreta da AWS para usar na integração. |
| Região padrão da AWS | String | N/A | Sim | Região padrão da AWS a ser usada na integração, por exemplo, us-west-2. |
Para instruções sobre como configurar uma integração no Google SecOps, consulte Configurar integrações.
Se necessário, você pode fazer mudanças depois. Depois de configurar uma instância de integração, é possível usá-la em playbooks. Para mais informações sobre como configurar e oferecer suporte a várias instâncias, consulte Como oferecer suporte a várias instâncias.
Ações
Para mais informações sobre ações, consulte Responder a ações pendentes na sua mesa de trabalho e Executar uma ação manual no seu caso.
Authorize Security Group Egress
Adiciona a regra de saída especificada a um grupo de segurança para uso com uma VPC. Uma regra de saída permite que as instâncias enviem tráfego para os intervalos de endereços CIDR IPv4 ou IPv6 especificados. As mudanças nas regras são propagadas para as instâncias afetadas o mais rápido possível. No entanto, pode haver um pequeno atraso.
Para mais informações sobre os limites de grupos de segurança da VPC, consulte Limites da Amazon VPC.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| IDs dos grupos de segurança | String | N/A | Sim | Um ou mais IDs de grupo de segurança. Separados por vírgula. Observação para o desenvolvedor: cada ID em uma solicitação separada |
| Protocolo IP | DDL | todas | Não | O nome do protocolo IP. Use "all" para especificar todos os protocolos. Especificar "all" permite o tráfego em todas as portas, independentemente do intervalo de portas especificado. Valores possíveis: tcp , udp , icmp, all Observação para o desenvolvedor: "all" é igual a -1 no código |
| Da porta | Inteiro | Não | O início do intervalo de portas para os protocolos TCP e UDP ou um número de tipo ICMP. | |
| Para fazer a portabilidade | Inteiro | Não | O fim do intervalo de portas para os protocolos TCP e UDP permite o tráfego em todas as portas, independentemente do intervalo de portas especificado. | |
| Intervalos de IP: CidrIP | String | N/A | Não | O intervalo CIDR IPv4. Para especificar um único endereço IPv4, use o tamanho de prefixo /32. |
| Intervalos IPv6: CidrIP | String | N/A | Não | O intervalo CIDR IPv6. Para especificar um único endereço IPv6, use o tamanho de prefixo /128. |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se as regras de saída especificadas forem adicionadas a pelo menos um (ou todos) os grupos de segurança: (is_success = true): "A regra de saída especificada foi adicionada aos seguintes grupos de segurança: {group_ids}" Se não for possível adicionar as regras de saída especificadas devido a um erro de regra de permissões (porta inválida etc.): (is_success = false): "Falha ao adicionar a regra de saída especificada aos seguintes grupos de segurança: {group_ids}. Motivo: conjunto de permissões de IP inválido. Para mais detalhes, verifique os registros." Se não foi possível adicionar as regras de saída especificadas devido a um ID de grupo de segurança inválido: (is_success = false): "Falha ao adicionar a regra de saída especificada aos seguintes grupos de segurança: {group_ids}. Motivo: o ID do grupo de segurança fornecido é inválido. Para mais detalhes, verifique os registros.`` Se não for possível adicionar as regras de saída especificadas a todos os grupos: is_success=false A ação deve falhar e interromper a execução de um playbook: Se houver um erro fatal, um erro do SDK, como credenciais incorretas, falta de conexão com o servidor, entre outros: "Erro ao executar a ação 'Autorizar saída do grupo de segurança'. Motivo: {0}''.format(error.Stacktrace) |
Geral |
Autorizar entrada do grupo de segurança
Adiciona a regra de entrada especificada a um grupo de segurança. Uma regra de entrada permite que as instâncias recebam tráfego dos intervalos de endereços CIDR IPv4 ou IPv6 especificados. As mudanças nas regras são propagadas para as instâncias afetadas o mais rápido possível. No entanto, pode haver um pequeno atraso.
Para mais informações sobre os limites de grupos de segurança da VPC, consulte Limites da Amazon VPC.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| IDs dos grupos de segurança | String | N/A | Sim | Um ou mais IDs de grupo de segurança. Separados por vírgula. Observação para o desenvolvedor: cada ID em uma solicitação separada |
| Protocolo IP | DDL | todas | Não | O nome do protocolo IP. Use "all" para especificar todos os protocolos. Especificar "all" permite o tráfego em todas as portas, independentemente do intervalo de portas especificado. Valores possíveis: tcp , udp , icmp, all Observação para o desenvolvedor: "all" é igual a -1 no código |
| Da porta | Inteiro | Não | O início do intervalo de portas para os protocolos TCP e UDP ou um número de tipo ICMP. | |
| Para fazer a portabilidade | Inteiro | Não | O fim do intervalo de portas para os protocolos TCP e UDP permite o tráfego em todas as portas, independentemente do intervalo de portas especificado. | |
| Intervalos de IP: CidrIP | String | N/A | Não | O endereço IPv4 no formato CIDR. Para especificar um único endereço IPv4, use o tamanho de prefixo /32. |
| Intervalos IPv6: CidrIP | String | N/A | Não | O intervalo CIDR IPv6. Para especificar um único endereço IPv6, use o tamanho de prefixo /128. |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se as regras de entrada especificadas forem adicionadas a pelo menos um grupo de segurança (se todas forem atualizadas: is_success = true): "As regras de entrada especificadas foram adicionadas aos seguintes grupos de segurança: {group_ids}" Se não foi possível adicionar as regras de entrada especificadas devido a um erro de regra de permissões (porta inválida etc.): (is_success =false): "Falha ao adicionar a regra de entrada especificada aos seguintes grupos de segurança: {group_ids}. Motivo: conjunto de permissões de IP inválido. Para mais detalhes, verifique os registros." Se não for possível adicionar as regras de entrada especificadas devido a um ID de grupo de segurança inválido (is_success =false): "Falha ao adicionar a regra de entrada especificada aos seguintes grupos de segurança: {group_ids}. Motivo: o ID do grupo de segurança fornecido é inválido. Para mais detalhes, verifique os registros.`` A ação deve falhar e interromper a execução de um playbook: Se houver um erro fatal, um erro do SDK, como credenciais incorretas, falta de conexão com o servidor, entre outros: "Erro ao executar a ação 'Autorizar entrada do grupo de segurança'. Motivo: {0}''.format(error.Stacktrace) |
Geral |
Criar tags
Uma tag é um rótulo que você atribui a um recurso da AWS. Cada tag consiste em uma chave e um valor opcional. Use tags para pesquisar e filtrar seus recursos ou rastrear seus custos da AWS. Adiciona ou substitui apenas as tags especificadas para o recurso ou recursos especificados do Amazon EC2. Quando você especifica uma chave de tag existente, o valor é substituído pelo novo valor. Cada recurso pode ter no máximo 50 tags. As chaves de tag precisam ser exclusivas por recurso.
Para mais informações sobre tags, consulte Como marcar seus recursos no Guia do usuário do Amazon Elastic Compute Cloud.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Códigos de recurso | String | N/A | Sim | Um ou mais IDs de recurso. Separados por vírgula. |
| Tags | String | N/A | Sim | A combinação de chave-valor de uma tag a ser atribuída ao recurso. Por
exemplo, para adicionar a todos os recursos especificados uma tag com a chave É possível adicionar ou substituir as tags especificadas. As chaves de tag precisam ser exclusivas por recurso. |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se der certo: "As tags {tags_list} foram adicionadas aos seguintes recursos: "resource_ids" Para IDs de recursos inválidos (is_success = false): "Falha ao adicionar as tags {tag_list} aos seguintes recursos: {resource_ids}. Motivo: ID de recurso inválido Se o recurso tiver mais de 50 tags (is_success = false): "Falha ao adicionar as tags {tag_list} aos seguintes recursos: {resource_ids}. Motivo: o recurso pode ter no máximo 50 tags. Se a chave da tag não for exclusiva (is_success = false): "Falha ao adicionar as tags {tag_list} aos seguintes recursos: {resource_ids}. Motivo: as chaves de tag precisam ser exclusivas por recurso. Se a tag fornecida estiver em um formato inválido (ou seja, apenas chave ou apenas valor sem a estrutura completa de chave:valor) (is_success = false): "Falha ao adicionar as tags {invalid_tags} aos seguintes recursos: {ids}. Motivo: formato inválido. A tag precisa incluir chave e valor. A ação deve falhar e interromper a execução de um playbook: Se houver um erro fatal ou do SDK, como credenciais incorretas, falta de conexão com o servidor, entre outros: "Erro ao executar a ação 'Criar tags'. Motivo: {0}''.format(error.Stacktrace) |
Geral |
Listar instâncias
Descreve as instâncias especificadas ou todas as instâncias.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| IDs de instância | String | N/A | Não | Um ou mais IDs de instância. Se você especificar IDs de instância, a saída vai incluir informações apenas para as instâncias especificadas. Esse parâmetro não pode ser usado com o parâmetro "Max Results". "IDs de instância" tem prioridade sobre o parâmetro "Resultado máximo". |
| Filtros de tags | String | N/A | Não | A combinação de chave/valor de uma tag atribuída ao recurso. Por exemplo, para encontrar todos os recursos que têm uma tag com a chave Proprietário e o valor TeamA, especifique Owner:TeamA. Filtros de tag separados por vírgula. Exemplo: Name:Name1,Owner:TeamA. As instâncias retornadas vão se ajustar a todos os filtros. |
| Máximo de resultados | Inteiro | 50 | Não | Especifique quantas instâncias serão retornadas. O padrão é 50. O máximo é 1.000. O parâmetro "IDs de instância" não pode ser usado com o parâmetro "Máximo de resultados". "IDs de instância" tem prioridade sobre o parâmetro "Resultado máximo". |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Resultado do JSON
"EC2_Instances": [
{
"AmiLaunchIndex":0,
"ImageId":"ami-047a51fa27710816e",
"InstanceId":"i-044c08c5bfe1a7f98",
"InstanceType":"t2.micro",
"KeyName":"\"Key\": \"Test\", \"Value\":\"Test\"",
"LaunchTime":"2021-1-30",
"Monitoring":{
"State":"disabled"
},
"Placement":{
"AvailabilityZone":"us-east-1d",
"GroupName":"",
"Tenancy":"default"
},
"PrivateDnsName":"ip-192-0-2-220.ec2.internal",
"PrivateIpAddress":"192.0.2.220",
"ProductCodes":[
],
"PublicDnsName":"ec2-192-0-2-218.compute-1.amazonaws.com",
"PublicIpAddress":"192.0.2.218",
"State":{
"Code":16,
"Name":"running"
},
"StateTransitionReason":"",
"SubnetId":"subnet-1b1fda3a",
"VpcId":"vpc-ID",
"Architecture":"x86_64",
"BlockDeviceMappings":[
{
"DeviceName":"/dev/xvda",
"Ebs":{
"AttachTime":"2021-1-30",
"DeleteOnTermination":true,
"Status":"attached",
"VolumeId":"vol-00f70681a43e5d86e"
}
}
],
"ClientToken":"",
"EbsOptimized":false,
"EnaSupport":true,
"Hypervisor":"xen",
"NetworkInterfaces":[
{
"Association":{
"IpOwnerId":"amazon",
"PublicDnsName":"ec2-192-0-2-218.compute-1.amazonaws.com",
"PublicIp":"192.0.2.218"
},
"Attachment":{
"AttachTime":"",
"AttachmentId":"eni-attach-06bc5e5901ce99ef2",
"DeleteOnTermination":true,
"DeviceIndex":0,
"Status":"attached",
"NetworkCardIndex":0
},
"Description":"",
"Groups":[
{
"GroupName":"launch-wizard-2",
"GroupId":"sg-001700ccddac4189a"
}
],
"Ipv6Addresses":[
],
"MacAddress":"12:34:56:ab:cd:ef",
"NetworkInterfaceId":"eni-020fa83efd417e32d",
"OwnerId":"ID",
"PrivateDnsName":"ip-192-0-2-220.ec2.internal",
"PrivateIpAddress":"192.0.2.220",
"PrivateIpAddresses":[
{
"Association":{
"IpOwnerId":"amazon",
"PublicDnsName":"ec2-192-0-2-218.compute-1.amazonaws.com",
"PublicIp":"192.0.2.218"
},
"Primary":true,
"PrivateDnsName":"ip-192-0-2-220.ec2.internal",
"PrivateIpAddress":"192.0.2.220"
}
],
"SourceDestCheck":true,
"Status":"in-use",
"SubnetId":"subnet-1b1fda3a",
"VpcId":"vpc-ID",
"InterfaceType":"interface"
}
],
"RootDeviceName":"/dev/xvda",
"RootDeviceType":"ebs",
"SecurityGroups":[
{
"GroupName":"launch-wizard-2",
"GroupId":"sg-001700ccddac4189a"
}
],
"SourceDestCheck":true,
"Tags":[
{
"Key":"Owner",
"Value":"Example"
},
{
"Key":"Name",
"Value":"Example test"
}
],
"VirtualizationType":"hvm",
"CpuOptions":{
"CoreCount":1,
"ThreadsPerCore":1
},
"CapacityReservationSpecification":{
"CapacityReservationPreference":"open"
},
"HibernationOptions":{
"Configured":false
},
"MetadataOptions":{
"State":"applied",
"HttpTokens":"optional",
"HttpPutResponseHopLimit":1,
"HttpEndpoint":"enabled"
},
"EnclaveOptions":{
"Enabled":false
}
}
]
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook:
A ação deve falhar e interromper a execução de um playbook: Se houver um erro fatal, ID de instância inválido, erro do SDK, como credenciais erradas, sem conexão com o servidor, outro: "Erro ao executar a ação 'Listar instâncias'. Motivo: {0}''.format(error.Stacktrace) |
Geral |
| Tabela do painel de casos | Nome da tabela: instâncias do Amazon EC2 Colunas da tabela: ID Estado Tipo Zona de disponibilidade DNS IPv4 público Endereço IPv4 público Monitoramento Nome do grupo de segurança Nome da chave Hora do lançamento |
Listar grupos de segurança
Descreve os grupos de segurança especificados ou todos os seus grupos de segurança. Um grupo de segurança é usado com instâncias na plataforma EC2-Classic ou em uma VPC específica.
Para mais informações, consulte Grupos de segurança do Amazon EC2.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Nomes dos grupos de segurança | String | N/A | Falso | Um ou mais nomes de grupos de segurança [somente EC2-Classic e VPC padrão]. Separados por vírgula.Se você especificar nomes de grupos de segurança, a saída vai incluir informações apenas para os nomes especificados. |
| IDs dos grupos de segurança | String | N/A | Falso | Um ou mais IDs de grupo de segurança. Separados por vírgula.Se você especificar IDs de grupos de segurança, a saída vai incluir informações apenas para os IDs especificados. Obrigatório para grupos de segurança em uma VPC não padrão. |
| Filtros de tags | String | N/A | Falso | A combinação de chave-valor de uma tag atribuída ao grupo de segurança. Por
exemplo, para encontrar todos os grupos com uma tag que inclua a chave |
| Máximo de resultados | Inteiro | 50 | Falso | O número de grupos de segurança que serão retornados. O valor padrão é 50.
O valor máximo é 1000.
Observação: os parâmetros "IDs do grupo de segurança" e "Nomes do grupo de segurança" não podem ser usados com o parâmetro "Máximo de resultados". |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Resultado do JSON
"EC2_Security_Groups": [
{
"Description":"launch-wizard-2 created 2021-01-30T19:37:11.523+02:00",
"GroupName":"launch-wizard-2",
"IpPermissions":[
{
"FromPort":22,
"IpProtocol":"tcp",
"IpRanges":[
{
"CidrIp":"192.0.2.0/0"
}
],
"Ipv6Ranges":[
],
"PrefixListIds":[
],
"ToPort":22,
"UserIdGroupPairs":[
]
}
],
"OwnerId":"582302349248",
"GroupId":"sg-001700ccddac4189a",
"IpPermissionsEgress":[
{
"IpProtocol":"-1",
"IpRanges":[
{
"CidrIp":"192.0.2.0/0"
}
],
"Ipv6Ranges":[
],
"PrefixListIds":[
],
"UserIdGroupPairs":[
]
}
],
"Tags":[
{
"Key":"Team",
"Value":"A-Team"
},
{
"Key":"Owner",
"Value":"Example"
}
],
"VpcId":"vpc-ID"
}
]
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook:
A ação deve falhar e interromper a execução de um playbook: Se houver um erro fatal, ID/nome de grupo inválido, erro do SDK, como credenciais incorretas, sem conexão com o servidor, outro: "Erro ao executar a ação 'Listar grupos de segurança'. Motivo: {0}''.format(error.Stacktrace) |
Geral |
| Tabela do painel de casos | Nome da tabela: instâncias do Amazon EC2 Colunas da tabela: ID do grupo de segurança Nome do grupo de segurança ID da VPC Descrição ID do proprietário |
Ping
Teste a conectividade com o AWS EC2.
Parâmetros
N/A
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se der certo: "Conexão com o Amazon EC2 estabelecida com os parâmetros fornecidos!" A ação deve falhar e interromper a execução de um playbook: Se não for concluída: "Falha ao se conectar ao servidor do Amazon EC2! O erro é {0}".format(exception.stacktrace) |
Geral |
Revoke Security Group Egress
Remove as regras de saída especificadas de um grupo de segurança para EC2-VPC. Essa ação não se aplica a grupos de segurança para uso no EC2-Classic. Para remover uma regra, os valores especificados (por exemplo, portas) precisam corresponder exatamente aos valores da regra atual. As mudanças nas regras são propagadas para as instâncias no grupo de segurança o mais rápido possível. No entanto, pode ocorrer um pequeno atraso.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| IDs dos grupos de segurança | String | N/A | Sim | Um ou mais IDs de grupo de segurança. Separados por vírgula. Observação para o desenvolvedor: cada ID em uma solicitação separada |
| Protocolo IP | DDL | todas | Não | O nome do protocolo IP. Use "all" para especificar todos os protocolos. Especificar "all" permite o tráfego em todas as portas, independentemente do intervalo de portas especificado. Valores possíveis: tcp , udp , icmp, all Observação para o desenvolvedor: "all" é igual a -1 no código |
| Da porta | Inteiro | Não | O início do intervalo de portas para os protocolos TCP e UDP ou um número de tipo ICMP. | |
| Para fazer a portabilidade | Inteiro | Não | O fim do intervalo de portas para os protocolos TCP e UDP permite o tráfego em todas as portas, independentemente do intervalo de portas especificado. | |
| Intervalos de IP: CidrIP | String | N/A | Não | O endereço IPv4 no formato CIDR. Para especificar um único endereço IPv4, use o tamanho de prefixo /32. |
| Intervalos IPv6: CidrIP | String | N/A | Não | O intervalo CIDR IPv6. Para especificar um único endereço IPv6, use o tamanho de prefixo /128. |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se as regras de saída especificadas forem revogadas de pelo menos um (ou todos) os grupos de segurança (is_success = true): "As regras de saída especificadas foram revogadas dos seguintes grupos de segurança: {group_ids}" Se houver falha ao revogar as regras de saída especificadas devido a um erro de regra de permissões (porta inválida como 205 etc.): (is_success =false): "Falha ao revogar a regra de saída especificada dos seguintes grupos de segurança: {group_ids}. Motivo: conjunto de permissões de IP inválido. Para mais detalhes, verifique os registros." Se não for possível revogar as regras de saída especificadas devido a um ID de grupo de segurança inválido (is_success =false): "Falha ao revogar a regra de saída especificada dos seguintes grupos de segurança: {group_ids}. Motivo: o ID do grupo de segurança fornecido é inválido. Para mais detalhes, verifique os registros.`` A ação deve falhar e interromper a execução de um playbook: Se houver um erro fatal, um erro do SDK, como credenciais incorretas, falta de conexão com o servidor, entre outros: "Erro ao executar a ação 'Revogar saída do grupo de segurança'. Motivo: {0}''.format(error.Stacktrace) |
Gener |
Revogar entrada do grupo de segurança
Remove as regras de entrada especificadas de um grupo de segurança. Para remover uma regra, os valores especificados (por exemplo, portas) precisam corresponder exatamente aos valores da regra atual. As mudanças nas regras são propagadas para as instâncias no grupo de segurança o mais rápido possível. No entanto, pode haver um pequeno atraso.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| IDs dos grupos de segurança | String | N/A | Sim | Um ou mais IDs de grupo de segurança. Separados por vírgula. Observação para o desenvolvedor: cada ID em uma solicitação separada |
| Protocolo IP | DDL | todas | Não | O nome do protocolo IP. Use "all" para especificar todos os protocolos. Especificar "all" permite o tráfego em todas as portas, independentemente do intervalo de portas especificado. Valores possíveis: tcp , udp , icmp, all Observação para o desenvolvedor: "all" é igual a -1 no código |
| Da porta | Inteiro | Não | O início do intervalo de portas para os protocolos TCP e UDP ou um número de tipo ICMP. | |
| Para fazer a portabilidade | Inteiro | Não | O fim do intervalo de portas para os protocolos TCP e UDP permite o tráfego em todas as portas, independentemente do intervalo de portas especificado. | |
| Intervalos de IP: CidrIP | String | N/A | Não | O endereço IPv4 no formato CIDR. Para especificar um único endereço IPv4, use o tamanho de prefixo /32. |
| Intervalos IPv6: CidrIP | String | N/A | Não | O intervalo CIDR IPv6. Para especificar um único endereço IPv6, use o tamanho de prefixo /128. |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se as regras de entrada especificadas forem revogadas com sucesso para pelo menos um (ou todos) os grupos de segurança: (is_success = true): "Successfully revoked the specified ingress rule from the following security groups: {group_ids}" Se houver falha ao revogar as regras de entrada especificadas devido a um erro de regra de permissões (porta inválida como 205 etc.): (is_success =false): "Falha ao revogar a regra de entrada especificada dos seguintes grupos de segurança: {group_ids}. Motivo: conjunto de permissões de IP inválido. Para mais detalhes, verifique os registros." Se houver falha ao revogar as regras de entrada especificadas devido a um ID de grupo de segurança inválido (is_success =false): "Falha ao revogar a regra de entrada especificada dos seguintes grupos de segurança: {group_ids}. Motivo: o ID do grupo de segurança fornecido é inválido. Para mais detalhes, verifique os registros.`` A ação deve falhar e interromper a execução de um playbook: Se houver um erro fatal, um erro do SDK, como credenciais incorretas, falta de conexão com o servidor, entre outros: "Erro ao executar a ação 'Revogar entrada do grupo de segurança'. Motivo: {0}''.format(error.Stacktrace) |
Geral |
Iniciar instância
Inicia uma instância do Amazon Elastic Block Store (Amazon EBS) que você interrompeu anteriormente. Pode levar alguns minutos para que a instância entre no estado de execução. Não é possível iniciar uma instância com armazenamento de instâncias. Para mais informações sobre instâncias com armazenamento de instâncias, consulte Armazenamento para o dispositivo raiz.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| IDs de instância | String | N/A | Sim | Um ou mais IDs de instância. Separados por vírgula |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Resultado do JSON
[
{
"CurrentState": "pending",
"InstanceId": "string",
"PreviousState":"stopped"
}
]
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook:
A ação deve falhar e interromper a execução de um playbook: Se houver um erro fatal, um erro do SDK, como credenciais incorretas, nenhuma conexão com o servidor, entre outros: "Erro ao executar a ação 'Iniciar instância'. Motivo: {0}''.format(error.Stacktrace) |
Geral |
Interromper instância
Interrompe uma instância com suporte do Amazon EBS. Quando você interrompe uma instância, o sistema tenta encerrá-la à força após um curto período. A interrupção da instância pode levar alguns minutos. É possível reiniciar a instância a qualquer momento. Não é possível interromper uma instância com armazenamento de instâncias. É preciso encerrá-la. Para mais informações sobre instâncias com armazenamento de instâncias, consulte https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| IDs de instância | String | N/A | Sim | Uma lista separada por vírgulas de IDs de instância. |
| Força | Booleano | N/A | Não | Se selecionada, a ação realiza um desligamento forçado (hard), interrompendo imediatamente a instância sem permitir que ela limpe os caches ou metadados do sistema de arquivos.
Esse processo exige procedimentos obrigatórios de verificação e reparo do sistema de arquivos antes
que a instância possa retomar a operação. Não recomendado para instâncias do Windows.
Não ativado por padrão. |
Corrida
Essa ação não é executada em entidades.
Criar instantâneo
Tire um snapshot da instância.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| ID da instância | String | N/A | Sim | Especifique o ID da instância. |
| Descrição | String | N/A | Não | Especifique a descrição do snapshot. |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Resultado do JSON
{
"EC2_Snapshot": [
{
"Description": "",
"Tags": [],
"Encrypted": false,
"VolumeId": "vol-ID",
"State": "pending",
"VolumeSize": 8,
"StartTime": "2022-11-13 15:45:44.795000+00:00",
"Progress": "",
"OwnerId": "OWNER_ID",
"SnapshotId": "snap-ID"
}
]
}
Encerrar instância
Encerra uma instância.
Não é possível reiniciar instâncias encerradas. Somente as instâncias com armazenamento de instâncias podem ser encerradas. Para mais informações sobre instâncias com armazenamento de instâncias, consulte Armazenamento para o dispositivo raiz.
Se você encerrar uma instância mais de uma vez, todas as chamadas serão bem-sucedidas. Se você especificar várias instâncias e a solicitação falhar (por exemplo, devido a um único ID de instância incorreto), nenhuma das instâncias será encerrada.
As instâncias encerradas permanecem visíveis após o encerramento (por aproximadamente uma hora). Por padrão, o Amazon EC2 exclui todos os volumes do EBS que foram anexados quando a instância foi iniciada. Os volumes anexados após o lançamento da instância continuam em execução. Para mais informações, consulte o guia do usuário da Amazon.
Parâmetros
| Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| IDs de instância | String | N/A | Sim | Um ou mais IDs de instância. Separados por vírgula. |
Corrida
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Resultado do JSON
"StoppingInstances": [
{
"CurrentState": "shutting-down",
"InstanceId": "string",
"PreviousState":"running"
}
]
Painel de casos
| Tipo de resultado | Valor / Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook:
A ação deve falhar e interromper a execução de um playbook: Se houver um erro fatal, um erro do SDK, como credenciais incorretas, falta de conexão com o servidor, entre outros: "Erro ao executar a ação 'Encerrar instância'. Motivo: {0}''.format(error.Stacktrace) |
Geral |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.