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á.
Opção 2: Os aplicativos podem assumir somente a função permitida pela política de confiança
Nesse cenário, dois certificados foram provisionados no AWS Certificate Manager (ACM) Autoridade de Certificação Privada da AWS e compartilhados com os aplicativos que exigem acesso aos recursos. AWS O Aplicativo 1 pode assumir somente a Função 1, e o Aplicativo 2 pode assumir somente a Função 2. Na política de confiança da função, você configura os campos de assunto do certificado como condições. Essas condições permitem que o aplicativo assuma somente uma função específica. Por causa das permissões de função, somente o Aplicativo 1 pode acessar o Bucket 1, e somente o Aplicativo 2 pode acessar o Bucket 2. A imagem a seguir mostra o acesso que cada aplicativo tem.
Nessa opção, você configura as políticas de confiança para permitir AssumeRole somente quando atributos específicos do certificado forem atendidos. O exemplo de política de confiança da função demonstra como configurar a Condition seção para exigir um nome comum de certificado específico (CN), que é diferente para a Função 1 e a Função 2. Cada aplicativo pode assumir uma função específica porque IAM Roles Anywhere tem uma relação âncora de confiança com CA Privada da AWS. Essa abordagem ajuda a impedir o acesso não autorizado a funções e dados porque o aplicativo não pode assumir nenhuma função vinculada ao perfil de destino. Por exemplo, você pode segregar dados comerciais em diferentes compartimentos, configurar funções para permitir acesso a somente um desses compartimentos e, em seguida, usar controles de acesso baseados em certificados na política de confiança para definir qual função o aplicativo pode assumir.
O exemplo de política de confiança a seguir para a Função 1 tem uma condição que permite a suposição da função somente se o nome do certificado for application-1.com e se a âncora confiável Amazon Resource Name (ARN) corresponder:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity", "sts:TagSession" ], "Condition": { "StringEquals": { "aws:PrincipalTag/x509Subject/CN": "application-1.com" }, "ArnEquals": { "aws:SourceArn": [ "arn:aws:rolesanywhere:<region>:<account-ID>:trust-anchor/<TA_ID>" ] } } } ] }
O exemplo de política de confiança a seguir para a Função 2 tem uma condição que permite a suposição da função somente se o nome do certificado for application-2.com e se o ARN da âncora de confiança corresponder:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity", "sts:TagSession" ], "Condition": { "StringEquals": { "aws:PrincipalTag/x509Subject/CN": "application-2.com" }, "ArnEquals": { "aws:SourceArn": [ "arn:aws:rolesanywhere:<region>:<account-ID>:trust-anchor/<TA_ID>" ] } } } ] }
Para obter mais informações sobre políticas de confiança de funções e como você pode modificar esses exemplos, consulte Política de confiança na IAM Roles Anywhere documentação.
Exemplos de políticas de função e perfil para o Aplicativo 1 e o Aplicativo 2 estão incluídos na seção Apêndice: Exemplo de perfil e políticas de função deste guia.