Référence des autorisations pour AWS Secrets Manager - AWS Secrets Manager

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Référence des autorisations pour AWS Secrets Manager

Pour afficher les éléments qui composent une politique d'autorisations, consultez Structure d'un document de politique JSON et Informations de référence sur les éléments de politique IAM JSON.

Pour commencer à écrire votre propre politique d'autorisations, consultez Exemples de politiques d'autorisation pour AWS Secrets Manager.

La colonne Types de ressources indique si chaque action prend en charge les autorisations au niveau des ressources. S'il n'y a pas de valeur pour cette colonne, vous devez indiquer toutes les ressources (« * ») dans l'élément Resource de votre déclaration de politique. Si la colonne inclut un type de ressource, vous pouvez indiquer un ARN de ce type dans une déclaration avec cette action. Si l'action comporte une ou plusieurs ressources requises, l'appelant doit être autorisé à utiliser l'action avec ces ressources. Les ressources requises sont indiquées dans le tableau par un astérisque (*). Si vous limitez l'accès aux ressources avec l'Resourceélément dans une politique IAM, vous devez inclure un ARN ou un modèle pour chaque type de ressource requis. Certaines actions prennent en charge plusieurs types de ressources. Si le type de ressource est facultatif (non indiqué comme obligatoire), vous pouvez choisir d'utiliser l'un, mais pas l'autre.

La colonne Clés de condition inclut des clés que vous pouvez spécifier dans l'élément Condition d'une déclaration de politique. Pour plus d'informations sur les clés de condition associées aux ressources du service, consultez la colonne Clés de condition du tableau des types de ressources.

Action Secrets Manager

Actions Description Niveau d'accès Types de ressources (*obligatoire) Clés de condition Actions dépendantes
BatchGetSecretValue Octroie l'autorisation de récupérer et de déchiffrer une liste de secrets. Liste
CancelRotateSecret Accorde l'autorisation d'annuler une rotation secrète en cours Écrire

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

CreateSecret Accorde l'autorisation de créer un secret qui stocke les données chiffrées pouvant faire l'objet d'une interrogation et d'une rotation Écrire

Secret*

secretsmanager:Name

secretsmanager:Description

secretsmanager:KmsKeyId

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

secretsmanager:ResourceTag/tag-key

secretsmanager:AddReplicaRegions

secretsmanager:ForceOverwriteReplicaSecret

DeleteResourcePolicy Accorde l'autorisation de supprimer la politique de ressource attachée à un secret Gestion des autorisations

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

DeleteSecret Accorde l'autorisation de supprimer un secret Écrire

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:RecoveryWindowInDays

secretsmanager:ForceDeleteWithoutRecovery

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

DescribeSecret Accorde l'autorisation de récupérer les métadonnées relatives à un secret, mais pas les données chiffrées Lecture

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

GetRandomPassword Accorde l'autorisation de générer une chaîne aléatoire pouvant être utilisée pour créer un mot de passe Lecture
GetResourcePolicy Accorde l'autorisation d'obtenir la politique de ressource attachée à un secret Lecture

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

GetSecretValue Accorde l'autorisation de récupérer et de déchiffrer les données chiffrées Lecture

Secret*

secretsmanager:SecretId

secretsmanager:VersionId

secretsmanager:VersionStage

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ListSecretVersionIds Accorde l'autorisation de répertorier les versions disponibles d'un secret Lecture

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ListSecrets Accorde l'autorisation de répertorier les secrets disponibles Liste
PutResourcePolicy Accorde l'autorisation d'attacher une politique de ressource à un secret Gestion des autorisations

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:BlockPublicPolicy

secretsmanager:SecretPrimaryRegion

PutSecretValue Accorde l'autorisation de créer une version du secret avec de nouvelles données chiffrées Écrire

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

RemoveRegionsFromReplication Accorde l'autorisation de supprimer des régions de la réplication Écrire

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ReplicateSecretToRegions Permet de convertir un secret existant en secret multirégional et de commencer à répliquer le secret dans une liste de nouvelles régions Écrire

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

secretsmanager:AddReplicaRegions

secretsmanager:ForceOverwriteReplicaSecret

RestoreSecret Accorde l'autorisation d'annuler la suppression d'un secret Écrire

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

RotateSecret Accorde l'autorisation de lancer la rotation d'un secret Écrire

