

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

# Schéma de document de session
<a name="session-manager-schema"></a>

Les informations suivantes décrivent les éléments du schéma d'un document de session. AWS Systems Manager Session Managerutilise les documents de session pour déterminer le type de session à démarrer, par exemple une session standard, une session de transfert de port ou une session pour exécuter une commande interactive.

 [schemaVersion](#version)   
Version de schéma du document de session. Les documents de session prennent uniquement en charge la version 1.0.  
Type : Chaîne  
Obligatoire : oui

 [description](#descript)   
Description que vous spécifiez pour le document de session. Par exemple, « Document pour démarrer la session de réacheminement de port avec Session Manager ».  
Type : chaîne  
Obligatoire : non

 [sessionType](#type)   
Type de session établie en utilisant le document de session.  
Type : Chaîne  
Obligatoire : oui  
Valeurs valides : `InteractiveCommands` \$1 `NonInteractiveCommands` \$1 `Port` \$1 `Standard_Stream`

 [inputs](#in)   
Préférences de session à utiliser pour les sessions établies en utilisant ce document de session. Cet élément est nécessaire pour les documents de session utilisés pour créer des sessions `Standard_Stream`.  
Type : StringMap  
Obligatoire : non    
 [s3BucketName](#bucket)   
Le compartiment Amazon Simple Storage Service (Amazon S3) vers lequel vous voulez envoyer des journaux de session au terme de vos sessions.  
Type : chaîne  
Obligatoire : non  
 [s3KeyPrefix](#prefix)   
Préfixe à utiliser lors de l'envoi de journaux au compartiment Amazon S3 que vous avez spécifié dans l'entrée `s3BucketName`. Pour de plus amples informations sur l'utilisation d'un préfixe partagé avec des objets stockés dans Amazon S3, veuillez consulter [Utilisation d'un compartiment S3](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/using-folders.html) dans le *Guide de l'utilisateur Amazon Simple Storage*.  
Type : chaîne  
Obligatoire : non  
 [s3EncryptionEnabled](#s3Encrypt)   
Si l'entrée est définie sur `true`, le compartiment Amazon S3 que vous avez spécifié dans l'entrée `s3BucketName` doit être chiffré.  
Type : Boolean  
Obligatoire : oui  
 [cloudWatchLogGroupName](#logGroup)   
Le nom du groupe Amazon CloudWatch Logs (CloudWatch Logs) auquel vous souhaitez envoyer les journaux de session à la fin de vos sessions.  
Type : chaîne  
Obligatoire : non  
 [cloudWatchEncryptionEnabled](#cwEncrypt)   
Si l'entrée est définie sur `true`, le groupe de journaux que vous avez spécifié dans l'entrée `cloudWatchLogGroupName` doit être chiffré.  
Type : Boolean  
Obligatoire : oui  
 [cloudWatchStreamingEnabled](#cwStream)   
Si l'entrée est définie sur `true`, un flux continu de journaux de données de session est envoyé au groupe de journaux que vous avez spécifié dans l'entrée `cloudWatchLogGroupName`. Si l'entrée est définie sur `false`, les journaux de session sont envoyés au groupe de journaux que vous avez spécifié dans l'entrée `cloudWatchLogGroupName` à la fin de vos sessions.  
Type : Boolean  
Obligatoire : oui  
 [kmsKeyId](#kms)   
L'ID que AWS KMS key vous souhaitez utiliser pour chiffrer davantage les données entre vos machines clientes locales et les nœuds gérés par Amazon Elastic Compute Cloud (Amazon EC2) auxquels vous vous connectez.  
Type : chaîne  
Obligatoire : non  
 [runAsEnabled](#run)   
Si l'entrée est définie sur `true`, vous devez spécifier un compte utilisateur existant sur les nœuds gérés auxquels vous vous connecterez dans l'entrée `runAsDefaultUser`. Sinon, les sessions ne démarreront pas. Par défaut, les sessions sont démarrées en utilisant le compte `ssm-user` créé par l'SSM Agent AWS Systems Manager . La fonction Exécuter en tant que n’est prise en charge que pour la connexion aux nœuds gérés Linux et macOS.  
Type : Boolean  
Obligatoire : oui  
 [runAsDefaultUser](#runUser)   
Nom du compte utilisateur avec lequel démarrer les sessions sur les nœuds gérés Linux et macOS lorsque l’entrée `runAsEnabled` est définie sur `true`. Le compte utilisateur que vous spécifiez pour cette entrée doit exister sur les nœuds gérés auxquels vous vous connecterez ; sinon, les sessions ne démarreront pas. Lorsque vous déterminez le compte utilisateur du système d'exploitation à Session Manager utiliser, vérifiez dans l'ordre suivant : le `SSMSessionRunAs` tag figurant sur les balises de session de l'utilisateur IAM, puis le `SSMSessionRunAs` tag correspondant au rôle IAM assumé, et enfin cette `runAsDefaultUser` valeur dans les préférences de session. Pour de plus amples informations, veuillez consulter [Activation de la prise en charge de Run As pour les nœuds gérés Linux et macOS](session-preferences-run-as.md).  
Type : chaîne  
Obligatoire : non  
 [idleSessionTimeout](#timeout)   
Durée d'inactivité que vous voulez autoriser avant la fin d'une session. Cette entrée est mesurée en minutes.  
Type : Chaîne  
Valeurs valides : 1-60  
Obligatoire : non  
 [maxSessionDuration](#maxDuration)   
Durée maximale que vous voulez autoriser avant la fin d'une session. Cette entrée est mesurée en minutes.  
Type : Chaîne  
Valeurs valides : 1 à 1 440  
Obligatoire : non  
 [shellProfile](#shell)   
Préférences que vous spécifiez par système d'exploitation, et qui sont à appliquer dans les sessions, telles que les préférences de shell, les variables d'environnement, les répertoires de travail et l'exécution de plusieurs commandes au démarrage d'une session.  
Type : StringMap  
Obligatoire : non    
 [windows](#win)   
Préférences de shell, variables d'environnement, répertoires de travail et commandes que vous spécifiez pour les sessions sur les nœuds gérés Windows Server.  
Type : chaîne  
Obligatoire : non  
 [linux](#lin)   
Préférences de shell, variables d’environnement, répertoires de travail et commandes que vous spécifiez pour les sessions sur les nœuds gérés Linux et macOS.  
Type : chaîne  
Obligatoire : non

 [parameters](#param)   
Objet qui définit les paramètres acceptés par le document. Pour plus d'informations sur la définition des paramètres de document, consultez **Paramètres** dans le [Éléments de données niveau supérieur](documents-syntax-data-elements-parameters.md#top-level). Pour les paramètres que vous référencez souvent, nous vous recommandons de les stocker dans Parameter Store de Systems Manager, puis de les référencer. Vous pouvez référencer les paramètres Parameter Store `String` et `StringList` dans cette section d'un document. Vous pouvez référencer les paramètres Parameter Store `SecureString` dans cette section d'un document. Vous pouvez référencer un paramètre Parameter Store en utilisant le format suivant.  

```
{{ssm:parameter-name}}
```
Pour plus d’informations sur Parameter Store, consultez [AWS Systems Manager Parameter Store](systems-manager-parameter-store.md).  
Type : StringMap  
Obligatoire : non

 [properties](#props)   
Objet dont les valeurs que vous spécifiez sont utilisées dans l'opération d'API `StartSession`.  
Pour les documents de session utilisés pour des sessions `InteractiveCommands`, l'objet Propriétés inclut les commandes à exécuter sur les systèmes d'exploitation que vous spécifiez. Vous pouvez également déterminer si les commandes sont exécutées en tant que `root` à l'aide de la propriété booléenne `runAsElevated`. Pour de plus amples informations, consultez [Restreindre l'accès aux commandes dans une session](session-manager-restrict-command-access.md).  
Pour les documents de session utilisés pour des sessions `Port`, l'objet Propriétés contient le numéro de port vers lequel le trafic doit être redirigé. Pour obtenir un exemple, veuillez consulter l'exemple de document de session de type `Port` plus loin dans cette rubrique.  
Type : StringMap  
Obligatoire : non

Exemple de document de session de type `Standard_Stream`

------
#### [ YAML ]

```
---
schemaVersion: '1.0'
description: Document to hold regional settings for Session Manager
sessionType: Standard_Stream
inputs:
  s3BucketName: ''
  s3KeyPrefix: ''
  s3EncryptionEnabled: true
  cloudWatchLogGroupName: ''
  cloudWatchEncryptionEnabled: true
  cloudWatchStreamingEnabled: true
  kmsKeyId: ''
  runAsEnabled: true
  runAsDefaultUser: ''
  idleSessionTimeout: '20'
  maxSessionDuration: '60'
  shellProfile:
    windows: ''
    linux: ''
```

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

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

------

Exemple de document de session de type `InteractiveCommands`

------
#### [ YAML ]

```
---
schemaVersion: '1.0'
description: Document to view a log file on a Linux instance
sessionType: InteractiveCommands
parameters:
  logpath:
    type: String
    description: The log file path to read.
    default: "/var/log/amazon/ssm/amazon-ssm-agent.log"
    allowedPattern: "^[a-zA-Z0-9-_/]+(.log)$"
properties:
  linux:
    commands: "tail -f {{ logpath }}"
    runAsElevated: true
```

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

```
{
    "schemaVersion": "1.0",
    "description": "Document to view a log file on a Linux instance",
    "sessionType": "InteractiveCommands",
    "parameters": {
        "logpath": {
            "type": "String",
            "description": "The log file path to read.",
            "default": "/var/log/amazon/ssm/amazon-ssm-agent.log",
            "allowedPattern": "^[a-zA-Z0-9-_/]+(.log)$"
        }
    },
    "properties": {
        "linux": {
            "commands": "tail -f {{ logpath }}",
            "runAsElevated": true
        }
    }
}
```

------

Exemple de document de session de type `Port`

------
#### [ YAML ]

```
---
schemaVersion: '1.0'
description: Document to open given port connection over Session Manager
sessionType: Port
parameters:
  paramExample:
    type: string
    description: document parameter
properties:
  portNumber: anyPortNumber
```

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

```
{
    "schemaVersion": "1.0",
    "description": "Document to open given port connection over Session Manager",
    "sessionType": "Port",
    "parameters": {
        "paramExample": {
            "type": "string",
            "description": "document parameter"
        }
    },
    "properties": {
        "portNumber": "anyPortNumber"
    }
}
```

------

Exemple de document de session avec caractères spéciaux

------
#### [ YAML ]

```
---
schemaVersion: '1.0'
description: Example document with quotation marks
sessionType: InteractiveCommands
parameters:
  Test:
    type: String
    description: Test Input
    maxChars: 32
properties:
  windows:
    commands: |
        $Test = '{{ Test }}'
        $myVariable = \"Computer name is $env:COMPUTERNAME\"
        Write-Host "Test variable: $myVariable`.`nInput parameter: $Test"
    runAsElevated: false
```

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

```
{
   "schemaVersion":"1.0",
   "description":"Test document with quotation marks",
   "sessionType":"InteractiveCommands",
   "parameters":{
      "Test":{
         "type":"String",
         "description":"Test Input",
         "maxChars":32
      }
   },
   "properties":{
      "windows":{
         "commands":[
            "$Test = '{{ Test }}'",
            "$myVariable = \\\"Computer name is $env:COMPUTERNAME\\\"",
            "Write-Host \"Test variable: $myVariable`.`nInput parameter: $Test\""
         ],
         "runAsElevated":false
      }
   }
}
```

------