Declarações básicas da chave KMS e da política do IAM - AWS IAM Identity Center

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

Declarações básicas da chave KMS e da política do IAM

A chave básica do KMS e as políticas baseadas em identidade fornecidas aqui servem como base para requisitos comuns. Também recomendamos que você revise se fornece controles de acesso mais granulares, como garantir Declarações de política chave avançadas do KMS que a chave KMS seja acessível somente para uma instância específica do IAM Identity Center ou aplicativo AWS gerenciado. Antes de usar declarações avançadas de política de chaves do KMS, revise o. Considerações sobre a escolha das principais declarações de política do KMS em comparação com as avançadas

As seções a seguir fornecem declarações de políticas básicas para cada caso de uso. Copie as declarações de política de chaves do KMS que correspondam aos seus casos de uso e, em seguida, retorne paraEtapa 2: Preparar as principais declarações de política do KMS.

Declarações básicas da política principal do KMS para uso do IAM Identity Center (obrigatório)

Use o seguinte modelo de declaração de política de chaves do KMS Etapa 2: Preparar as principais declarações de política do KMS para permitir que os administradores do IAM Identity Center, do Identity Store associado e do IAM Identity Center usem a chave KMS.

  • No elemento Principal das declarações de política do administrador, especifique os diretores das contas de administração do IAM Identity Center, que são a AWS conta de gerenciamento da AWS organização e a conta de administração delegada, usando o formato “arn:aws:iam: :111122223333:root”.

  • No PrincipalArn elemento, substitua o exemplo pelas ARNs funções do IAM dos administradores do IAM Identity Center.

    Você pode especificar:

    • ARN da função específica do IAM:

      "arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/ap-southeast-2/AWSReservedSSO_permsetname_12345678"

    • Padrão curinga (recomendado):

      "arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/ap-southeast-2/AWSReservedSSO_permsetname_*"

    O uso do curinga (*) evita a perda de acesso se o conjunto de permissões for excluído e recriado, pois o Identity Center gera novos identificadores exclusivos para conjuntos de permissões recriados. Para ver um exemplo de implementação, consulteExemplos de políticas personalizadas.

  • No SourceAccount elemento, especifique o ID da conta do IAM Identity Center.

  • O Identity Store tem seu próprio diretor de serviçoidentitystore.amazonaws.com, que deve ter permissão para usar a chave KMS.

  • Essas declarações de política permitem que suas instâncias do IAM Identity Center em uma AWS conta específica usem a chave KMS. Para restringir o acesso a uma instância específica do IAM Identity Center, consulteDeclarações de política chave avançadas do KMS. Você pode ter somente uma instância do IAM Identity Center para cada AWS conta.

Declarações de política chave do KMS

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowIAMIdentityCenterAdminToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root", "arn:aws:iam::444455556666:root" ] }, "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "ArnLike": { "aws:PrincipalArn": [ "arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/us-east-1/AWSReservedSSO_AdminPermissionSet_*", "arn:aws:iam::444455556666:role/aws-reserved/sso.amazonaws.com/us-east-1/AWSReservedSSO_DelegatedAdminSet_*" ] }, "StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "*", "kms:ViaService": "sso.*.amazonaws.com" } } }, { "Sid": "AllowIAMIdentityCenterAdminToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root", "arn:aws:iam::444455556666:root" ] }, "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "ArnLike": { "aws:PrincipalArn": [ "arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/us-east-1/AWSReservedSSO_AdminPermissionSet_*", "arn:aws:iam::444455556666:role/aws-reserved/sso.amazonaws.com/us-east-1/AWSReservedSSO_DelegatedAdminSet_*" ] }, "StringLike": { "kms:EncryptionContext:aws:identitystore:identitystore-arn": "*", "kms:ViaService": "identitystore.*.amazonaws.com" } } }, { "Sid": "AllowIAMIdentityCenterAdminToDescribeTheKMSKey", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root", "arn:aws:iam::444455556666:root" ] }, "Action": "kms:DescribeKey", "Resource": "*", "Condition": { "ArnLike": { "aws:PrincipalArn": [ "arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/us-east-1/AWSReservedSSO_AdminPermissionSet_*", "arn:aws:iam::444455556666:role/aws-reserved/sso.amazonaws.com/us-east-1/AWSReservedSSO_DelegatedAdminSet_*" ] } } }, { "Sid": "AllowIAMIdentityCenterToUseTheKMSKey", "Effect": "Allow", "Principal": { "Service": "sso.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "*" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } }, { "Sid": "AllowIAMIdentityStoreToUseTheKMSKey", "Effect": "Allow", "Principal": { "Service": "identitystore.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:identitystore:identitystore-arn": "*" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } }, { "Sid": "AllowIAMIdentityCenterAndIdentityStoreToDescribeKMSKey", "Effect": "Allow", "Principal": { "Service": [ "identitystore.amazonaws.com", "sso.amazonaws.com" ] }, "Action": "kms:DescribeKey", "Resource": "*" } ] }