Secret*

secretsmanager:SecretId

secretsmanager:RotationLambdaARN

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

secretsmanager:ModifyRotationRules

secretsmanager:RotateImmediately

StopReplicationToReplica Accorde l'autorisation de supprimer le secret de la réplication et de promouvoir le secret en secret régional dans la région de réplique. Écrire

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

TagResource Accorde l'autorisation d'ajouter des identifications à un secret Identification

Secret*

secretsmanager:SecretId

aws:RequestTag/${TagKey}

aws:TagKeys

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

UntagResource Accorde l'autorisation de supprimer des identifications d'un secret Identification

Secret*

secretsmanager:SecretId

aws:TagKeys

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

UpdateSecret Accorde l'autorisation de mettre à jour un secret avec de nouvelles métadonnées ou une nouvelle version des données chiffrées Écrire

Secret*

secretsmanager:SecretId

secretsmanager:Description

secretsmanager:KmsKeyId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

UpdateSecretVersionStage Accorde l'autorisation de déplacer une étape d'un secret vers un autre Écrire

Secret*

secretsmanager:SecretId

secretsmanager:VersionStage

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ValidateResourcePolicy Accorde l'autorisation de valider une politique de ressources avant de joindre une politique Gestion des autorisations

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

Secrets Manager

Types de ressources ARN Clés de condition
Secret arn:${Partition}:secretsmanager:${Region}:${Account}:secret:${SecretId}

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

secretsmanager:ResourceTag/tag-key

secretsmanager:resource/AllowRotationLambdaArn

Secrets Manager construit la dernière partie de l'ARN secret en ajoutant un tiret et six caractères alphanumériques aléatoires à la fin du nom du secret. Si vous supprimez un secret, puis en recréez un autre portant le même nom, ce formatage permet de s'assurer que les personnes disposant d'autorisations pour le secret initial n'obtiennent pas automatiquement l'accès au nouveau secret, car Secrets Manager génère six nouveaux caractères aléatoires.

Vous pouvez trouver l'ARN de votre secret dans la console Secrets Manager sur la page de détails du secret sous ARN du secret ou en appelant DescribeSecret.

Clés de condition

Si vous incluez des conditions de chaîne du tableau suivant dans votre politique d'autorisations, les appelants de Secrets Manager doivent transmettre le paramètre correspondant, sans quoi l'accès leur est refusé. Pour éviter de refuser les appelants pour un paramètre manquant, ajoutez IfExists à la fin du nom de l'opérateur de condition, par exemple, StringLikeIfExists. Pour plus d'informations, consultez Éléments de politique JSON IAM : opérateurs de condition.

Clés de condition Description Type
aws:RequestTag/${TagKey} Filtre l'accès en fonction d'une clé qui est présente dans la demande envoyée par l'utilisateur au service Secrets Manager Chaîne
aws:ResourceTag/${TagKey} Filtre l'accès en fonction des identifications associées à la ressource Chaîne
aws:TagKeys Filtre l'accès en fonction de la liste de tous les noms de clé d'identification présents dans la demande envoyée par l'utilisateur au service Secrets Manager ArrayOfString
secretsmanager:AddReplicaRegions Filtre l'accès en fonction de la liste des régions dans lesquelles répliquer le secret ArrayOfString
secretsmanager:BlockPublicPolicy Filtre l'accès selon que la politique des ressources bloque ou non Compte AWS l'accès étendu Booléen
secretsmanager:Description Filtre l'accès en fonction du texte de description présent dans la demande Chaîne
secretsmanager:ForceDeleteWithoutRecovery Filtre l'accès selon que le secret doit être supprimé immédiatement ou non, sans aucune fenêtre de récupération Booléen
secretsmanager:ForceOverwriteReplicaSecret Filtre l'accès en fonction de l'écrasement d'un secret portant le même nom dans la région de destination Booléen
secretsmanager:KmsKeyId Filtre l'accès en fonction de l'ARN de la clé KMS présent dans la demande. Chaîne
secretsmanager:ModifyRotationRules Filtre l'accès en fonction de la modification des règles de rotation du secret Booléen
secretsmanager:Name Filtre l'accès en fonction du nom convivial du secret présent dans la demande Chaîne
secretsmanager:RecoveryWindowInDays Filtre l'accès en fonction du nombre de jours pendant lesquels Secrets Manager attend avant de pouvoir supprimer le secret Numérique
secretsmanager:ResourceTag/tag-key Filtre l'accès en fonction d'une paire de clé et de valeur d'identification Chaîne
secretsmanager:RotateImmediately Filtre l'accès en fonction de la rotation immédiate du secret Booléen
secretsmanager:RotationLambdaARN Filtre l'accès en fonction de l'ARN de la fonction Lambda de rotation présent dans la demande ARN
secretsmanager:SecretId Filtre l'accès en fonction de la valeur SecretID présente dans la demande ARN
secretsmanager:SecretPrimaryRegion Filtre l'accès en fonction de la région principale dans laquelle le secret est créé Chaîne
secretsmanager:VersionId Filtre l'accès en fonction de l'identifiant unique de la version du secret présent dans la demande Chaîne
secretsmanager:VersionStage Filtre l'accès en fonction de la liste des étapes de version présente dans la demande Chaîne
secretsmanager:resource/AllowRotationLambdaArn Filtre l'accès en fonction de l'ARN de la fonction Lambda de rotation associée au secret ARN

