Exemples IAM de politiques pour Session Manager - AWS Systems 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.

Exemples IAM de politiques pour Session Manager

Utilisez les exemples de cette section pour vous aider à créer AWS Identity and Access Management (IAM) des politiques fournissant les autorisations les plus fréquemment requises pour Session Manager accès.

Note

Vous pouvez également utiliser une AWS KMS key politique pour contrôler les IAM entités (utilisateurs ou rôles) qui Comptes AWS ont accès à votre KMS clé. Pour plus d'informations, consultez la section Présentation de la gestion de l'accès à vos AWS KMS ressources et de l'utilisation des politiques clés AWS KMS dans le guide du AWS Key Management Service développeur.

Politiques Quickstart destinées aux utilisateurs finaux pour Session Manager

Utilisez les exemples suivants pour créer des politiques d'utilisateur IAM final pour Session Manager.

Vous pouvez créer une politique qui permet aux utilisateurs de démarrer des sessions uniquement à partir du Session Manager console et AWS Command Line Interface (AWS CLI), uniquement depuis la console Amazon Elastic Compute Cloud (AmazonEC2), ou depuis les trois.

Ces politiques permettent aux utilisateurs finaux de démarrer une session sur un nœud géré particulier et de mettre fin à leurs propres sessions uniquement. Consultez la page Exemples de IAM politiques supplémentaires pour Session Manager pour obtenir des exemples de personnalisation de la politique.

Dans les exemples de politiques suivants, remplacez chaque example resource placeholder avec vos propres informations.

Sélectionnez parmi les onglets suivants pour afficher l'exemple de politique pour la plage d'accès aux sessions que vous souhaitez fournir.

Session Manager and Fleet Manager

Utilisez cet exemple de politique pour permettre aux utilisateurs de démarrer et de reprendre des sessions uniquement à partir du Session Manager and Fleet Manager consoles.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:region:account-id:instance/instance-id", "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" Footnote callout 1 to explain a line in a JSON policy ] }, { "Effect": "Allow", "Action": [ "ssm:DescribeSessions", "ssm:GetConnectionStatus", "ssm:DescribeInstanceProperties", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] }, { "Effect": "Allow", "Action": [ "kms:GenerateDataKey" Footnote callout 2 to explain a line in a JSON policy ], "Resource": "key-name" } ] }
Amazon EC2

Utilisez cet exemple de politique pour permettre aux utilisateurs de démarrer et de reprendre des sessions uniquement depuis la EC2 console Amazon. Cette politique ne fournit pas toutes les autorisations nécessaires pour démarrer des sessions à partir du Session Manager console et le AWS CLI.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" Footnote callout 3 to explain a line in a JSON policy ], "Resource": [ "arn:aws:ec2:region:account-id:instance/instance-id", "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" Footnote callout 1 to explain a line in a JSON policy ] }, { "Effect": "Allow", "Action": [ "ssm:GetConnectionStatus", "ssm:DescribeInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }
AWS CLI

Utilisez cet exemple de politique pour permettre aux utilisateurs de démarrer et de reprendre des sessions à partir du AWS CLI.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" Footnote callout 3 to explain a line in a JSON policy ], "Resource": [ "arn:aws:ec2:region:account-id:instance/instance-id", "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" Footnote callout 1 to explain a line in a JSON policy ] }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] }, { "Effect": "Allow", "Action": [ "kms:GenerateDataKey" Footnote callout 2 to explain a line in a JSON policy ], "Resource": "key-name" } ] }

1 SSM-SessionManagerRunShell est le nom par défaut du SSM document qui Session Manager crée pour enregistrer vos préférences de configuration de session. Vous pouvez créer un document de session personnalisé et le spécifier dans cette politique à la place. Vous pouvez également spécifier le document AWS fourni AWS-StartSSHSession aux utilisateurs qui démarrent des sessions en utilisantSSH. Pour plus d'informations sur les étapes de configuration nécessaires pour prendre en charge l'utilisation de sessionsSSH, voir (facultatif) Autoriser et contrôler les autorisations pour SSH les connexions via Session Manager.

