Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Exemples de politiques IAM supplémentaires pour Session Manager

Mode de mise au point
Exemples de politiques IAM supplémentaires 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.

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.

Reportez-vous aux exemples de politiques suivants pour vous aider à créer une politique personnalisée AWS Identity and Access Management (IAM) pour n'importe quel Session Manager scénarios d'accès utilisateur que vous souhaitez prendre en charge.

Exemple 1 : octroi d'un accès aux documents depuis la console

Vous pouvez autoriser les utilisateurs à spécifier un document personnalisé lorsqu'ils lancent une session à l'aide de la console Session Manager. L'exemple de politique IAM suivant accorde l'autorisation d'accéder à des documents dont le nom commence par SessionDocument- dans la Région AWS et sur le Compte AWS spécifiés.

Pour utiliser cette politique, remplacez chacune example resource placeholder par vos propres informations.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetDocument", "ssm:ListDocuments" ], "Resource": [ "arn:aws:ssm:region:account-id:document/SessionDocument-*" ] } ] }
Note

La console Session Manager ne prend en charge que les documents de session dont le sessionType et Standard_Stream et utilisés pour définir les préférences de session. Pour de plus amples informations, veuillez consulter Schéma de document de session.

Exemple 2 : restriction de l'accès à des nœuds gérés spécifiques

Vous pouvez créer une politique IAM qui définit les nœuds gérés auxquels un utilisateur est autorisé à se connecter à l'aide du gestionnaire de session. Par exemple, la politique suivante accorde à un utilisateur l'autorisation de démarrer, de terminer et de reprendre ses sessions sur trois nœuds spécifiques. La politique interdit à l'utilisateur de se connecter à des nœuds autres que ceux spécifiés.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:us-east-2:123456789012:instance/i-1234567890EXAMPLE", "arn:aws:ec2:us-east-2:123456789012:instance/i-abcdefghijEXAMPLE", "arn:aws:ec2:us-east-2:123456789012:instance/i-0e9d8c7b6aEXAMPLE", "arn:aws:ssm:us-east-2:123456789012:document/SSM-SessionManagerRunShell" ] }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }

Exemple 3 : restriction de l'accès en fonction des balises

