Referência de permissões para AWS Secrets Manager - AWS Secrets Manager

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

Referência de permissões para AWS Secrets Manager

Para ver os elementos que compõem uma política de permissões, consulte Estrutura de documento de política JSON e Referência de elementos de política JSON do IAM.

Para começar a escrever sua própria política de permissões, consulte Exemplos de políticas de permissões para AWS Secrets Manager.

A coluna Tipos de recursos na tabela Ações indica se cada ação é compatível com permissões no nível do recurso. Se não houver valor para essa coluna, você deverá especificar todos os recursos ("*") aos quais a política se aplica no elemento Resource de sua declaração de política. Se a coluna incluir um tipo de recurso, você poderá especificar um ARN desse tipo em uma instrução com essa ação. Se a ação tiver um ou mais recursos necessários, o chamador deverá ter permissão para usar a ação com esses recursos. Os recursos obrigatórios são indicados na tabela com um asterisco (*). Se você limitar o acesso aos recursos com o elemento Resource em uma política do IAM, deverá incluir um ARN ou padrão para cada tipo de recurso necessário. Algumas ações oferecem suporte a vários tipos de recursos. Se o tipo de recurso for opcional (não indicado como obrigatório), você poderá optar por usar um dos tipos de recurso opcionais.

A coluna Chaves de condição na tabela Ações inclui chaves que você pode especificar em um elemento Condition da declaração de política. Para obter mais informações sobre as chaves de condição associadas aos recursos do serviço, consulte a coluna Chaves de condição da tabela Tipos de recursos.

Ações do Secrets Manager

Ações Descrição Nível de acesso Tipos de recursos (*necessários) Chaves de condição Ações dependentes
BatchGetSecretValue Concede permissão para recuperar e descriptografar uma lista de segredos Listar
CancelRotateSecret Concede permissão para cancelar uma alternância do segredo em andamento Escrever

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

CreateSecret Concede permissão para criar um segredo que armazena dados criptografados que podem ser consultados e roteados Escrever

Secret*

secretsmanager:Name

secretsmanager:Description

secretsmanager:KmsKeyId

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

secretsmanager:ResourceTag/tag-key

secretsmanager:AddReplicaRegions

secretsmanager:ForceOverwriteReplicaSecret

DeleteResourcePolicy Concede permissão para excluir a política de recursos anexada a um segredo Gerenciamento de permissões

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

DeleteSecret Concede permissão para excluir um segredo Escrever

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:RecoveryWindowInDays

secretsmanager:ForceDeleteWithoutRecovery

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

DescribeSecret Concede permissão para recuperar os metadados sobre um segredo, mas não os dados criptografados Leitura

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

GetRandomPassword Concede permissão para gerar uma string aleatória para uso na criação de senha Leitura
GetResourcePolicy Concede permissão para obter a política de recursos anexada a um segredo Leitura

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

GetSecretValue Concede permissão para recuperar e descriptografar os dados criptografados Leitura

Secret*

secretsmanager:SecretId

secretsmanager:VersionId

secretsmanager:VersionStage

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ListSecretVersionIds Concede permissão para listar as versões disponíveis de um segredo Leitura

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ListSecrets Concede permissão para listar os segredos disponíveis Listar
PutResourcePolicy Concede permissão para anexar uma política de recursos a um segredo Gerenciamento de permissões

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:BlockPublicPolicy

secretsmanager:SecretPrimaryRegion

PutSecretValue Concede permissão para criar uma nova versão do segredo com novos dados criptografados Escrever

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

RemoveRegionsFromReplication Concede permissão para remover regiões da replicação Escrever

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ReplicateSecretToRegions Concede permissão para converter um segredo existente em um segredo multirregional e começar a replicar o segredo em uma lista de novas regiões Escrever

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

secretsmanager:AddReplicaRegions

secretsmanager:ForceOverwriteReplicaSecret

RestoreSecret Concede permissão para cancelar a exclusão de um segredo Escrever

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