Use o seguinte modelo de declaração de política do IAM Etapa 4: configurar as políticas do IAM para o uso entre contas da chave KMS para permitir que os administradores do IAM Identity Center usem a chave KMS.

  • Substitua o exemplo da chave ARN no Resource elemento pelo ARN real da chave KMS. Para obter ajuda para encontrar os valores dos identificadores referenciados, consulte. Encontre os identificadores necessários

  • Essas declarações de política do IAM concedem acesso à chave KMS ao principal do IAM, mas não restringem qual AWS serviço pode fazer a solicitação. A política de chaves do KMS normalmente fornece essas restrições de serviço. No entanto, você pode adicionar contexto de criptografia a essa política do IAM para limitar o uso a uma instância específica do Identity Center. Para obter detalhes, consulte Declarações de política chave avançadas do KMS.

Declarações de política do IAM obrigatórias para administradores delegados do IAM Identity Center

{ "Version": "2012-10-17", "Statement": [{ "Sid": "IAMPolicyToAllowIAMIdentityCenterAdminToUseKMSkey", "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKeyWithoutPlaintext", "kms:DescribeKey" ], "Resource": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, { "Sid": "IAMPolicyToAllowIAMIdentityCenterAdminToListKeyAliases", "Effect": "Allow", "Action": "kms:ListAliases", "Resource": "*" } ] }

Chave básica do KMS e declarações de política do IAM para uso de AWS aplicativos gerenciados

nota

Alguns aplicativos AWS gerenciados não podem ser usados com o IAM Identity Center configurado com uma chave KMS gerenciada pelo cliente. Para obter mais informações, consulte Aplicativos AWS gerenciados que funcionam com o IAM Identity Center.

Use o seguinte modelo de declaração de política de chaves do KMS Etapa 2: Preparar as principais declarações de política do KMS para permitir que os aplicativos AWS gerenciados e seus administradores usem a chave KMS.

Declarações de política chave do KMS

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAppAdminsInTheSameOrganizationToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": "*", "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-a1b2c3d4e5" }, "StringLike": { "kms:ViaService": "sso.*.amazonaws.com", "kms:EncryptionContext:aws:sso:instance-arn": "*" } } }, { "Sid": "AllowAppAdminsInTheSameOrganizationToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": "*", "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-a1b2c3d4e5" }, "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "*" } } }, { "Sid": "AllowManagedAppsToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": "*", "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "sso.*.amazonaws.com", "kms:EncryptionContext:aws:sso:instance-arn": "*" }, "Bool": { "aws:PrincipalIsAWSService": "true" }, "StringEquals": { "aws:SourceOrgID": "o-a1b2c3d4e5" } } }, { "Sid": "AllowManagedAppsToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": "*", "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "*" }, "Bool": { "aws:PrincipalIsAWSService": "true" }, "StringEquals": { "aws:SourceOrgID": "o-a1b2c3d4e5" } } } ] }

Use o seguinte modelo de declaração de política do IAM Etapa 4: configurar as políticas do IAM para o uso entre contas da chave KMS para permitir que administradores de aplicativos AWS gerenciados usem a chave KMS de uma conta membro.

  • Substitua o ARN de exemplo no elemento Resource pelo ARN real da chave KMS. Para obter ajuda para encontrar os valores dos identificadores referenciados, consulte. Encontre os identificadores necessários

  • Alguns aplicativos AWS gerenciados exigem que você configure permissões para o serviço IAM Identity Center APIs. Antes de configurar uma chave gerenciada pelo cliente no IAM Identity Center, verifique se essas permissões também permitem o uso da chave KMS. Para requisitos específicos de permissão da chave KMS, consulte a documentação de cada aplicativo AWS gerenciado que você implantou.

Declarações de política do IAM necessárias para administradores de aplicativos AWS gerenciados:

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowIAMIdentityCenterAdminToUseTheKMSKeyViaIdentityCenterAndIdentityStore", "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "Condition": { "StringLike": { "kms:ViaService": [ "sso.*.amazonaws.com", "identitystore.*.amazonaws.com" ] } } }] }

Declaração chave básica do KMS para uso de AWS Control Tower

Use os seguintes modelos de declaração de chave KMS Etapa 2: Preparar as principais declarações de política do KMS para permitir que os administradores do AWS Control Tower usem a chave KMS.

  • No elemento Principal, especifique os principais do IAM usados para acessar o serviço APIs do IAM Identity Center. Para obter mais informações sobre os diretores do IAM, consulte Especificação de um diretor no Guia do usuário do IAM.

  • Essas declarações de política permitem que os administradores do AWS Control Tower usem a chave KMS por meio de qualquer uma das suas instâncias do IAM Identity Center. No entanto, AWS o Control Tower restringe o acesso à instância organizacional do IAM Identity Center na mesma AWS organização. Por causa dessa restrição, não há nenhum benefício prático em restringir ainda mais a chave KMS a uma instância específica do IAM Identity Center, conforme descrito em. Declarações de política chave avançadas do KMS

  • Para ajudar a se proteger contra alterações no nome da função do IAM quando os conjuntos de permissões são recriados, use a abordagem descrita noExemplos de políticas personalizadas.

