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 () e Samuel Ortega Sancho () AWS AWS
Ambiente: PoC ou piloto | Tecnologias: segurança, identidade, conformidade; rede; entrega de conteúdo | AWSserviços: AWS Organizations; AWS Identity and Access Management |
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 resultar no alcance dos limites das cotas de AWS serviço. 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 NAT gateways nas sub-redes públicas desses. VPCs O uso de balanceadores de carga e NAT gateways em sub-redes públicas dedicadas ajuda a implementar um controle refinado do tráfego de entrada e saída.
O controle de acesso baseado em atributos (ABAC) é a prática de criar permissões refinadas com base nos atributos do usuário, como departamento, função e nome da equipe. Para obter mais informações, consulte ABAC para AWS
Esse padrão descreve como ajudar a proteger sub-redes públicas implementando por ABAC meio de uma política de controle de serviço (SCP) em AWS Organizations e políticas em AWS Identity and Access Management (IAM). Você aplica o SCP a uma conta de membro de uma organização ou a uma unidade organizacional (OU). Essas ABAC políticas permitem que os usuários implantem NAT gateways nas sub-redes de destino e os impedem de implantar outros recursos do Amazon Elastic Compute Cloud (EC2Amazon), EC2 como instâncias e interfaces de rede elástica.
Pré-requisitos e limitações
Pré-requisitos
Uma organização em 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
SCPNesta solução, não impede que AWS serviços que usam uma função 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 (AmazonECS) e Amazon Relational Database Service (Amazon). RDS Para obter mais informações, consulte SCPos efeitos nas permissões na documentação do AWS Organizations. Implemente controles de segurança para detectar essas exceções.
Arquitetura
Pilha de tecnologias de destino
SCPaplicado a uma AWS conta ou OU em AWS Organizations
As seguintes IAM funções:
AutomationAdminRole
— Usado para modificar tags de sub-rede e criar VPC recursos após a implementação do SCPTestAdminRole
— Usado para testar se SCP está impedindo que outros IAM diretores, incluindo aqueles com acesso administrativo, realizem as ações reservadas para oAutomationAdminRole
Arquitetura de destino
Você cria a
AutomationAdminRole
IAM função 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.
Em AWS Organizations, você aplica o SCP à AWS conta de destino ou UO. 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 outras IAM funções, IAM os diretores autorizados em sua organização podem gerenciar NAT gateways nas sub-redes de destino e outros recursos de rede permitidos na AWS conta, como tabelas de rotas. Use IAM políticas para conceder essas permissões. Para obter mais informações, consulte Gerenciamento de identidade e acesso para a Amazon VPC.
Automação e escala
Para ajudar a proteger sub-redes públicas, as AWStags correspondentes devem ser aplicadas. Depois de aplicar oSCP, os NAT gateways 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.) SCPIsso 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 VPC recursos para que essas tags sejam aplicadas adequadamente às sub-redes públicas.
Ferramentas
AWSserviços
AWSO Identity and Access Management (IAM) ajuda você a gerenciar com segurança o acesso aos seus AWS recursos controlando quem está autenticado e autorizado a usá-los.
AWSOrganizations é um serviço de gerenciamento de contas que ajuda você a consolidar várias AWS contas em uma organização que você cria e gerencia centralmente. Em AWS Organizations, você pode implementar políticas de controle de serviço (SCPs), que são um tipo de política que você pode usar para gerenciar permissões em sua organização.
A Amazon Virtual Private Cloud (AmazonVPC) ajuda você a lançar AWS recursos em uma rede virtual que você definiu. Essa rede virtual se assemelha a uma rede tradicional que você operaria em seu próprio data center, com os benefícios de usar a infraestrutura escalável do. AWS
Épicos
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Crie um perfil de administrador de teste. | Crie uma IAM função nomeada | AWSadministrador |
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
| AWSadministrador |
Crie e anexe SCP o. |
| AWSadministrador |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Crie uma sub-rede VPC or. |
| AWSadministrador |
Gerenciar tags. |
| AWSadministrador |
Implante recursos nas sub-redes de destino. |
| AWSadministrador |
Gerencie a AutomationAdminRole função. |
| AWSadministrador |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Limpe os recursos implantados. |
| AWSadministrador |
Recursos relacionados
AWSdocumentação
AWSReferências adicionais
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": "*" } ] }