RotateSecret Concede permissão para iniciar a alternância de um segredo Escrever

Secret*

secretsmanager:SecretId

secretsmanager:RotationLambdaARN

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

secretsmanager:ModifyRotationRules

secretsmanager:RotateImmediately

StopReplicationToReplica Concede permissão para remover o segredo da replicação e promove o segredo para um segredo regional na Região da réplica Escrever

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

TagResource Concede permissão para adicionar etiquetas a um segredo Tags

Secret*

secretsmanager:SecretId

aws:RequestTag/${TagKey}

aws:TagKeys

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

UntagResource Concede permissão para remover etiquetas de uma segredo Tags

Secret*

secretsmanager:SecretId

aws:TagKeys

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

UpdateSecret Concede permissão para atualizar um segredo com novos metadados ou com uma nova versão dos dados criptografados Escrever

Secret*

secretsmanager:SecretId

secretsmanager:Description

secretsmanager:KmsKeyId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

UpdateSecretVersionStage Concede permissão para mover um estágio de um segredo para outro Escrever

Secret*

secretsmanager:SecretId

secretsmanager:VersionStage

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ValidateResourcePolicy Concede permissão para validar uma política de recursos antes de anexar uma política Gerenciamento de permissões

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

Recursos do Secrets Manager

Tipos de recursos ARN Chaves de condição
Secret arn:${Partition}:secretsmanager:${Region}:${Account}:secret:${SecretId}

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

secretsmanager:ResourceTag/tag-key

secretsmanager:resource/AllowRotationLambdaArn

O Secrets Manager cria a última parte do ARN do segredo acrescentando um hífen e seis caracteres alfanuméricos aleatórios ao final do nome do segredo. Se você excluir um segredo e recriar outro com o mesmo nome, essa formatação ajudará a garantir que as pessoas com permissões para o segredo original não tenham acesso automaticamente ao novo segredo, pois o Secrets Manager gera seis novos caracteres aleatórios.

Você pode encontrar o ARN do segredo no console do Secrets Manager na página de detalhes do segredo ou chamando DescribeSecret.

Chaves de condição

Se você incluir alguma condição de string da tabela a seguir na sua política de permissões, os chamadores do Secrets Manager deverão transmitir o parâmetro correspondente ou o acesso será negado. Para evitar que os chamadores sejam negados em função de um parâmetro ausente, adicione IfExists ao final do nome do operador da condição, por exemplo StringLikeIfExists. Para obter mais informações, consulte Elementos da política JSON do IAM: operadores de condição.

Chaves de condição Descrição Tipo
aws:RequestTag/${TagKey} Filtra o acesso por uma chave que está presente na solicitação feita pelo usuário para o serviço Secrets Manager String
aws:ResourceTag/${TagKey} Filtra o acesso pelas etiquetas associadas ao recurso String
aws:TagKeys Filtra o acesso por uma lista de todos os nomes de chaves de etiquetas presentes na solicitação feita pelo usuário para o serviço Secrets Manager ArrayOfString
secretsmanager:AddReplicaRegions Filtra o acesso pela lista de Regiões nas quais replicar o segredo ArrayOfString
secretsmanager:BlockPublicPolicy Filtra o acesso de acordo com o fato de a política de recursos bloquear o Conta da AWS acesso amplo Bool
secretsmanager:Description Filtra o acesso pelo texto da descrição na solicitação String
secretsmanager:ForceDeleteWithoutRecovery Filtra o acesso pela necessidade do segredo ser excluído imediatamente sem uma janela de recuperação Bool
secretsmanager:ForceOverwriteReplicaSecret Filtra o acesso por sobrescrever um segredo com o mesmo nome na Região de destino Bool
secretsmanager:KmsKeyId Filtra o acesso pelo ARN da chave do KMS na solicitação String
secretsmanager:ModifyRotationRules Filtra o acesso de acordo com a necessidade de as regras de alternância do segredo serem modificadas Bool
secretsmanager:Name Filtra o acesso pelo nome amigável do segredo na solicitação String
secretsmanager:RecoveryWindowInDays Filtra o acesso pelo número de dias que o Secrets Manager aguarda antes de excluir o segredo Numérico
secretsmanager:ResourceTag/tag-key Filtra o acesso por uma chave da etiqueta e par de valores String
secretsmanager:RotateImmediately Filtra o acesso pela necessidade do segredo ser girado imediatamente Bool
secretsmanager:RotationLambdaARN Filtra o acesso pelo ARN da função de alternância do Lambda na solicitação ARN
secretsmanager:SecretId Filtra o acesso pelo valor de SecretID na solicitação ARN
secretsmanager:SecretPrimaryRegion Filtra o acesso pela região primária na qual o segredo é criado String
secretsmanager:VersionId Filtra o acesso pelo identificador exclusivo da versão do segredo na solicitação String
secretsmanager:VersionStage Filtra o acesso pela lista de estágios de versão na solicitação String
secretsmanager:resource/AllowRotationLambdaArn Filtra o acesso pelo ARN da função de alternância do Lambda associada ao segredo ARN