Declaração de política de chaves do KMS:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowControlTowerAdminRoleToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/AWSControlTowerExecution" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "*", "kms:ViaService": "sso.*.amazonaws.com" } } }, { "Sid": "AllowControlTowerAdminRoleToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/AWSControlTowerExecution" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "*" } } } ] }

AWS Control Tower não oferece suporte à administração delegada e, portanto, você não precisa configurar uma política do IAM para seus administradores.

Chave básica do KMS e declarações de política do IAM para uso do IAM Identity Center em instâncias Windows do Amazon Elastic Compute Cloud

Use o seguinte modelo de declaração de política de chaves do KMS Etapa 2: Preparar as principais declarações de política do KMS para permitir que os usuários de login único (SSO) nas instâncias EC2 do Amazon Windows usem a chave KMS em todas as contas.

  • Especifique os principais do IAM usados para acessar o IAM Identity Center no campo Principal. Para obter mais informações sobre os diretores do IAM, consulte Especificação de um diretor no Guia do usuário do IAM.

  • Essa declaração de política permite que qualquer uma das suas instâncias do IAM Identity Center use a chave KMS. Para restringir o acesso a uma instância específica do IAM Identity Center, consulteDeclarações de política chave avançadas do KMS.

  • Para ajudar a se proteger contra alterações no nome da função do IAM quando os conjuntos de permissões são recriados, use a abordagem descrita no exemplo de política de confiança personalizada.

Declaração de política de chaves do KMS

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowIAMIdentityCenterPermissionSetRoleToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/us-east-1/AWSReservedSSO_MyPermissionSet_1a2b3c4d5e6f7g8h" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "*", "kms:ViaService": "sso.*.amazonaws.com" } } }, { "Sid": "AllowIAMIdentityCenterPermissionSetRoleToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/us-east-1/AWSReservedSSO_MyPermissionSet_1a2b3c4d5e6f7g8h" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "*" } } } ] }

Use o seguinte modelo de declaração de política do IAM Etapa 4: configurar as políticas do IAM para o uso entre contas da chave KMS para permitir que o SSO para instâncias EC2 do Windows usem a chave KMS.

Anexe a declaração de política do IAM ao conjunto de permissões existente no IAM Identity Center que você está usando para permitir o acesso por SSO às instâncias EC2 do Amazon Windows. Para exemplos de políticas do IAM, consulte Conexões do protocolo de desktop remoto no Guia do usuário do AWS Systems Manager.

  • Substitua o ARN de exemplo no elemento Resource pelo ARN real da chave KMS. Para obter ajuda para encontrar os valores dos identificadores referenciados, consulte. Encontre os identificadores necessários

Política do IAM definida de permissões:

{ "Version": "2012-10-17", "Statement": [{ "Sid": "IAMPolicyToAllowKMSKeyUseViaIdentityCenterAndIdentityStore", "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "Condition": { "StringLike": { "kms:ViaService": [ "sso.*.amazonaws.com", "identitystore.*.amazonaws.com" ] } } }] }

Chave básica do KMS e declarações de política do IAM para uso de fluxos de trabalho personalizados com o IAM Identity Center

Use os seguintes modelos de declaração de política de chaves do KMS Etapa 2: Preparar as principais declarações de política do KMS para permitir que fluxos de trabalho personalizados, como aplicativos gerenciados pelo cliente, na conta de AWS Organizations gerenciamento ou na conta de administração delegada usem a chave KMS.

  • No elemento Principal, especifique os principais do IAM usados para acessar o serviço APIs do IAM Identity Center. Para obter mais informações sobre os diretores do IAM, consulte Especificação de um diretor no Guia do usuário do IAM.

  • Essas declarações de política permitem que seu fluxo de trabalho use a chave KMS por meio de qualquer uma das instâncias do IAM Identity Center. Para restringir o acesso a uma instância específica do IAM Identity Center, consulteDeclarações de política chave avançadas do KMS.

  • Para ajudar a se proteger contra alterações no nome da função do IAM quando os conjuntos de permissões são recriados, use a abordagem descrita noExemplos de políticas personalizadas.

Declaração de política de chaves do KMS:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCustomWorkflowToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/MyCustomWorkflowRole" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "*", "kms:ViaService": "sso.*.amazonaws.com" } } }, { "Sid": "AllowCustomWorkflowToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/MyCustomWorkflowRole" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "*" } } } ] }

Use o seguinte modelo de declaração de política do IAM Etapa 4: configurar as políticas do IAM para o uso entre contas da chave KMS para permitir que o diretor do IAM associado ao fluxo de trabalho personalizado use a chave KMS em todas as contas. Adicione a declaração de política do IAM ao diretor do IAM.

  • Substitua o ARN de exemplo no elemento Resource pelo ARN real da chave KMS. Para obter ajuda para encontrar os valores dos identificadores referenciados, consulte. Encontre os identificadores necessários

Declaração de política do IAM (necessária somente para uso entre contas):

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowCustomWorkflowToUseTheKMSKeyViaIdentityCenterAndIdentityStore", "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "Condition": { "StringLike": { "kms:ViaService": [ "sso.*.amazonaws.com", "identitystore.*.amazonaws.com" ] } } }] }