2 L'kms:GenerateDataKeyautorisation permet de créer une clé de chiffrement des données qui sera utilisée pour chiffrer les données de session. Si vous comptez utiliser le chiffrement AWS Key Management Service (AWS KMS) pour les données de votre session, remplacez key-name avec le nom de ressource Amazon (ARN) de la KMS clé que vous souhaitez utiliser, au formatarn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-12345EXAMPLE. Si vous n'avez pas l'intention d'utiliser le chiffrement par KMS clé pour les données de votre session, supprimez le contenu suivant de la politique.

{ "Effect": "Allow", "Action": [ "kms:GenerateDataKey" ], "Resource": "key-name" }

Pour plus d'informations sur l'utilisation AWS KMS pour le chiffrement des données de session, consultezActiver le chiffrement des données de session par clé KMS (console).

3 L'autorisation pour SendCommandest nécessaire dans les cas où un utilisateur tente de démarrer une session depuis la EC2 console Amazon, mais SSM Agent doit être mis à jour vers la version minimale requise pour Session Manager first. Run Command est utilisé pour envoyer une commande à l'instance afin de mettre à jour l'agent.

Politique d'administrateur Quickstart pour Session Manager

Utilisez les exemples suivants pour créer des politiques IAM d'administration pour Session Manager.

Ces politiques autorisent les administrateurs à démarrer une session sur les nœuds gérés qui sont balisées avec Key=Finance,Value=WebServers, à créer, mettre à jour et supprimer des préférences, et à mettre fin à leurs propres sessions uniquement. Consultez la page Exemples de IAM politiques supplémentaires pour Session Manager pour obtenir des exemples de personnalisation de la politique.

Vous pouvez créer une politique qui permet aux administrateurs d'effectuer ces tâches uniquement à partir du Session Manager console et AWS CLI, uniquement à partir de la EC2 console Amazon, ou à partir des trois.

Dans les exemples de politiques suivants, remplacez chaque example resource placeholder avec vos propres informations.

Sélectionnez parmi les onglets suivants pour voir l'exemple de politique pour le scénario d'accès que vous souhaitez prendre en charge.

Session Manager and CLI

Utilisez cet exemple de politique pour permettre aux administrateurs d'effectuer des tâches liées aux sessions uniquement à partir du Session Manager console et le AWS CLI. Cette politique ne fournit pas toutes les autorisations nécessaires pour effectuer des tâches liées à une session depuis la console Amazon. EC2

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:region:account-id:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/Finance": [ "WebServers" ] } } }, { "Effect": "Allow", "Action": [ "ssm:DescribeSessions", "ssm:GetConnectionStatus", "ssm:DescribeInstanceProperties", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:CreateDocument", "ssm:UpdateDocument", "ssm:GetDocument", "ssm:StartSession" ], "Resource": "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }
Amazon EC2

Utilisez cet exemple de politique pour permettre aux administrateurs d'effectuer des tâches liées aux sessions uniquement à partir de la console Amazon. EC2 Cette politique ne fournit pas toutes les autorisations nécessaires pour effectuer des tâches liées à la session à partir du Session Manager console et le AWS CLI.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" Footnote callout 1 to explain a line in a JSON policy ], "Resource": [ "arn:aws:ec2:region:account-id:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/tag-key": [ "tag-value" ] } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" ] }, { "Effect": "Allow", "Action": [ "ssm:GetConnectionStatus", "ssm:DescribeInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }
Session Manager, CLI, and Amazon EC2

Utilisez cet exemple de politique pour permettre aux administrateurs d'effectuer des tâches liées aux sessions à partir du Session Manager console, la AWS CLI, et la EC2 console Amazon.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" Footnote callout 1 to explain a line in a JSON policy ], "Resource": [ "arn:aws:ec2:region:account-id:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/tag-key": [ "tag-value" ] } } }, { "Effect": "Allow", "Action": [ "ssm:DescribeSessions", "ssm:GetConnectionStatus", "ssm:DescribeInstanceInformation", "ssm:DescribeInstanceProperties", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:CreateDocument", "ssm:UpdateDocument", "ssm:GetDocument", "ssm:StartSession" ], "Resource": "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }

1 L'autorisation pour SendCommandest nécessaire dans les cas où un utilisateur tente de démarrer une session depuis la EC2 console Amazon, mais qu'une commande doit être envoyée pour la mettre à jour SSM Agent first.