

• Le AWS Systems Manager CloudWatch tableau de bord ne sera plus disponible après le 30 avril 2026. Les clients peuvent continuer à utiliser CloudWatch la console Amazon pour consulter, créer et gérer leurs CloudWatch tableaux de bord Amazon, comme ils le font aujourd'hui. Pour plus d'informations, consultez la [documentation Amazon CloudWatch Dashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

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.

# Étape 4 : Configuration des préférences de session
<a name="session-manager-getting-started-configure-preferences"></a>

Les utilisateurs auxquels des autorisations administratives ont été accordées dans leur politique Gestion des identités et des accès AWS (IAM) peuvent configurer les préférences de session, notamment les suivantes :
+ Activation d'Exécuter en tant que support pour les nœuds gérés Linux. Cela permet de démarrer des sessions en utilisant les informations d'identification d'un utilisateur du système d'exploitation spécifié au lieu des informations d'identification d'un `ssm-user` compte généré par le système qui AWS Systems Manager Session Manager peut être créé sur un nœud géré.
+ Configurez Session Manager pour utiliser AWS KMS key le chiffrement afin de fournir une protection supplémentaire aux données transmises entre les machines clientes et les nœuds gérés.
+ Configurez Session Manager pour créer et envoyer des journaux d'historique de session vers un bucket Amazon Simple Storage Service (Amazon S3) ou un groupe de journaux CloudWatch Amazon Logs. Les données de journaux stockées peuvent ensuite être utilisées en tant que rapports sur les connexions à vos nœuds gérés et les commandes exécutées au cours des sessions.
+ Configurer les délais d'expiration de session. Vous pouvez utiliser ce paramètre pour spécifier quand mettre fin à une session après une période d'inactivité.
+ Configurez Session Manager de sorte à utiliser des profils de shell configurables. Ces profils personnalisables vous permettent de définir des préférences dans les sessions telles que les préférences du shell, les variables d'environnement, les répertoires de travail et l'exécution de plusieurs commandes au démarrage d'une session.

Pour plus d'informations sur les autorisations qui sont nécessaires pour configurer les préférences Session Manager, veuillez consulter la rubrique [Accorder ou révoquer des autorisations utilisateur pour mettre à jour des préférences Session Manager](preference-setting-permissions.md).

**Topics**
+ [Accorder ou révoquer des autorisations utilisateur pour mettre à jour des préférences Session Manager](preference-setting-permissions.md)
+ [Spécifier une valeur de délai d'expiration d'une session inactive](session-preferences-timeout.md)
+ [Spécification de la durée de session maximale](session-preferences-max-timeout.md)
+ [Autoriser les profils de shell configurables](session-preferences-shell-config.md)
+ [Activation de la prise en charge de Run As pour les nœuds gérés Linux et macOS](session-preferences-run-as.md)
+ [Activer le chiffrement des données de session par clé KMS (console)](session-preferences-enable-encryption.md)
+ [Création d'un document de préférences Session Manager (ligne de commande)](getting-started-create-preferences-cli.md)
+ [Mettre à jour les préférences Session Manager (ligne de commande)](getting-started-configure-preferences-cli.md)

Pour plus d'informations sur l'utilisation de la console Systems Manager pour configurer des options pour la journalisation des données de session, consultez les rubriques suivantes.
+  [Journalisation des données de session avec Amazon S3 (console)](session-manager-logging-s3.md) 
+  [Données de session de streaming à l'aide d'Amazon CloudWatch Logs (console)](session-manager-logging-cwl-streaming.md) 
+  [Enregistrement des données de session à l'aide d'Amazon CloudWatch Logs (console)](session-manager-logging-cloudwatch-logs.md) 

# Accorder ou révoquer des autorisations utilisateur pour mettre à jour des préférences Session Manager
<a name="preference-setting-permissions"></a>

Les préférences de compte sont stockées sous forme de documents AWS Systems Manager (SSM) pour chacun Région AWS. Pour qu'un utilisateur puisse mettre à jour des préférences de session sur votre compte, il doit détenir les autorisations nécessaires pour accéder au type de document SSM sur lequel ces préférences sont stockées. Ces autorisations sont accordées par le biais d'une politique Gestion des identités et des accès AWS (IAM).

**Politique administrateur pour autoriser la création et la mise à jour des préférences**  
Un administrateur peut utiliser la politique suivante pour créer et mettre à jour des préférences à tout moment. La politique suivante autorise l'accès et la mise à jour du document `SSM-SessionManagerRunShell` sur le compte us-east-2 123456789012. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "ssm:CreateDocument",
                "ssm:GetDocument",
                "ssm:UpdateDocument",
                "ssm:DeleteDocument"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
        }
    ]
}
```

------

**Politique utilisateur pour interdire la mise à jour des préférences**  
Utilisez la politique suivante pour interdire aux utilisateurs finaux de votre compte de mettre à jour ou remplacer des préférences Session Manager. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "ssm:CreateDocument",
                "ssm:GetDocument",
                "ssm:UpdateDocument",
                "ssm:DeleteDocument"
            ],
            "Effect": "Deny",
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
        }
    ]
}
```