Bloquez l'accès étendu aux secrets avec la condition BlockPublicPolicy

Dans les politiques d'identité qui autorisent l'action PutResourcePolicy, nous vous recommandons d'utiliser BlockPublicPolicy: true. Cette condition signifie que les utilisateurs ne peuvent attacher une politique de ressource à un secret que si la politique n'autorise pas un accès étendu.

Secrets Manager utilise le raisonnement automatisé Zelkova pour analyser les politiques de ressources en vue d'un large accès. Pour plus d'informations sur Zelkova, consultez l'article Comment AWS utilise le raisonnement automatique pour vous aider à renforcer la sécurité à grande échelle sur le blog sur la AWS sécurité.

L'exemple suivant montre comment utiliser BlockPublicPolicy.

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

Conditions d'une adresse IP source

Cependant, soyez prudent lorsque vous indiquez les opérateurs de condition d'adresse IP ou la clé de condition aws:SourceIp dans cette déclaration de politique qui autorise ou refuse l'accès à Secrets Manager. Par exemple, si vous associez une politique qui restreint les AWS actions aux demandes provenant de la plage d'adresses IP de votre réseau d'entreprise à un secret, vos demandes en tant qu'utilisateur IAM invoquant la demande depuis le réseau d'entreprise fonctionnent comme prévu. Toutefois, si vous autorisez d'autres services à accéder au secret en votre nom, par exemple lorsque vous activez la rotation avec une fonction Lambda, cette fonction appelle les opérations du Secrets Manager depuis un espace d' AWS adressage interne. Les demandes affectées par la politique avec le filtre d'adresses IP échouent.

Par ailleurs, la clé de condition aws:sourceIP devient moins efficace lorsque la demande provient d'un point de terminaison d'un VPC Amazon. Pour restreindre les demandes à un point de terminaison d'un VPC spécifique, utilisez Conditions de point de terminaison VPC.

Conditions de point de terminaison VPC

Pour accorder ou refuser l'accès à des requêtes à partir d'un VPC ou d'un point de terminaison d'un VPC particulier, utilisez aws:SourceVpc pour limiter l'accès aux requêtes à partir du VPC spécifié ou aws:SourceVpce pour limiter l'accès aux requêtes à partir du point de terminaison d'un VPC spécifié. Voir Exemple : Autorisations et VPC.

  • aws:SourceVpc limite l'accès aux requêtes à partir du VPC spécifié.

  • aws:SourceVpce limite l'accès aux requêtes à partir du point de terminaison d'un VPC spécifié.

Si vous utilisez ces clés de condition dans une déclaration de politique de ressource qui autorise ou interdit l'accès aux secrets de Secrets Manager, vous risquez de refuser l'accès aux services qui utilisent Secrets Manager pour accéder aux secrets en votre nom. Seuls certains AWS services peuvent être exécutés avec un point de terminaison au sein de votre VPC. Si vous limitez les demandes de secret à un point de terminaison d'un VPC ou à un VPC, les appels à Secrets Manager à partir d'un service non configuré pour ce service peuvent échouer.

veuillez consulter Utilisation d'un point de terminaison d'un VPC AWS Secrets Manager.