Schema documento di sessione - AWS Systems Manager

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Schema documento di sessione

Le seguenti informazioni descrivono gli elementi dello schema di un documento di sessione. AWS Systems Manager Session Managerutilizza i documenti di sessione per determinare il tipo di sessione da avviare, ad esempio una sessione standard, una sessione di port forwarding o una sessione per eseguire un comando interattivo.

schemaVersion

Versione dello schema del documento di sessione. I documenti delle sessioni supportano solo la versione 1.0.

Tipo: stringa

Campo obbligatorio: sì

description

Descrizione specificata per il documento di sessione. Ad esempio, «Documento per avviare la sessione di inoltro della porta con Session Manager>>.

▬Tipo: stringa

Campo obbligatorio: no

sessionType

Il tipo di sessione che il documento di sessione viene utilizzato per stabilire.

Tipo: stringa

Campo obbligatorio: sì

Valori validi: InteractiveCommands| NonInteractiveCommands| Port| Standard_Stream

inputs

Preferenze di sessione da utilizzare per le sessioni stabilite utilizzando questo documento di sessione. Questo elemento è necessario per i documenti di sessione utilizzati per creare sessioni Standard_Stream.

Tipo: StringMap

Campo obbligatorio: no

s3BucketName

Il bucket Amazon Simple Storage Service (Amazon S3) a cui desideri inviare i registri delle sessioni al termine delle sessioni.

Tipo: string

Campo obbligatorio: no

s3KeyPrefix

Il prefisso da utilizzare quando si inviano i registri al bucket Amazon S3 specificato nell'input s3BucketName. Per ulteriori informazioni sull'utilizzo di un prefisso condiviso con gli oggetti archiviati in Amazon S3, consulta Come si utilizzano le cartelle in un bucket S3? nella Guida per l'utente di Amazon Simple Storage Service.

▬Tipo: stringa

Campo obbligatorio: no

s3EncryptionEnabled

Se impostato su true, il bucket Amazon S3 specificato nell'input s3BucketName deve essere crittografato.

Tipo: Booleano

Campo obbligatorio: sì

cloudWatchLogGroupName

Il nome del gruppo Amazon CloudWatch Logs (CloudWatch Logs) a cui desideri inviare i log delle sessioni al termine delle sessioni.

▬Tipo: stringa

Campo obbligatorio: no

cloudWatchEncryptionEnabled

Se impostato su true, il gruppo di registro specificato nell'input cloudWatchLogGroupName deve essere crittografato.

Tipo: Booleano

Campo obbligatorio: sì

cloudWatchStreamingEnabled

Se impostato su true, un flusso continuo di registri di dati delle sessioni viene inviato al gruppo di registro specificato nell'input cloudWatchLogGroupName. Se impostati sufalse, i registri delle sessioni vengono inviati al gruppo di registri specificato nella cloudWatchLogGroupName alla fine delle sessioni.

Tipo: Booleano

Campo obbligatorio: sì

kmsKeyId

L'ID che AWS KMS key desideri utilizzare per crittografare ulteriormente i dati tra le macchine client locali e i nodi gestiti Amazon Elastic Compute Cloud (Amazon EC2) a cui ti connetti.

▬Tipo: stringa

Campo obbligatorio: no

runAsEnabled

Se impostato su true, è necessario specificare un account utente esistente nei nodi gestiti a cui ci si connetterà nell'input runAsDefaultUser. In caso contrario, le sessioni non verranno avviate. Per impostazione predefinita, le sessioni vengono avviate utilizzando ssm-user creato dall'account AWS Systems Manager SSM Agent. La funzionalità Esegui come è supportata solo per la connessione ai nodi gestiti Linux.

Tipo: Booleano

Campo obbligatorio: sì

runAsDefaultUser

Il nome dell'account utente con cui avviare le sessioni sui nodi gestiti Linux quando l'input runAsEnabled è impostato su true. L'account utente specificato per questo input deve esistere nei nodi gestiti a cui ci si connetterà; in caso contrario, le sessioni non verranno avviate.

▬Tipo: stringa

Campo obbligatorio: no

idleSessionTimeout

La quantità di tempo di inattività che si desidera consentire prima del termine di una sessione. Questo input viene misurato in minuti.

▬Tipo: stringa

Valori validi: 1-60

Campo obbligatorio: no

maxSessionDuration

La quantità di tempo che si desidera permettere prima del termine di una sessione. Questo input viene misurato in minuti.

▬Tipo: stringa

Valori validi: 1-1440

Campo obbligatorio: no

shellProfile

Le preferenze specificate per il sistema operativo da applicare alle sessioni quali le preferenze della shell, le variabili di ambiente, le directory di lavoro e l'esecuzione di più comandi all'avvio di una sessione.

Tipo: StringMap

Campo obbligatorio: no

windows

Le preferenze della shell, le variabili di ambiente, le directory di lavoro e i comandi specificati per le sessioni sui nodi gestiti Windows.

▬Tipo: stringa

Campo obbligatorio: no

linux

Le preferenze della shell, le variabili di ambiente, le directory di lavoro e i comandi specificati per le sessioni sui nodi gestiti Linux.

▬Tipo: stringa

Campo obbligatorio: no

parameters

Una struttura che definisce i parametri accettati dal documento. ì Per ulteriori informazioni su come specificare i parametri del documento, consulta Parametri di definizione del processo nella Elementi di dati di primo livello. Per i parametri a cui fai spesso riferimento, è consigliabile archiviare questi parametri in Systems Manager Parameter Store e farvi riferimento. Puoi fare riferimento ai parametri String, StringList e Parameter Store in questa sezione di un documento. Puoi fare riferimento ai parametri Parameter Store SecureString in questa sezione di un documento. È possibile fare riferimento a un parametro Parameter Store utilizzando il seguente formato.

{{ssm:parameter-name}}

Per ulteriori informazioni su Parameter Store, consulta AWS Systems Manager Parameter Store.

Tipo: StringMap

Campo obbligatorio: no

properties

Un oggetto i cui valori specificati vengono utilizzati nell' operazione API StartSession.

Per i documenti di sessione utilizzati per sessioni InteractiveCommands, l'oggetto proprietà include i comandi da eseguire nei sistemi operativi specificati. Puoi inoltre determinare se i comandi vengono eseguiti come root utilizzando la proprietà booleana runAsElevated. Per ulteriori informazioni consulta Limitare l'accesso ai comandi in una sessione.

Per i documenti di sessione utilizzati per sessioni Port, l'oggetto proprietà contiene il numero di porta verso cui deve essere reindirizzato il traffico. Per un esempio, consulta il documento di Sessione tipo Port più avanti in questo argomento.

Tipo: StringMap

Campo obbligatorio: no

Esempio di documento di sessione tipo 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" } } }

Esempio di documento di sessione tipo 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 } } }

Esempio di documento di sessione tipo 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" } }

Esempio di documento di sessione con caratteri speciali

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 } } }