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á.
Implemente controles de acesso preventivos baseados em atributos para sub-redes públicas
Criado por Joel Alfredo Nunez Gonzalez (AWS) e Samuel Ortega Sancho (AWS)
Resumo
Em arquiteturas de rede centralizadas, a inspeção e as nuvens privadas virtuais de borda (VPCs) concentram todo o tráfego de entrada e saída, como o tráfego de e para a Internet. No entanto, isso pode criar gargalos ou fazer com que os limites das Service Quotas da AWS sejam atingidos. A implantação da segurança de ponta da rede junto com as cargas de trabalho VPCs fornece uma escalabilidade sem precedentes em comparação com a abordagem centralizada mais comum. Isso é chamado de arquitetura de borda distribuída.
Embora a implantação de sub-redes públicas em contas de workload possa oferecer benefícios, ela também introduz novos riscos de segurança, pois aumenta a superfície de ataque. Recomendamos que você implante somente recursos do Elastic Load Balancing (ELB), como Application Load Balancers ou gateways NAT nas sub-redes públicas desses. VPCs O uso de balanceadores de carga e gateways NAT em sub-redes públicas dedicadas ajuda a implementar um controle refinado do tráfego de entrada e saída.
O controle de acesso por atributo (ABAC) é a prática de criar permissões minuciosas com base nos atributos do usuário, como departamento, cargo e nome da equipe. Para obter mais informações, consulte ABAC para a AWS
Esse padrão descreve como ajudar a proteger sub-redes públicas implementando o ABAC por meio de uma política de controle de serviços (SCP) no AWS Organizations e políticas no AWS Identity and Access Management (IAM). É possível aplicar o SCP a uma conta membro de uma organização ou a uma unidade organizacional (UO). Essas políticas ABAC permitem que os usuários implantem gateways NAT nas sub-redes de destino e os impeçam de implantar outros recursos do Amazon Elastic Compute Cloud (Amazon EC2), como instâncias e interfaces de rede elástica. EC2
Pré-requisitos e limitações
Pré-requisitos
Uma organização no AWS Organizations
Acesso administrativo à conta raiz do AWS Organizations
Na organização, uma conta de membro ativa ou OU para testar o SCP
Limitações
O SCP nessa solução não impede que os serviços da AWS que usam um perfil vinculada a serviços implantem recursos nas sub-redes de destino. Exemplos desses serviços são Elastic Load Balancing (ELB), Amazon Elastic Container Service (Amazon ECS) e Amazon Relational Database Service (Amazon RDS). Para obter mais informações, consulte Efeitos do SCP sobre permissões na documentação do AWS Organizations. Implemente controles de segurança para detectar essas exceções.
Arquitetura
Pilha de tecnologias de destino
SCP aplicado a uma conta da AWS ou OU no AWS Organizations
Os seguintes perfis do IAM:
AutomationAdminRole
: usado para modificar tags de sub-rede e criar recursos de VPC após a implementação do SCPTestAdminRole
: usado para testar se o SCP está impedindo que outras entidades principais do IAM, incluindo aqueles com acesso administrativo, executem as ações reservadas para oAutomationAdminRole
Arquitetura de destino