------

# Spécifier une valeur de délai d'expiration d'une session inactive
<a name="session-preferences-timeout"></a>

Session Manager, un outil dans AWS Systems Manager, vous permet de spécifier la durée pendant laquelle un utilisateur doit rester inactif avant que le système ne mette fin à une session. Par défaut, les sessions expirent au bout de 20 minutes d'inactivité. Vous pouvez modifier ce paramètre de sorte à spécifier qu'une session expire entre 1 et 60 minutes d'inactivité. Certaines agences de sécurité informatique professionnelles recommandent de définir des délais d'inactivité de session de 15 minutes maximum. 

Le temporisateur d'expiration de la session d'inactivité se réinitialise lorsqu'il Session Manager reçoit des entrées côté client. Ces entrées incluent, sans toutefois s'y limiter :
+ Saisie au clavier dans le terminal
+ Redimensionner les événements du terminal ou de la fenêtre du navigateur
+ Reconnexion de session (ResumeSession), qui peut se produire en raison d'interruptions du réseau, de la gestion des onglets du navigateur ou WebSocket de déconnexions

Étant donné que ces événements réinitialisent le délai d'inactivité, une session peut rester active plus longtemps que le délai d'expiration configuré, même en l'absence de commandes directes du terminal.

Si vos exigences de sécurité imposent des limites de durée de session strictes quelle que soit l'activité, utilisez le paramètre *Durée maximale de session* en plus du délai d'inactivité. Pour de plus amples informations, veuillez consulter [Spécification de la durée de session maximale](session-preferences-max-timeout.md).

**Pour autoriser le délai d'expiration d'une session inactive (console)**

1. Ouvrez la AWS Systems Manager console à l'adresse [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Dans le panneau de navigation, sélectionnez **Session Manager**.

1. Sélectionnez l'onglet **Préférences**, puis **Modifier**.

1. Spécifiez le temps nécessaire à un utilisateur pour passer à l'état inactif avant qu'une session se termine, dans le champ **minutes**, sous **Délai d'expiration d'une session inactive**.

1. Choisissez **Enregistrer**.

# Spécification de la durée de session maximale
<a name="session-preferences-max-timeout"></a>

Session Manager, un outil dans AWS Systems Manager, vous permet de définir la durée maximale d'une session avant qu'elle ne se termine. Par défaut, les sessions n'ont pas de durée maximale. La valeur que vous spécifiez pour la durée maximale de session doit être comprise entre 1 et 1 440 minutes.

**Pour spécifier la durée de session maximale (console)**

1. Ouvrez la AWS Systems Manager console à l'adresse [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Dans le panneau de navigation, sélectionnez **Session Manager**.

1. Sélectionnez l'onglet **Préférences**, puis **Modifier**.

1. Activez la case à cocher en regard de **Enable maximum session duration (Activer la durée de session maximale)**.

1. Spécifiez la durée maximale de la session avant son terme dans le champ **minutes** sous **Maximum session duration (Durée de session maximale)**.

1. Choisissez **Enregistrer**.

# Autoriser les profils de shell configurables
<a name="session-preferences-shell-config"></a>

Par défaut, les sessions sur les instances EC2 pour Linux commencent à utiliser le shell Bourne (sh). Vous préférerez peut-être utiliser un autre shell, bash par exemple. En autorisant les profils de shell configurables, vous pouvez personnaliser des préférences de session, telles que des préférences de shell, des variables d'environnement, des répertoires de travail et l'exécution de plusieurs commandes au démarrage d'une session.