Bloqueie o acesso aos segredos com a condição BlockPublicPolicy

Em políticas de identidade que permitem a ação PutResourcePolicy, recomendamos usar BlockPublicPolicy: true. Essa condição significa que os usuários só poderão anexar uma política de recursos a um segredo se a política não permitir acesso amplo.

O Secrets Manager usa o raciocínio automatizado Zelkova para analisar políticas de recursos para acesso amplo. Para obter mais informações sobre Zelkova, consulte Como AWS usa o raciocínio automatizado para ajudar você a obter segurança em grande escala no AWS Blog de Segurança.

O exemplo a seguir mostra como usar BlockPublicPolicy.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "secretsmanager:PutResourcePolicy", "Resource": "SecretId", "Condition": { "Bool": { "secretsmanager:BlockPublicPolicy": "true" } } } }

Condições de endereço IP

Tome cuidado ao especificar os operadores de condição do endereço IP ou a chave de condição aws:SourceIp em uma declaração de política que permite ou nega acesso ao Secrets Manager. Por exemplo, se você anexar uma política que restringe AWS ações às solicitações do intervalo de endereços IP da sua rede corporativa a um segredo, suas solicitações como usuário do IAM que invoca a solicitação da rede corporativa funcionarão conforme o esperado. No entanto, se você permitir que outros serviços acessem o segredo em seu nome, como ao ativar a rotação com uma função Lambda, essa função chamará as operações do Secrets Manager a partir de um espaço AWS de endereço interno. As solicitações afetadas pela política com o filtro de endereços IP falharão.

Além disso, a chave de condição aws:sourceIP é menos efetiva quando a solicitação se origina em um endpoint da Amazon VPC. Para restringir solicitações a um endpoint da VPC específico, use Condições do endpoint da VPC.

Condições do endpoint da VPC

Para conceder ou negar acesso a solicitações de uma determinada VPC ou de um endpoint da VPC, use aws:SourceVpc para limitar o acesso a solicitações da VPC especificada ou aws:SourceVpce para limitar o acesso a solicitações do endpoint da VPC especificado. Consulte Exemplo: Permissões e VPCs.

  • aws:SourceVpc limita o acesso a solicitações da VPC especificado.

  • aws:SourceVpce limita o acesso a solicitações do endpoint da VPC especificado.

Se você usar essas chaves de condição em uma declaração de política de recurso que permite ou nega o acesso a segredos do Secrets Manager, poderá inadvertidamente negar acesso a serviços que usam o Secrets Manager para acessar segredos em seu nome. Somente alguns AWS serviços podem ser executados com um endpoint em sua VPC. Se você restringir as solicitações de um segredo a uma VPC ou a um endpoint da VPC, poderão ocorrer falhas nas chamadas para o Secrets Manager de um serviço não configurado para o serviço.

Consulte Uso de um endpoint da VPC do AWS Secrets Manager.