Vous pouvez restreindre l'accès à des nœuds gérés en fonction de balises spécifiques. Dans l'exemple suivant, l'utilisateur est autorisé à démarrer et à reprendre des sessions (Effect: Allow, Action: ssm:StartSession, ssm:ResumeSession) sur n'importe quel nœud géré (Resource: arn:aws:ec2:region:987654321098:instance/*) à condition que le nœud soit un nœud Finance WebServer (ssm:resourceTag/Finance: WebServer). Si l'utilisateur envoie une commande à un nœud géré non balisé ou qui possède une balise autre que Finance: WebServer, le résultat de la commande affiche AccessDenied.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:us-east-2:123456789012:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/Finance": [ "WebServers" ] } } }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:us-east-2:123456789012:document/SSM-SessionManagerRunShell" ] } ] }

Vous pouvez créer des politiques IAM qui permettent à un utilisateur de démarrer des sessions sur des nœuds gérés qui contiennent plusieurs balises. La politique suivante permet à l'utilisateur de démarrer des sessions sur des nœuds gérés qui contiennent les balises spécifiées. Si un utilisateur envoie une commande à un nœud géré qui ne contient pas ces balises, le résultat de la commande affiche AccessDenied.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ssm:StartSession" ], "Resource":"*", "Condition":{ "StringLike":{ "ssm:resourceTag/tag-key1":[ "tag-value1" ], "ssm:resourceTag/tag-key2":[ "tag-value2" ] } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:us-east-2:123456789012:document/SSM-SessionManagerRunShell" ] } ] }

Pour plus d'informations sur la création de politiques IAM, consultez Politiques gérées et politiques en ligne dans le Guide de l'utilisateur IAM. Pour plus d'informations sur le balisage des nœuds gérés, consultez la section Marquage de vos EC2 ressources Amazon dans le guide de EC2 l'utilisateur Amazon (le contenu s'applique à Windows and Linux nœuds gérés). Pour plus d'informations sur le renforcement de votre posture de sécurité vis-à-vis des commandes de niveau racine non autorisées sur vos nœuds gérés, consultez Restreindre l'accès aux commandes de niveau root via SSM Agent.

Exemple 4 : autorisation d'un utilisateur à mettre fin uniquement aux sessions qu'il a démarrées

Session Manager propose deux méthodes pour contrôler les sessions auxquelles un utilisateur fédéré de votre entreprise Compte AWS est autorisé à mettre fin.

  • Utilisez la variable {aws:userid} dans une politique d'autorisation AWS Identity and Access Management (IAM). Les utilisateurs fédérés ne peuvent terminer que les sessions qu'ils ont démarrées. Pour les utilisateurs non fédérés, utilisez la méthode 1. Pour les utilisateurs fédérés, utilisez la méthode 2.

  • Utilisez les balises fournies par les AWS balises dans une politique d'autorisation IAM. Dans la politique, vous incluez une condition qui permet aux utilisateurs de ne terminer que les sessions marquées avec des balises spécifiques fournies par AWS. Cette méthode fonctionne pour tous les comptes, y compris ceux qui utilisent la fédération IDs pour accorder l'accès à AWS.

Méthode 1 : octroyer TerminateSession des privilèges à l'aide de la variable {aws:username}

La politique IAM suivante permet à un utilisateur de consulter toutes les sessions IDs de votre compte. Toutefois, les utilisateurs ne peuvent interagir avec les nœuds gérés que par le biais des sessions qu'ils ont démarrées. Un utilisateur auquel vous attribuez la politique suivante ne peut pas se connecter ni mettre fin aux sessions des autres utilisateurs. Cette politique utilise la variable {aws:username}.

Note

Cette méthode ne fonctionne pas pour les comptes qui autorisent l'accès AWS via Federated. IDs

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ssm:DescribeSessions" ], "Effect": "Allow", "Resource": [ "*" ] }, { "Action": [ "ssm:TerminateSession" ], "Effect": "Allow", "Resource": [ "arn:aws:ssm:*:*:session/${aws:username}-*" ] } ] }

Méthode 2 : octroyer TerminateSession des privilèges à l'aide de balises fournies par AWS

Vous pouvez contrôler les sessions qu'un utilisateur peut terminer en utilisant des variables de clé de balise conditionnelle spécifiques dans une politique utilisateur IAM. La condition spécifie que l'utilisateur ne peut terminer que les sessions qui sont marquées avec une ou deux des variables de clé de balise spécifiques et une valeur spécifiée.

Lorsqu'un de vos utilisateurs Compte AWS démarre une session, Session Manager applique deux balises de ressources à la session. La première balise de ressource est aws:ssmmessages:target-id, avec laquelle vous spécifiez l'ID de la cible à laquelle l'utilisateur est autorisé à se terminer. L'autre balise de ressource est aws:ssmmessages:session-id, avec une valeur au format role-id:caller-specified-role-name.

Note

Session Manager ne prend pas en charge les balises personnalisées pour cette politique de contrôle d'accès IAM. Vous devez utiliser les balises de ressources fournies par AWS, décrites ci-dessous.

aws:ssmmessages:target-id

Avec cette clé de balise, vous incluez l'ID de nœud géré comme valeur dans la politique. Dans le bloc de politique suivant, l'instruction de condition permet à un utilisateur de mettre fin uniquement au nœud i-02573cafcfEXAMPLE.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:TerminateSession" ], "Resource": "*", "Condition": { "StringLike": { "ssm:resourceTag/aws:ssmmessages:target-id": [ "i-02573cafcfEXAMPLE" ] } } } ] }

Si l'utilisateur tente de mettre fin à une session pour laquelle il n'a pas obtenu cette autorisation TerminateSession, il reçoit une AccessDeniedException erreur.

aws:ssmmessages:session-id

Cette clé de balise inclut une variable pour l'ID de session comme valeur dans la demande de démarrage d'une session.

L'exemple suivant illustre une politique pour les cas où le type d'appelant est User. La valeur que vous fournissez pour aws:ssmmessages:session-id est l'ID de l'utilisateur. Dans cet exemple, AIDIODR4TAW7CSEXAMPLE représente l'ID d'un utilisateur de votre Compte AWS. Pour récupérer l'identifiant d'un utilisateur dans votre Compte AWS, utilisez la commande IAM,get-user. Pour plus d'informations, voir get-user dans la AWS Identity and Access Management section du guide de l'utilisateur IAM.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:TerminateSession" ], "Resource": "*", "Condition": { "StringLike": { "ssm:resourceTag/aws:ssmmessages:session-id": [ "AIDIODR4TAW7CSEXAMPLE" ] } } } ] }

L'exemple suivant illustre une politique pour les cas où le type d'appelant est AssumedRole. Vous pouvez utiliser la variable {aws:userid} pour la valeur que vous attribuez à aws:ssmmessages:session-id. Vous pouvez également coder en dur un ID de rôle pour la valeur que vous attribuez à aws:ssmmessages:session-id. Si vous codez en dur un ID de rôle, vous devez fournir la valeur au format role-id:caller-specified-role-name. Par exemple, AIDIODR4TAW7CSEXAMPLE:MyRole.

Important

Pour que les balises système soient appliquées, l'ID de rôle que vous fournissez ne peut contenir que les caractères suivants : Lettres Unicode, 0-9 _, espace., :, /, =, +, -, @ et \.

Pour récupérer l'ID de rôle d'un rôle dans votre Compte AWS, utilisez la get-caller-identity commande. Pour plus d'informations, reportez-vous get-caller-identityà la référence des AWS CLI commandes.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:TerminateSession" ], "Resource": "*", "Condition": { "StringLike": { "ssm:resourceTag/aws:ssmmessages:session-id": [ "${aws:userid}*" ] } } } ] }

Si un utilisateur tente de mettre fin à une session pour laquelle il n'a pas obtenu cette autorisation TerminateSession, il reçoit une erreur AccessDeniedException.

aws:ssmmessages:target-id et aws:ssmmessages:session-id

Vous pouvez également créer des politiques IAM qui permettent à un utilisateur de terminer des sessions marquées avec les deux balises système, comme illustré dans cet exemple.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ssm:TerminateSession" ], "Resource":"*", "Condition":{ "StringLike":{ "ssm:resourceTag/aws:ssmmessages:target-id":[ "i-02573cafcfEXAMPLE" ], "ssm:resourceTag/aws:ssmmessages:session-id":[ "${aws:userid}*" ] } } } ] }

Exemple 5 : octroi d'un accès complet (administrateur) à toutes les sessions

La politique IAM suivante permet à un utilisateur d'interagir pleinement avec tous les nœuds gérés et toutes les sessions créées par l'ensemble des utilisateurs des nœuds. Il ne doit être accordé qu'à un administrateur qui a besoin d'un contrôle total sur les Session Manager activités.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ssm:StartSession", "ssm:TerminateSession", "ssm:ResumeSession", "ssm:DescribeSessions", "ssm:GetConnectionStatus" ], "Effect": "Allow", "Resource": [ "*" ] } ] }
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.