**Important**  
Systems Manager ne vérifie pas les commandes ou scripts de votre profil shell pour voir les modifications qu'ils apporteraient à une instance avant leur exécution. Pour limiter la capacité d'un utilisateur à modifier des commandes ou scripts entrés dans son profil shell, nous vous recommandons de procéder comme suit :  
Créez un document de type session personnalisé pour vos utilisateurs et rôles Gestion des identités et des accès AWS (IAM). Modifiez ensuite la politique IAM pour ces utilisateurs et rôles de sorte que l'opération d'API `StartSession` puisse seulement utiliser le document de type session que vous avez créé pour ceux-ci. Pour plus d'informations, consultez [Création d'un document de préférences Session Manager (ligne de commande)](getting-started-create-preferences-cli.md) et [Démarrage rapide - Politiques d'utilisateur final pour Session Manager](getting-started-restrict-access-quickstart.md#restrict-access-quickstart-end-user).
Modifiez la politique IAM pour vos utilisateurs et rôles IAM afin de refuser l'accès à l'opération d'API `UpdateDocument` pour la ressource de document de type session que vous créez. Vos utilisateurs et rôles sont ainsi autorisés à utiliser le document que vous avez créé pour leurs préférences de session mais pas à en modifier les paramètres.

**Pour activer des profils de shell configurables**

1. Ouvrez la AWS Systems Manager console à l'adresse [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Dans le panneau de navigation, sélectionnez **Session Manager**.

1. Sélectionnez l'onglet **Préférences**, puis **Modifier**.

1. Spécifiez les variables d'environnement, les préférences de shell ou les commandes que vous voulez exécuter au démarrage de votre session dans les champs des systèmes d'exploitation applicables.

1. Sélectionnez **Enregistrer**.

Voici quelques exemples des commandes qui peuvent être ajoutées à votre profil de shell.

Sur les instances Linux, passez au shell bash et au répertoire /usr.

```
exec /bin/bash
cd /usr
```

Affichez un horodatage et un message de bienvenue au démarrage d'une session.

------
#### [ Linux & macOS ]

```
timestamp=$(date '+%Y-%m-%dT%H:%M:%SZ')
user=$(whoami)
echo $timestamp && echo "Welcome $user"'!'
echo "You have logged in to a production instance. Note that all session activity is being logged."
```

------
#### [  Windows  ]

```
$timestamp = (Get-Date).ToString("yyyy-MM-ddTH:mm:ssZ")
$splitName = (whoami).Split("\")
$user = $splitName[1]
Write-Host $timestamp
Write-Host "Welcome $user!"
Write-Host "You have logged in to a production instance. Note that all session activity is being logged."
```

------

Affichez l'activité dynamique du système au démarrage d'une session.

------
#### [ Linux & macOS ]

```
top
```

------
#### [  Windows  ]

```
while ($true) { Get-Process | Sort-Object -Descending CPU | Select-Object -First 30; `
Start-Sleep -Seconds 2; cls
Write-Host "Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName"; 
Write-Host "-------  ------    -----      ----- -----   ------     -- -----------"}
```

------

# Activation de la prise en charge de Run As pour les nœuds gérés Linux et macOS
<a name="session-preferences-run-as"></a>

Par défaut, Session Manager authentifie les connexions lancées à l'aide des informations d'identification d'un compte `ssm-user` généré par le système qui est créé sur un nœud géré. (Sur les machines Linux et macOS, le compte est ajouté à `/etc/sudoers/`.) Si vous préférez, vous pouvez authentifier les sessions à l’aide des informations d’identification d’un compte utilisateur de système d’exploitation (OS) ou d’un utilisateur de domaine pour les instances jointes à un Active Directory. Dans ce cas, le Gestionnaire de session vérifie que le compte de système d’exploitation (OS) que vous avez spécifié existe sur le nœud, ou dans le domaine, avant de démarrer la session. Si vous essayez de démarrer une session à l’aide d’un compte OS qui n’existe pas sur le nœud ou dans le domaine, la connexion échoue.

**Note**  
Le gestionnaire de session ne prend pas en charge l'utilisation d'un compte utilisateur `root` de système d'exploitation pour authentifier les connexions. Pour les sessions authentifiées à l'aide d'un compte utilisateur de système d'exploitation, les politiques au niveau du système d'exploitation et de répertoire du nœud, telles que les restrictions de connexion ou les restrictions d'utilisation des ressources système, peuvent ne pas s'appliquer. 

**Comment ça marche**  
Si vous activez la prise en charge de Run As pour les sessions, le système vérifie les autorisations d'accès comme suit :

1. Pour l'utilisateur qui démarre la session, son entité IAM (utilisateur ou rôle) a-t-elle été balisée avec `SSMSessionRunAs = os user account name` ?

   Si oui, le nom d'utilisateur de système d'exploitation (SE) existe-t-il sur le nœud géré ? Si c'est le cas, démarrer la session. Si ce n'est pas le cas, ne pas autoriser une session à démarrer.

   Si l'entité IAM *n'a pas* été balisée avec `SSMSessionRunAs = os user account name`, passez à l'étape 2.

1. Si l'entité IAM n'a pas été taguée`SSMSessionRunAs = os user account name`, un nom d'utilisateur du système d'exploitation a-t-il été spécifié dans les Session Manager préférences Compte AWS de ?

   Si oui, le nom d'utilisateur de système d'exploitation (SE) existe-t-il sur le nœud géré ? Si c'est le cas, démarrer la session. Si ce n'est pas le cas, ne pas autoriser une session à démarrer. 

**Note**  
Lorsque vous activez la prise en charge de l'exécution en tant que, cela empêche le Gestionnaire de session de démarrer des sessions à l'aide du compte `ssm-user` sur un nœud géré. Cela signifie que si Session Manager ne réussit pas la connexion à l'aide du compte utilisateur du système d'exploitation spécifié, il ne reviendra pas à la connexion à l'aide de la méthode par défaut.   
Si vous activez l'exécution en tant que sans spécifier de compte de système d'exploitation (SE) ni baliser une entité IAM et que vous n'avez pas spécifié de compte de système d'exploitation (SE) dans les préférences du Gestionnaire de session, les tentatives de connexion à la session échoueront.

**Pour activer Exécuter en tant que support pour les nœuds gérés Linux et macOS**

1. Ouvrez la AWS Systems Manager console à l'adresse [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Dans le panneau de navigation, sélectionnez **Session Manager**.

1. Sélectionnez l'onglet **Préférences**, puis **Modifier**.

1. Cochez la case en regard de **Activer Exécuter en tant que support des instances Linux**.

1. Effectuez l’une des actions suivantes :
   + **Option 1** : dans le champ **Nom d'utilisateur de système d'exploitation**, saisissez le nom du compte utilisateur de système d'exploitation (SE) que vous souhaitez utiliser pour démarrer les sessions. Avec cette option, toutes les sessions sont exécutées par le même utilisateur du système d'exploitation pour tous les utilisateurs de votre système Compte AWS qui se connectent en utilisantSession Manager.
   + **Option 2** (Recommandé) : choisir le lien **Ouvrir la console IAM**. Dans le panneau de navigation, sélectionnez **Users (Utilisateurs)** ou **Roles (Rôles)**. Sélectionnez l'entité (utilisateur ou rôle) à laquelle ajouter des balises, puis sélectionnez l'onglet **Tags (Balises)**. Entrez `SSMSessionRunAs` pour le nom de la clé. Saisissez le nom d'un compte utilisateur de système d'exploitation (SE) pour la valeur de la clé. Sélectionnez **Enregistrer les modifications**.

     Avec cette option, vous pouvez spécifier des utilisateurs de système d'exploitation (SE) uniques pour différentes entités IAM si vous le souhaitez. Pour plus d’informations sur le balisage des entités IAM (utilisateurs ou rôles), consultez la section [Balisage des ressources IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html) dans le *Guide de l’utilisateur IAM*.

     Voici un exemple.  
![\[Capture d'écran de la spécification de balises pour l'autorisation Exécuter en tant que de Session Manager.\]](http://docs.aws.amazon.com/fr_fr/systems-manager/latest/userguide/images/ssn-run-as-tags.png)

1. Choisissez **Enregistrer**.

# Activer le chiffrement des données de session par clé KMS (console)
<a name="session-preferences-enable-encryption"></a>

Utilisez AWS Key Management Service (AWS KMS) pour créer et gérer des clés de chiffrement. Avec AWS KMS, vous pouvez contrôler l'utilisation du chiffrement dans un large éventail d'applications Services AWS et dans celles-ci. Vous pouvez spécifier que les données de session transmises entre vos nœuds gérés et les machines locales des utilisateurs de votre Compte AWS réseau sont chiffrées à l'aide du chiffrement par clé KMS. (Cela s'ajoute au chiffrement TLS 1.2/1.3 AWS déjà fourni par défaut.) Pour chiffrer les données de Session Manager session, créez une clé KMS *symétrique* à l'aide de. AWS KMS

AWS KMS le chiffrement est disponible pour `Standard_Stream``InteractiveCommands`, et les types de `NonInteractiveCommands` session. Pour utiliser l'option permettant de chiffrer les données de session à l'aide d'une clé créée dans AWS KMS, la version 2.3.539.0 ou ultérieure de AWS Systems Manager SSM Agent doit être installée sur le nœud géré. 

**Note**  
Vous devez autoriser AWS KMS le chiffrement afin de réinitialiser les mots de passe de vos nœuds gérés depuis la AWS Systems Manager console. Pour de plus amples informations, veuillez consulter [Réinitialisation d'un mot de passe sur un nœud géré](fleet-manager-reset-password.md#managed-instance-reset-a-password).

Vous pouvez utiliser une clé que vous avez créée dans votre Compte AWS. Vous pouvez également utiliser une clé qui a été créée dans un Compte AWS différent. Le créateur de la clé dans un autre Compte AWS doit vous fournir les autorisations nécessaires pour utiliser la clé.

Une fois que vous avez activé le chiffrement de clé KMS pour vos données de session, les utilisateurs qui démarrent les sessions et les nœuds gérés auxquels ils se connectent doivent avoir l'autorisation d'utiliser la clé. Vous autorisez l'utilisation de la clé KMS Session Manager via des politiques Gestion des identités et des accès AWS (IAM). Pour plus d’informations, consultez les rubriques suivantes :
+ Ajoutez AWS KMS des autorisations pour les utilisateurs de votre compte :[Exemple de stratégies IAM pour Session Manager](getting-started-restrict-access-quickstart.md).
+ Ajoutez AWS KMS des autorisations pour les nœuds gérés dans votre compte :[Étape 2 : vérifier ou ajouter des autorisations d'instance pour Session Manager](session-manager-getting-started-instance-profile.md).

Pour plus d'informations sur la création et la gestion de clés KMS, veuillez consulter le [https://docs.aws.amazon.com/kms/latest/developerguide/](https://docs.aws.amazon.com/kms/latest/developerguide/).

Pour plus d'informations sur l'utilisation du AWS CLI pour activer le chiffrement par clé KMS des données de session de votre compte, consultez [Création d'un document de préférences Session Manager (ligne de commande)](getting-started-create-preferences-cli.md) ou[Mettre à jour les préférences Session Manager (ligne de commande)](getting-started-configure-preferences-cli.md).

**Note**  
L'utilisation de clés KMS entraîne des frais. Pour obtenir des informations, veuillez consulter [Tarification AWS Key Management Service](https://aws.amazon.com/kms/pricing/).

**Pour activer le chiffrement des données de session par clé KMS (console)**

1. Ouvrez la AWS Systems Manager console à l'adresse [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Dans le panneau de navigation, sélectionnez **Session Manager**.

1. Sélectionnez l'onglet **Préférences**, puis **Modifier**.

1. Activez la case à cocher en regard de **Enable KMS encryption (Activer le chiffrement KMS)**.

1. Effectuez l'une des actions suivantes :
   + Cliquez sur le bouton en regard de **Select a KMS key in my current account** (Sélectionner une clé dans mon compte actuel), puis sélectionnez une clé dans la liste.

     -ou-

     Sélectionnez le bouton en regard de **Entrer un alias de clé KMS ou un ARN de clé KMS**. Saisissez manuellement un alias de clé KMS pour une clé créée dans votre compte actuel, ou saisissez l'Amazon Resource Name (ARN) de clé pour une clé dans un autre compte. Voici quelques exemples :
     + Alias de clé : `alias/my-kms-key-alias`
     + ARN de clé : `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-12345EXAMPLE`

     -ou-

     Sélectionnez **Create new key (Créer une clé)** pour créer une clé KMS dans votre compte. Une fois que vous avez créé la nouvelle clé, revenez à l'onglet **Préférences** et sélectionnez la clé pour chiffrer les données de session dans votre compte.

   Pour plus d'informations sur le partage de clés, voir [Autoriser un Comptes AWS utilisateur externe à accéder à une clé](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html#key-policy-modifying-external-accounts) dans le *manuel du AWS Key Management Service développeur*.

1. Choisissez **Enregistrer**.

# Création d'un document de préférences Session Manager (ligne de commande)
<a name="getting-started-create-preferences-cli"></a>

Utilisez la procédure suivante pour créer des documents SSM qui définissent vos préférences pour les AWS Systems Manager Session Manager sessions. Vous pouvez utiliser le document pour configurer les options de session, notamment le chiffrement des données, la durée de session et la journalisation. Par exemple, vous pouvez spécifier si vous souhaitez stocker les données du journal de session dans un bucket Amazon Simple Storage Service (Amazon S3) ou dans un groupe de journaux CloudWatch Amazon Logs. Vous pouvez créer des documents qui définissent des préférences générales pour toutes les sessions pour un Compte AWS et Région AWS, ou qui définissent des préférences pour des sessions individuelles. 

**Note**  
Vous pouvez également configurer les préférences générales de session à l'aide de la console Session Manager.

Les documents utilisés pour définir les préférences de Session Manager doivent comporter un `sessionType` `Standard_Stream`. Pour plus d'informations sur les documents de session, veuillez consulter la rubrique [Schéma de document de session](session-manager-schema.md).

Pour plus d'informations sur l'utilisation de la ligne de commande afin de mettre à jour les préférences Session Manager existantes, veuillez consulter la rubrique [Mettre à jour les préférences Session Manager (ligne de commande)](getting-started-configure-preferences-cli.md).

Pour un exemple de création de préférences de session en utilisant CloudFormation, consultez le [document Create a Systems Manager pour les Session Manager préférences](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#aws-resource-ssm-document--examples) dans le *Guide de AWS CloudFormation l'utilisateur*.

**Note**  
Cette procédure décrit comment créer des documents pour définir Session Manager les préférences au Compte AWS niveau. Pour créer des documents qui seront utilisés pour définir les préférences au niveau de la session, spécifiez une valeur autre que `SSM-SessionManagerRunShell` pour les entrées de commande liées au nom de fichier.   
Pour utiliser votre document afin de définir les préférences des sessions démarrées à partir de l' AWS Command Line Interface (AWS CLI), indiquez le nom du document comme valeur du paramètre `--document-name`. Pour définir les préférences des sessions démarrées depuis la console Session Manager, vous pouvez saisir ou sélectionner le nom de votre document dans une liste.

**Pour créer des préférences Session Manager (ligne de commande)**

1. Créez un fichier JSON sur votre ordinateur local avec un nom tel que `SessionManagerRunShell.json`, puis collez le contenu suivant dans le fichier.

   ```
   {
       "schemaVersion": "1.0",
       "description": "Document to hold regional settings for Session Manager",
       "sessionType": "Standard_Stream",
       "inputs": {
           "s3BucketName": "",
           "s3KeyPrefix": "",
           "s3EncryptionEnabled": true,
           "cloudWatchLogGroupName": "",
           "cloudWatchEncryptionEnabled": true,
           "cloudWatchStreamingEnabled": false,
           "kmsKeyId": "",
           "runAsEnabled": false,
           "runAsDefaultUser": "",
           "idleSessionTimeout": "",
           "maxSessionDuration": "",
           "shellProfile": {
               "windows": "date",
               "linux": "pwd;ls"
           }
       }
   }
   ```

   Vous pouvez aussi transmettre des valeurs à vos préférences de session en utilisant des paramètres plutôt qu'en codant les valeurs en dur, comme l'illustre l'exemple suivant.

   ```
   {
      "schemaVersion":"1.0",
      "description":"Session Document Parameter Example JSON Template",
      "sessionType":"Standard_Stream",
      "parameters":{
         "s3BucketName":{
            "type":"String",
            "default":""
         },
         "s3KeyPrefix":{
            "type":"String",
            "default":""
         },
         "s3EncryptionEnabled":{
            "type":"Boolean",
            "default":"false"
         },
         "cloudWatchLogGroupName":{
            "type":"String",
            "default":""
         },
         "cloudWatchEncryptionEnabled":{
            "type":"Boolean",
            "default":"false"
         }
      },
      "inputs":{
         "s3BucketName":"{{s3BucketName}}",
         "s3KeyPrefix":"{{s3KeyPrefix}}",
         "s3EncryptionEnabled":"{{s3EncryptionEnabled}}",
         "cloudWatchLogGroupName":"{{cloudWatchLogGroupName}}",
         "cloudWatchEncryptionEnabled":"{{cloudWatchEncryptionEnabled}}",
         "kmsKeyId":""
      }
   }
   ```

1. Spécifiez où vous souhaitez envoyer les données de session. Vous pouvez spécifier un nom de compartiment S3 (avec un préfixe facultatif) ou un nom de groupe de CloudWatch journaux de journaux. Si vous souhaitez continuer à chiffrer des données entre le client local et les nœuds gérés, fournissez la clé KMS à utiliser pour le chiffrement. Voici un exemple.

   ```
   {
     "schemaVersion": "1.0",
     "description": "Document to hold regional settings for Session Manager",
     "sessionType": "Standard_Stream",
     "inputs": {
       "s3BucketName": "amzn-s3-demo-bucket",
       "s3KeyPrefix": "MyS3Prefix",
       "s3EncryptionEnabled": true,
       "cloudWatchLogGroupName": "MyLogGroupName",
       "cloudWatchEncryptionEnabled": true,
       "cloudWatchStreamingEnabled": false,
       "kmsKeyId": "MyKMSKeyID",
       "runAsEnabled": true,
       "runAsDefaultUser": "MyDefaultRunAsUser",
       "idleSessionTimeout": "20",
       "maxSessionDuration": "60",
       "shellProfile": {
           "windows": "MyCommands",
           "linux": "MyCommands"
       }
     }
   }
   ```
**Note**  
Si vous ne souhaitez pas chiffrer les données de journaux, remplacez `true` par `false` pour `s3EncryptionEnabled`.  
Si vous n'envoyez pas de journaux à un compartiment Amazon S3 ou à un groupe de CloudWatch journaux de journaux, si vous ne souhaitez pas chiffrer les données de session actives ou si vous ne souhaitez pas activer le support Run As pour les sessions de votre compte, vous pouvez supprimer les lignes correspondant à ces options. Assurez-vous que la dernière ligne de la section `inputs` ne se termine pas par une virgule.  
Si vous ajoutez un ID de clé KMS pour chiffrer vos données de session, les utilisateurs qui démarrent les sessions et les nœuds gérés auxquels ils se connectent doivent avoir l'autorisation d'utiliser la clé. Vous fournissez l'autorisation d'utiliser la clé KMS avec Session Manager via des politiques IAM. Pour plus d’informations, consultez les rubriques suivantes :  
Ajoutez AWS KMS des autorisations pour les utilisateurs de votre compte : [Exemple de stratégies IAM pour Session Manager](getting-started-restrict-access-quickstart.md)
Ajoutez AWS KMS des autorisations pour les nœuds gérés dans votre compte : [Étape 2 : vérifier ou ajouter des autorisations d'instance pour Session Manager](session-manager-getting-started-instance-profile.md)

1. Enregistrez le fichier.

1. Dans le répertoire où vous avez créé le fichier JSON, exécutez la commande suivante.

------
#### [ Linux & macOS ]

   ```
   aws ssm create-document \
       --name SSM-SessionManagerRunShell \
       --content "file://SessionManagerRunShell.json" \
       --document-type "Session" \
       --document-format JSON
   ```

------
#### [  Windows  ]

   ```
   aws ssm create-document ^
       --name SSM-SessionManagerRunShell ^
       --content "file://SessionManagerRunShell.json" ^
       --document-type "Session" ^
       --document-format JSON
   ```

------
#### [   PowerShell   ]

   ```
   New-SSMDocument `
       -Name "SSM-SessionManagerRunShell" `
       -Content (Get-Content -Raw SessionManagerRunShell.json) `
       -DocumentType "Session" `
       -DocumentFormat JSON
   ```

------

   Si elle aboutit, la commande renvoie un résultat semblable au suivant :

   ```
   {
       "DocumentDescription": {
           "Status": "Creating",
           "Hash": "ce4fd0a2ab9b0fae759004ba603174c3ec2231f21a81db8690a33eb66EXAMPLE",
           "Name": "SSM-SessionManagerRunShell",
           "Tags": [],
           "DocumentType": "Session",
           "PlatformTypes": [
               "Windows",
               "Linux"
           ],
           "DocumentVersion": "1",
           "HashType": "Sha256",
           "CreatedDate": 1547750660.918,
           "Owner": "111122223333",
           "SchemaVersion": "1.0",
           "DefaultVersion": "1",
           "DocumentFormat": "JSON",
           "LatestVersion": "1"
       }
   }
   ```

# Mettre à jour les préférences Session Manager (ligne de commande)
<a name="getting-started-configure-preferences-cli"></a>

La procédure suivante décrit comment utiliser votre outil de ligne de commande préféré pour modifier les AWS Systems Manager Session Manager préférences de Compte AWS la zone sélectionnée Région AWS. Utilisez Session Manager les préférences pour spécifier les options de journalisation des données de session dans un bucket Amazon Simple Storage Service (Amazon S3) ou un groupe de journaux CloudWatch Amazon Logs. Vous pouvez également utiliser des préférences Session Manager pour chiffrer vos données de session.

**Pour mettre à jour les préférences Session Manager (ligne de commande)**

1. Créez un fichier JSON sur votre ordinateur local avec un nom tel que `SessionManagerRunShell.json`, puis collez le contenu suivant dans le fichier.

   ```
   {
       "schemaVersion": "1.0",
       "description": "Document to hold regional settings for Session Manager",
       "sessionType": "Standard_Stream",
       "inputs": {
           "s3BucketName": "",
           "s3KeyPrefix": "",
           "s3EncryptionEnabled": true,
           "cloudWatchLogGroupName": "",
           "cloudWatchEncryptionEnabled": true,
           "cloudWatchStreamingEnabled": false,
           "kmsKeyId": "",
           "runAsEnabled": true,
           "runAsDefaultUser": "",
           "idleSessionTimeout": "",
           "maxSessionDuration": "",
           "shellProfile": {
               "windows": "date",
               "linux": "pwd;ls"
           }
       }
   }
   ```

1. Spécifiez où vous souhaitez envoyer les données de session. Vous pouvez spécifier un nom de compartiment S3 (avec un préfixe facultatif) ou un nom de groupe de CloudWatch journaux de journaux. Si vous souhaitez chiffrer davantage les données entre le client local et les nœuds gérés, fournissez le code AWS KMS key à utiliser pour le chiffrement. Voici un exemple.

   ```
   {
     "schemaVersion": "1.0",
     "description": "Document to hold regional settings for Session Manager",
     "sessionType": "Standard_Stream",
     "inputs": {
       "s3BucketName": "amzn-s3-demo-bucket",
       "s3KeyPrefix": "MyS3Prefix",
       "s3EncryptionEnabled": true,
       "cloudWatchLogGroupName": "MyLogGroupName",
       "cloudWatchEncryptionEnabled": true,
       "cloudWatchStreamingEnabled": false,
       "kmsKeyId": "MyKMSKeyID",
       "runAsEnabled": true,
       "runAsDefaultUser": "MyDefaultRunAsUser",
       "idleSessionTimeout": "20",
       "maxSessionDuration": "60",
       "shellProfile": {
           "windows": "MyCommands",
           "linux": "MyCommands"
       }
     }
   }
   ```
**Note**  
Si vous ne souhaitez pas chiffrer les données de journaux, remplacez `true` par `false` pour `s3EncryptionEnabled`.  
Si vous n'envoyez pas de journaux à un compartiment Amazon S3 ou à un groupe de CloudWatch journaux de journaux, si vous ne souhaitez pas chiffrer les données de session actives ou si vous ne souhaitez pas activer le support Run As pour les sessions de votre compte, vous pouvez supprimer les lignes correspondant à ces options. Assurez-vous que la dernière ligne de la section `inputs` ne se termine pas par une virgule.  
Si vous ajoutez un ID de clé KMS pour chiffrer vos données de session, les utilisateurs qui démarrent les sessions et les nœuds gérés auxquels ils se connectent doivent avoir l'autorisation d'utiliser la clé. Vous autorisez l'utilisation de la clé KMS Session Manager via des politiques Gestion des identités et des accès AWS (IAM). Pour plus d’informations, consultez les rubriques suivantes :  
Ajoutez AWS KMS des autorisations pour les utilisateurs de votre compte :[Exemple de stratégies IAM pour Session Manager](getting-started-restrict-access-quickstart.md).
Ajoutez AWS KMS des autorisations pour les nœuds gérés dans votre compte :[Étape 2 : vérifier ou ajouter des autorisations d'instance pour Session Manager](session-manager-getting-started-instance-profile.md).

1. Enregistrez le fichier.

1. Dans le répertoire où vous avez créé le fichier JSON, exécutez la commande suivante.

------
#### [ Linux & macOS ]

   ```
   aws ssm update-document \
       --name "SSM-SessionManagerRunShell" \
       --content "file://SessionManagerRunShell.json" \
       --document-version "\$LATEST"
   ```

------
#### [  Windows  ]

   ```
   aws ssm update-document ^
       --name "SSM-SessionManagerRunShell" ^
       --content "file://SessionManagerRunShell.json" ^
       --document-version "$LATEST"
   ```

------
#### [   PowerShell   ]

   ```
   Update-SSMDocument `
       -Name "SSM-SessionManagerRunShell" `
       -Content (Get-Content -Raw SessionManagerRunShell.json) `
       -DocumentVersion '$LATEST'
   ```

------

   Si elle aboutit, la commande renvoie un résultat semblable au suivant :

   ```
   {
       "DocumentDescription": {
           "Status": "Updating",
           "Hash": "ce4fd0a2ab9b0fae759004ba603174c3ec2231f21a81db8690a33eb66EXAMPLE",
           "Name": "SSM-SessionManagerRunShell",
           "Tags": [],
           "DocumentType": "Session",
           "PlatformTypes": [
               "Windows",
               "Linux"
           ],
           "DocumentVersion": "2",
           "HashType": "Sha256",
           "CreatedDate": 1537206341.565,
           "Owner": "111122223333",
           "SchemaVersion": "1.0",
           "DefaultVersion": "1",
           "DocumentFormat": "JSON",
           "LatestVersion": "2"
       }
   }
   ```