Você cria o perfil do IAM
AutomationAdminRole
na conta de destino. Esse perfil tem permissões para gerenciar recursos de rede. Observe as seguintes permissões que são exclusivas para esse perfil:Essa função pode criar VPCs e publicar sub-redes.
Esse perfil pode modificar as atribuições de tags para as sub-redes de destino.
Esse perfil pode gerenciar suas próprias permissões.
No AWS Organizations, você aplica o SCP à conta ou OU da AWS de destino. Para ver um exemplo de política, consulte Informações adicionais sobre esse padrão.
Um usuário ou uma ferramenta no pipeline de CI/CD pode assumir a função
AutomationAdminRole
de aplicar a tagSubnetType
às sub-redes de destino.Ao assumir outros perfis do IAM, os diretores autorizados do IAM em sua organização podem gerenciar gateways NAT nas sub-redes de destino e outros recursos de rede permitidos na conta da AWS, como tabelas de rotas. Você pode usar políticas do IAM para conceder permissões. Para obter mais informações, consulte Gerenciamento de identidade e acesso do Amazon VPC.
Automação e escala
Para ajudar a proteger as sub-redes públicas, as respectivas tags da AWS devem ser aplicadas. Depois de aplicar o SCP, os gateways NAT são o único tipo de EC2 recurso da Amazon que usuários autorizados podem criar em sub-redes que têm a tag. SubnetType:IFA
(IFA
significa ativos voltados para a Internet.) O SCP impede a criação de outros EC2 recursos da Amazon, como instâncias e interfaces de rede elásticas. Recomendamos que você use um pipeline de CI/CD que assuma a AutomationAdminRole
função de criar recursos de VPC para que essas tags sejam aplicadas adequadamente às sub-redes públicas.
Ferramentas
Serviços da AWS
O AWS Identity and Access Management (IAM) ajuda você a gerenciar com segurança o acesso aos seus recursos da AWS, controlando quem está autenticado e autorizado a usá-los.
O AWS Organizations é um serviço de gerenciamento de contas que ajuda você a consolidar várias contas AWS em uma organização que você cria e gerencia de maneira centralizada. No AWS Organizations, você pode implementar políticas de controle de serviços (SCPs), que são um tipo de política que você pode usar para gerenciar permissões na sua organização.
A Amazon Virtual Private Cloud (Amazon VPC) ajuda a iniciar recursos da AWS em uma rede virtual definida por você. Essa rede virtual é semelhante a uma rede tradicional que você operaria no próprio datacenter, com os benefícios de usar a infraestrutura escalável da AWS.
Épicos
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Crie um perfil de administrador de teste. | Na conta AWS de destino, crie um perfil do IAM chamado | Administrador da AWS |
Crie o perfil de administrador de automação. |
Veja a seguir um exemplo de política de confiança que você poderia usar para testar a função da conta
| Administrador da AWS |
Crie e anexe o SCP. |
| Administrador da AWS |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Crie uma VPC ou sub-rede. |
| Administrador da AWS |
Gerenciar tags. |
| Administrador da AWS |
Implante recursos nas sub-redes de destino. |
| Administrador da AWS |
Gerencie a AutomationAdminRole função. |
| Administrador da AWS |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Limpe os recursos implantados. |
| Administrador da AWS |
Recursos relacionados
Documentação da AWS
Referências adicionais AWS
Mais informações
A política de controle de serviço a seguir é um exemplo que você pode usar para testar essa abordagem em sua organização.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DenyVPCActions",
"Effect": "Deny",
"Action": [
"ec2:CreateVPC",
"ec2:CreateRoute",
"ec2:CreateSubnet",
"ec2:CreateInternetGateway",
"ec2:DeleteVPC",
"ec2:DeleteRoute",
"ec2:DeleteSubnet",
"ec2:DeleteInternetGateway"
],
"Resource": [
"arn:aws:ec2:*:*:*"
],
"Condition": {
"StringNotLike": {
"aws:PrincipalARN": ["arn:aws:iam::*:role/AutomationAdminRole"]
}
}
},
{
"Sid": "AllowNATGWOnIFASubnet",
"Effect": "Deny",
"NotAction": [
"ec2:CreateNatGateway",
"ec2:DeleteNatGateway"
],
"Resource": [
"arn:aws:ec2:*:*:subnet/*"
],
"Condition": {
"ForAnyValue:StringEqualsIfExists": {
"aws:ResourceTag/SubnetType": "IFA"
},
"StringNotLike": {
"aws:PrincipalARN": ["arn:aws:iam::*:role/AutomationAdminRole"]
}
}
},
{
"Sid": "DenyChangesToAdminRole",
"Effect": "Deny",
"NotAction": [
"iam:GetContextKeysForPrincipalPolicy",
"iam:GetRole",
"iam:GetRolePolicy",
"iam:ListAttachedRolePolicies",
"iam:ListInstanceProfilesForRole",
"iam:ListRolePolicies",
"iam:ListRoleTags"
],
"Resource": [
"arn:aws:iam::*:role/AutomationAdminRole"
],
"Condition": {
"StringNotLike": {
"aws:PrincipalARN": ["arn:aws:iam::*:role/AutomationAdminRole"]
}
}
},
{
"Sid": "allowbydefault",
"Effect": "Allow",
"Action": "*",
"Resource": "*"
}
]
}