

• La AWS Systems Manager CloudWatch dashboard non sarà più disponibile dopo il 30 aprile 2026. I clienti possono continuare a utilizzare la CloudWatch console Amazon per visualizzare, creare e gestire le proprie CloudWatch dashboard Amazon, proprio come fanno oggi. Per ulteriori informazioni, consulta la [documentazione di Amazon CloudWatch Dashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

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

# Configurazione di Session Manager
<a name="session-manager-getting-started"></a>

Prima di utilizzare il AWS Systems Manager Session Manager per connetterti ai nodi gestiti nel tuo account, completa le fasi descritte nei seguenti argomenti.

**Topics**
+ [Fase 1: completamento dei prerequisiti Session Manager](session-manager-prerequisites.md)
+ [Fase 2: Verifica o aggiungi le autorizzazioni delle istanze per Session Manager](session-manager-getting-started-instance-profile.md)
+ [Fase 3: Controlla l'accesso della sessione ai nodi gestiti](session-manager-getting-started-restrict-access.md)
+ [Fase 4: configurazione delle preferenze delle sessioni](session-manager-getting-started-configure-preferences.md)
+ [Fase 5: (facoltativo) limitazione dell'accesso ai comandi in una sessione](session-manager-restrict-command-access.md)
+ [Fase 6: (Facoltativo) Utilizzare AWS PrivateLink per configurare un endpoint VPC per Session Manager](session-manager-getting-started-privatelink.md)
+ [Fase 7 (facoltativo): abilitazione o disabilitazione delle autorizzazioni amministrative dell'account ssm-account](session-manager-getting-started-ssm-user-permissions.md)
+ [Fase 8: (facoltativo) abilitazione e controllo delle autorizzazioni per le connessioni SSH tramite Session Manager](session-manager-getting-started-enable-ssh-connections.md)

# Fase 1: completamento dei prerequisiti Session Manager
<a name="session-manager-prerequisites"></a>

Prima di utilizzare il Session Manager, verifica che il tuo ambiente soddisfi i requisiti seguenti.


**Prerequisiti di Session Manager**  

| Requisito | Description | 
| --- | --- | 
|  Sistemi operativi supportati  |  Session Manager supporta la connessione alle istanze Amazon Elastic Compute Cloud (Amazon EC2), nonché alle macchine non EC2 nell'ambiente [ibrido e multicloud](operating-systems-and-machine-types.md#supported-machine-types) che utilizzano il livello *istanze avanzate*. Session Manager supporta le seguenti versioni dei sistemi operativi:  Session Manager*supporta istanze EC2, dispositivi edge, server e macchine virtuali locali (VMs) nel tuo ambiente [ibrido e multicloud](operating-systems-and-machine-types.md#supported-machine-types) che utilizza il livello di istanze avanzate.* Per ulteriori informazioni sulle istanze avanzate, consulta [Configurazione dei livelli di istanza](fleet-manager-configure-instance-tiers.md).   **Linux e **macOS****  Session Managersupporta tutte le versioni di e che sono supportate da. Linux macOS AWS Systems Manager Per informazioni, consulta [Sistemi operativi e tipi di macchine supportati](operating-systems-and-machine-types.md).  ** Windows **  Session Manager supporta la versione Windows Server 2012 e le successive.  Microsoft Windows Server 2016 Nano non è supportato.   | 
|  SSM Agent  |  È necessario installare almeno la AWS Systems Manager SSM Agent versione 2.3.68.0 o successiva sui nodi gestiti a cui si desidera connettersi tramite sessioni.  Per utilizzare l'opzione per crittografare i dati della sessione utilizzando una chiave creata in AWS Key Management Service (AWS KMS), è necessario installare sul nodo gestito la versione 2.3.539.0 o successiva diSSM Agent.  Per utilizzare i profili di shell in una sessione, la versione 3.0.161.0 o successiva di SSM Agent deve essere installata sul nodo gestito. Per avviare un Port forwarding o una sessione SSH su Session Manager, la versione 3.0.222.0 o successiva di SSM Agent deve essere installata sul nodo gestito. Per eseguire lo streaming dei dati della sessione utilizzando Amazon CloudWatch Logs, è necessario installare la SSM Agent versione 3.0.284.0 o successiva sul nodo gestito. Per informazioni su come determinare il numero di versione in esecuzione su un'istanza, consulta [Verifica del numero di versione di SSM Agent](ssm-agent-get-version.md). Per informazioni sull'installazione o l'aggiornamento di SSM Agent, consulta [Utilizzo di SSM Agent](ssm-agent.md).  Informazioni sull'account ssm-user A partire dalla versione 2.3.50.0 di SSM Agent, l'agente crea un account utente nel nodo gestito, con autorizzazioni di amministratore o root, denominato `ssm-user`. (Nelle versioni precedenti alla 2.3.612.0, l'account viene creato quando SSM Agent viene avviato o riavviato. Nella versione 2.3.612.0 e successive, `ssm-user` viene creato la prima volta che si avvia una sessione sul nodo gestito). Le sessioni vengono avviate utilizzando le credenziali amministrative di questo account utente. Per informazioni su come limitare il controllo amministrativo per questo account, consulta [Disattivare o attivare le autorizzazioni amministrative dell'account ssm-user](session-manager-getting-started-ssm-user-permissions.md).   ssm-user su controller di dominio Windows Server A partire dalla versione 2.3.612.0 di SSM Agent, l'account `ssm-user` non viene creato automaticamente su nodi gestiti utilizzate come controller di dominio Windows Server. Per utilizzare Session Manager su un sistema Windows Server utilizzato come controller di dominio, è necessario creare l'account `ssm-user` manualmente, se non è già presente, e assegnare le autorizzazioni di amministratore di dominio all'utente. In Windows Server, SSM Agent imposta una nuova password per l'account `ssm-user` ogni volta che viene avviata una sessione, pertanto non è necessario specificare una password quando si crea l'account.   | 
|  Connettività agli endpoint  |  In questo caso, i nodi gestiti devono consentire anche il traffico in uscita HTTPS (porta 443) verso i seguenti endpoint: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/systems-manager/latest/userguide/session-manager-prerequisites.html) Per ulteriori informazioni, consulta i seguenti argomenti: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/systems-manager/latest/userguide/session-manager-prerequisites.html) In alternativa, è possibile connettersi agli endpoint richiesti utilizzando gli endpoint di interfaccia. Per ulteriori informazioni, consulta [Fase 6: (Facoltativo) Utilizzare AWS PrivateLink per configurare un endpoint VPC per Session Manager](session-manager-getting-started-privatelink.md).  | 
|  AWS CLI  |  (Facoltativo) Se utilizzi AWS Command Line Interface (AWS CLI) per avviare le sessioni (anziché utilizzare la AWS Systems Manager console o la console Amazon EC2), la versione 1.16.12 o successiva della CLI deve essere installata sul computer locale. È possibile chiamare `aws --version` per controllare la versione. Se devi installare o aggiornare la CLI, consulta [Installazione](https://docs.aws.amazon.com/cli/latest/userguide/installing.html) di AWS Command Line Interface nella Guida per l' AWS Command Line Interface utente. Una versione aggiornata di SSM Agent viene distribuita ogni volta che vengono aggiunti nuovi strumenti a Systems Manager o eseguiti aggiornamenti degli strumenti esistenti. Il mancato utilizzo della versione più recente dell'agente può impedire al nodo gestito di utilizzare vari strumenti e funzionalità di Systems Manager. Per questo motivo, ti consigliamo di automatizzare il processo di aggiornamento di SSM Agent sulle macchine. Per informazioni, consulta [Automazione degli aggiornamenti di SSM Agent](ssm-agent-automatic-updates.md). Iscriviti alla pagina [Note di rilascio di SSM Agent](https://github.com/aws/amazon-ssm-agent/blob/mainline/RELEASENOTES.md) su GitHub per ricevere notifiche sugli aggiornamenti di SSM Agent. Inoltre, per utilizzare la CLI per gestire i tuoi nodi con il Session Manager, devi prima installare il plug-in Session Manager sul computer locale. Per informazioni, consulta [Installa il Session Manager plugin per AWS CLI](session-manager-working-with-install-plugin.md).  | 
|  Attivazione del piano istanze avanzate (ambienti [ibridi e multicloud](operating-systems-and-machine-types.md#supported-machine-types))  |  Per connetterti a macchine non EC2 utilizzandoSession Manager, devi attivare il livello Advanced-Instances nel Regione AWS quale creare attivazioni ibride per Account AWS registrare macchine non EC2 come nodi gestiti. Viene addebitato un costo per l'utilizzo del piano istanze avanzate. Per ulteriori informazioni sul livello istanze avanzate, consulta [Configurazione dei livelli di istanza](fleet-manager-configure-instance-tiers.md).  | 
|  Verifica delle autorizzazioni del ruolo di servizio IAM (ambienti [ibridi e multicloud](operating-systems-and-machine-types.md#supported-machine-types))  |  I nodi attivati in modalità ibrida utilizzano il ruolo di servizio AWS Identity and Access Management (IAM) specificato nell'attivazione ibrida per comunicare con le operazioni dell'API Systems Manager. Questo ruolo di servizio deve contenere le autorizzazioni necessarie per connettersi alle macchine [ibride e multicloud](operating-systems-and-machine-types.md#supported-machine-types) utilizzando Session Manager. Se il ruolo di servizio contiene la policy AWS gestita`AmazonSSMManagedInstanceCore`, le autorizzazioni richieste per Session Manager sono già state fornite. Se si scopre che il ruolo di servizio non contiene le autorizzazioni richieste, è necessario annullare la registrazione dell'istanza gestita e registrarla con una nuova attivazione ibrida che utilizza un ruolo di servizio IAM con le autorizzazioni richieste. Per ulteriori informazioni sull'annullamento delle registrazioni delle istanze gestite, consulta [Annullamento della registrazione dei nodi gestiti in un ambiente ibrido e multicloud](fleet-manager-deregister-hybrid-nodes.md). Per ulteriori informazioni sulla creazione di policy IAM con autorizzazioni Session Manager, vedi [Fase 2: Verifica o aggiungi autorizzazioni di istanze per Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started-instance-profile.html).  | 

# Fase 2: Verifica o aggiungi le autorizzazioni delle istanze per Session Manager
<a name="session-manager-getting-started-instance-profile"></a>

Per impostazione predefinita, AWS Systems Manager non dispone dell'autorizzazione per eseguire azioni sulle tue istanze. È possibile fornire le autorizzazioni di istanza a livello di account utilizzando un ruolo AWS Identity and Access Management (IAM) o a livello di istanza utilizzando un profilo dell'istanza. Se il caso d'uso lo consente, ti consigliamo di concedere l'accesso a livello di account utilizzando la configurazione di gestione host predefinita. Se hai già impostato la configurazione di gestione host predefinita per il tuo account utilizzando la policy `AmazonSSMManagedEC2InstanceDefaultPolicy`, è possibile procedere con il passaggio successivo. Per ulteriori informazioni sulla configurazione di gestione host predefinita, consulta [Gestione automatica delle istanze EC2 con la configurazione di gestione host predefinita](fleet-manager-default-host-management-configuration.md).

In alternativa, è possibile utilizzare i profili di istanza per fornire le autorizzazioni necessarie alle tue istanze. Un profilo dell'istanza passa un ruolo IAM a un'istanza Amazon EC2. È possibile collegare un profilo dell'istanza IAM a un'istanza Amazon EC2 all'avvio o a un'istanza avviata in precedenza. Per ulteriori informazioni, consulta [Utilizzo dei profili dell'istanza](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-usingrole-instanceprofile.html).

Per i server locali o le macchine virtuali (VMs), le autorizzazioni sono fornite dal ruolo del servizio IAM associato all'attivazione ibrida utilizzata per registrare i server locali e con Systems VMs Manager. Server locali e VMs non utilizzano profili di istanza.

Se utilizzi già altri strumenti di Systems Manager, ad esempio Run Command o Parameter Store, un profilo dell'istanza con le autorizzazioni di base richieste per il Session Manager potrebbe essere già associato alle tue istanze Amazon EC2. Se un profilo di istanza che contiene la policy AWS gestita `AmazonSSMManagedInstanceCore` è già associato alle istanze, le autorizzazioni richieste per Session Manager sono già state fornite. Ciò vale anche se il ruolo di servizio IAM utilizzato nell'attivazione ibrida contiene la policy gestita `AmazonSSMManagedInstanceCore`.

Tuttavia, in alcuni casi, potrebbe essere necessario modificare le autorizzazioni collegate al profilo dell'istanza. Ad esempio, desideri fornire un set più ristretto di autorizzazioni per l'istanza, hai creato una policy personalizzata per il tuo profilo di istanza o desideri utilizzare le opzioni di crittografia o () di crittografia di Amazon Simple Storage Service (Amazon S3) AWS Key Management Service o AWS KMS() per proteggere i dati della sessione. Per questi casi, procedi in uno dei seguenti modi per consentire l'esecuzione di operazioni Session Manager sulle istanze:
+  **Incorpora autorizzazioni per azioni Session Manager in un ruolo IAM personalizzato** 

  Per aggiungere Session Manager autorizzazioni per azioni a un ruolo IAM esistente che non si basa sulla policy predefinita AWS fornita, segui la procedura riportata di seguito. `AmazonSSMManagedInstanceCore` [Aggiunta di autorizzazioni Session Manager per un ruolo IAM esistente](getting-started-add-permissions-to-existing-profile.md)
+  **Crea un ruolo IAM personalizzato solo con le autorizzazioni del Session Manager** 

  Per creare un ruolo IAM che contenga solo le autorizzazioni per le operazioni del Session Manager, segui i passaggi riportati in [Creare un ruolo IAM personalizzato per Session Manager](getting-started-create-iam-instance-profile.md).
+  **Crea e utilizza un nuovo ruolo IAM con le autorizzazioni per tutte le operazioni di Systems Manager** 

  Per creare un ruolo IAM per le istanze gestite di Systems Manager che utilizza una policy predefinita fornita da AWS per concedere tutte le autorizzazioni di Systems Manager, segui i passaggi in [Configurare le autorizzazioni delle istanze richieste per Systems Manager](setup-instance-permissions.md).

**Topics**
+ [Aggiunta di autorizzazioni Session Manager per un ruolo IAM esistente](getting-started-add-permissions-to-existing-profile.md)
+ [Creare un ruolo IAM personalizzato per Session Manager](getting-started-create-iam-instance-profile.md)

# Aggiunta di autorizzazioni Session Manager per un ruolo IAM esistente
<a name="getting-started-add-permissions-to-existing-profile"></a>

Utilizza la procedura seguente per aggiungere autorizzazioni Session Manager a un ruolo AWS Identity and Access Management (IAM) esistente. Aggiungendo autorizzazioni a un ruolo esistente, è possibile migliorare la sicurezza dell'ambiente informatico senza dover utilizzare la AWS `AmazonSSMManagedInstanceCore` policy, ad esempio le autorizzazioni.

**Nota**  
Prendi nota delle seguenti informazioni:  
Questa procedura presuppone che il tuo ruolo esistente includa già altre autorizzazioni di Systems Manager `ssm` per le operazioni a cui desideri permettere l'accesso. Questa policy da sola non è sufficiente per l'utilizzo di Session Manager.
Il seguente esempio di policy include un'azione `s3:GetEncryptionConfiguration`. Questa azione è necessaria se hai scelto l'opzione **Applica crittografia dei log S3** nelle preferenze di registrazione di Session Manager.
Se l'`ssmmessages:OpenControlChannel`autorizzazione viene rimossa dalle policy allegate al profilo dell'istanza IAM o al ruolo del servizio IAM, SSM Agent sul nodo gestito perde la connettività al servizio Systems Manager nel cloud. Tuttavia, può essere necessaria fino a 1 ora prima che una connessione venga interrotta dopo la rimozione dell'autorizzazione. Si tratta dello stesso comportamento che si verifica quando il ruolo dell'istanza IAM o il ruolo del servizio IAM vengono eliminati.

**Per aggiungere le autorizzazioni Session Manager per il ruolo dell'istanza per un ruolo esistente (console)**

1. Accedi Console di gestione AWS e apri la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Nel riquadro di navigazione, seleziona **Ruoli**.

1. Seleziona il nome del ruolo al quale desideri aggiungere le autorizzazioni.

1. Scegli la scheda **Autorizzazioni**.

1. Scegli **Aggiungi autorizzazioni**, quindi scegli **Aggiungi policy inline**.

1. Scegli la scheda **JSON**.

1. Sostituisci il contenuto predefinito della policy con il seguente. Sostituisci *key-name* con l'Amazon Resource Name (ARN) della AWS Key Management Service chiave (AWS KMS key) che desideri utilizzare.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "ssmmessages:CreateControlChannel",
                   "ssmmessages:CreateDataChannel",
                   "ssmmessages:OpenControlChannel",
                   "ssmmessages:OpenDataChannel"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetEncryptionConfiguration"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt"
               ],
               "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-name"
           }
       ]
   }
   ```

------

   Per ulteriori informazioni sull'utilizzo di una chiave KMS per crittografare i dati della sessione, consulta [Attiva la crittografia delle chiavi KMS per i dati delle sessioni (console)](session-preferences-enable-encryption.md).

   Se non intendi utilizzare la AWS KMS crittografia per i dati della sessione, puoi rimuovere i seguenti contenuti dalla policy.

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

1. Scegli **Successivo: Tag**.

1. (Facoltativo) Aggiungi i tag scegliendo **Aggiungi tag** e inserendo i tag preferiti per la policy.

1. Seleziona **Next: Revisione**.

1. Nella pagina **Rivedi policy**, per l'opzione **Nome** specifica un nome per la policy inline, ad esempio **SessionManagerPermissions**.

1. (Facoltativo) In **Descrizione**, inserisci una descrizione per la policy. 

   Scegli **Crea policy**.

Per informazioni sulle operazioni `ssmmessages`, consulta [Referenza: ec2messages, ssmmessages e altre operazioni API](systems-manager-setting-up-messageAPIs.md).

# Creare un ruolo IAM personalizzato per Session Manager
<a name="getting-started-create-iam-instance-profile"></a>

Puoi creare un ruolo AWS Identity and Access Management (IAM) che conceda Session Manager l'autorizzazione a eseguire azioni sulle istanze gestite di Amazon EC2. Puoi anche includere una politica per concedere le autorizzazioni necessarie per l'invio dei log di sessione ad Amazon Simple Storage Service (Amazon S3) e Amazon Logs. CloudWatch 

Dopo aver creato il ruolo IAM, per informazioni su come associare il ruolo a un'istanza, consulta [Allega o sostituisci un profilo di istanza](https://aws.amazon.com/premiumsupport/knowledge-center/attach-replace-ec2-instance-profile/) sul sito Web. AWS re:Post Per ulteriori informazioni sui profili e i ruoli delle istanze IAM, consulta [Utilizzo di profili di istanze](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) nella *Guida per l'utente IAM* e [Ruoli IAM per Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html) nella *Guida per l’utente di Amazon Elastic Compute Cloud per istanze Linux*. Per ulteriori informazioni sulla creazione di un ruolo di servizio IAM per macchine on-premises, consulta [Creazione di un ruolo di servizio IAM richiesto per System Manager in ambiente ibrido e multicloud](https://docs.aws.amazon.com/systems-manager/latest/userguide/hybrid-multicloud-service-role.html).

**Topics**
+ [Creazione di un ruolo IAM con le autorizzazioni minime per il Session Manager (console)](#create-iam-instance-profile-ssn-only)
+ [Creazione di un ruolo IAM con autorizzazioni per Amazon S3 Session Manager CloudWatch e Logs (console)](#create-iam-instance-profile-ssn-logging)

## Creazione di un ruolo IAM con le autorizzazioni minime per il Session Manager (console)
<a name="create-iam-instance-profile-ssn-only"></a>

Utilizza la procedura seguente per creare un ruolo IAM personalizzato con una policy che fornisce solo le autorizzazioni per le operazioni del Session Manager sulle tue istanze.

**Per creare un profilo dell'istanza con autorizzazioni minime per il Session Manager (console)**

1. Accedi Console di gestione AWS e apri la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Nel pannello di navigazione, scegli **Policy** e **Crea policy**. (Se viene visualizzato il pulsante **Inizia**, sceglierlo, quindi scegli **Crea policy**).

1. Scegli la scheda **JSON**.

1. Sostituire il contenuto di default con la seguente policy. Per crittografare i dati della sessione utilizzando AWS Key Management Service (AWS KMS), sostituiscili *key-name* con l'Amazon Resource Name (ARN) che desideri utilizzare. AWS KMS key 
**Nota**  
Se l'`ssmmessages:OpenControlChannel`autorizzazione viene rimossa dalle policy allegate al profilo dell'istanza IAM o al ruolo del servizio IAM, SSM Agent sul nodo gestito perde la connettività al servizio Systems Manager nel cloud. Tuttavia, può essere necessaria fino a 1 ora prima che una connessione venga interrotta dopo la rimozione dell'autorizzazione. Si tratta dello stesso comportamento che si verifica quando il ruolo dell'istanza IAM o il ruolo del servizio IAM vengono eliminati.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "ssm:UpdateInstanceInformation",
                   "ssmmessages:CreateControlChannel",
                   "ssmmessages:CreateDataChannel",
                   "ssmmessages:OpenControlChannel",
                   "ssmmessages:OpenDataChannel"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt"
               ],
               "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-name"
           }
       ]
   }
   ```

------

   Per ulteriori informazioni sull'utilizzo di una chiave KMS per crittografare i dati della sessione, consulta [Attiva la crittografia delle chiavi KMS per i dati delle sessioni (console)](session-preferences-enable-encryption.md).

   Se non intendi utilizzare la AWS KMS crittografia per i dati della sessione, puoi rimuovere i seguenti contenuti dalla policy.

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

1. Scegli **Successivo: Tag**.

1. (Facoltativo) Aggiungi i tag scegliendo **Aggiungi tag** e inserendo i tag preferiti per la policy.

1. Seleziona **Next: Revisione**.

1. Nella pagina **Rivedi policy**, per l'opzione **Nome** specifica un nome per la policy inline, ad esempio **SessionManagerPermissions**.

1. (Facoltativo) In **Descrizione**, inserisci una descrizione per la policy. 

1. Scegliere **Create Policy (Crea policy)**.

1. Nel pannello di navigazione, scegli **Ruoli** e quindi **Crea ruolo**.

1. Sulla pagina **Crea ruolo**, scegli **AWS servizio**, e per **Caso d'uso**, scegli **EC2**.

1. Scegli **Next (Successivo)**.

1. Nella pagina **Aggiungi autorizzazioni**, seleziona la casella di controllo a sinistra del nome della policy appena creata, ad esempio **SessionManagerPermissions**.

1. Scegli **Next (Successivo)**.

1. Nella pagina **Rinomina, revisione e creazione**, per **Nome ruolo** immettere un nome per il ruolo IAM, ad esempio **MySessionManagerRole**.

1. (Facoltativo) Per **Descrizione ruolo**, immetti una descrizione per il profilo dell'istanza. 

1. (Facoltativo) Aggiungi i tag scegliendo **Aggiungi tag** e inserendo i tag preferiti per il ruolo.

   Scegli **Crea ruolo**.

Per informazioni sulle operazioni di `ssmmessages`, consulta [Referenza: ec2messages, ssmmessages e altre operazioni API](systems-manager-setting-up-messageAPIs.md).

## Creazione di un ruolo IAM con autorizzazioni per Amazon S3 Session Manager CloudWatch e Logs (console)
<a name="create-iam-instance-profile-ssn-logging"></a>

Utilizza la procedura seguente per creare un ruolo IAM personalizzato con una policy che fornisce le autorizzazioni per le operazioni del Session Manager sulle tue istanze. La policy fornisce anche le autorizzazioni necessarie per l'archiviazione dei log di sessione nei bucket Amazon Simple Storage Service (Amazon S3) e nei gruppi di log Amazon Logs. CloudWatch 

**Importante**  
Per eseguire l'output dei log di sessione su un bucket Amazon S3 appartenente a un Account AWS diverso, devi aggiungere l'autorizzazione `s3:PutObjectAcl` alla policy del ruolo IAM. Inoltre, devi assicurarti che la policy del bucket conceda l'accesso multi-account al ruolo IAM utilizzato dall'account proprietario per concedere le autorizzazioni di Systems Manager per le istanze gestite. Se il bucket utilizza la crittografia Key Management Service (KMS), anche la policy KMS del bucket deve concedere questo accesso multi-account. Per ulteriori informazioni sulla configurazione di autorizzazioni del bucket multi-account in Amazon S3, consulta [Concessione di autorizzazioni del bucket multi-account](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-walkthroughs-managing-access-example2.html) nella *Guida per l'utente di Amazon Simple Storage Service*. Se queste autorizzazioni multi-account non vengono aggiunte, l'account proprietario del bucket Amazon S3 non è in grado di accedere ai log di output della sessione.

Per informazioni su come specificare le preferenze di archiviazione per i log delle sessioni, consulta [Abilitazione e disabilitazione della registrazione di sessione](session-manager-logging.md).

**Per creare un ruolo IAM con autorizzazioni per Amazon S3 Session Manager CloudWatch e Logs (console)**

1. Accedi Console di gestione AWS e apri la console IAM all'indirizzo. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

1. Nel pannello di navigazione, scegli **Policy** e **Crea policy**. (Se viene visualizzato il pulsante **Inizia**, sceglierlo, quindi scegli **Crea policy**).

1. Scegli la scheda **JSON**.

1. Sostituire il contenuto di default con la seguente policy. Sostituisci ogni *example resource placeholder* con le tue informazioni.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "ssmmessages:CreateControlChannel",
                   "ssmmessages:CreateDataChannel",
                   "ssmmessages:OpenControlChannel",
                   "ssmmessages:OpenDataChannel",
                   "ssm:UpdateInstanceInformation"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogStream",
                   "logs:PutLogEvents",
                   "logs:DescribeLogGroups",
                   "logs:DescribeLogStreams"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:PutObject"
               ],
               "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/s3-prefix/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetEncryptionConfiguration"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt"
               ],
               "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-name"
           },
           {
               "Effect": "Allow",
               "Action": "kms:GenerateDataKey",
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Scegli **Successivo: Tag**.

1. (Facoltativo) Aggiungi i tag scegliendo **Aggiungi tag** e inserendo i tag preferiti per la policy.

1. Seleziona **Next: Revisione**.

1. Nella pagina **Rivedi policy**, per l'opzione **Nome** specifica un nome per la policy inline, ad esempio **SessionManagerPermissions**.

1. (Facoltativo) In **Descrizione**, inserisci una descrizione per la policy. 

1. Scegliere **Create Policy (Crea policy)**.

1. Nel pannello di navigazione, scegli **Ruoli** e quindi **Crea ruolo**.

1. Sulla pagina **Crea ruolo**, scegli **AWS servizio**, e per **Caso d'uso**, scegli **EC2**.

1. Scegli **Next (Successivo)**.

1. Nella pagina **Aggiungi autorizzazioni**, seleziona la casella di controllo a sinistra del nome della policy appena creata, ad esempio **SessionManagerPermissions**.

1. Scegli **Next (Successivo)**.

1. Nella pagina **Rinomina, revisione e creazione**, per **Nome ruolo** immettere un nome per il ruolo IAM, ad esempio **MySessionManagerRole**.

1. (Facoltativo) In **Descrizione del ruolo**, immetti una descrizione per il nuovo ruolo. 

1. (Facoltativo) Aggiungi i tag scegliendo **Aggiungi tag** e inserendo i tag preferiti per il ruolo.

1. Scegli **Crea ruolo**.

# Fase 3: Controlla l'accesso della sessione ai nodi gestiti
<a name="session-manager-getting-started-restrict-access"></a>

Puoi concedere o revocare Session Manager l'accesso ai nodi gestiti utilizzando le policy AWS Identity and Access Management (IAM). È possibile creare una policy e collegarla a un utente o gruppo IAM che specifichi a quali nodi gestiti l'utente o il gruppo può connettersi. È possibile anche specificare le operazioni API Session Manager che l'utente o i gruppi possono eseguire su tali nodi gestiti. 

Per aiutarti a iniziare a usare le policy di autorizzazione IAM per Session Manager, abbiamo creato policy di esempio per un utente finale e un utente amministratore. È possibile utilizzare queste policy solo con modifiche minori. Oppure è possibile usarle come guida per creare policy IAM personalizzate. Per ulteriori informazioni, consulta [Policy IAM di esempio per Session Manager](getting-started-restrict-access-quickstart.md). Per informazioni su come creare policy IAM e collegarle a utenti o gruppi, consulta le pagine [Creazione di policy IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) e [Aggiunta e rimozione di policy IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) nella *Guida per l'utente di IAM*.

**Informazioni sui formati ARN degli ID di sessione**  
Quando crei una policy IAM per l'accesso di Session Manager, specifichi un ID di sessione come parte del nome della risorsa Amazon (ARN). L'ID di sessione include il nome utente come variabile. A scopo illustrativo, ecco il formato di un ARN di Session Manager e un esempio: 

```
arn:aws:ssm:region-id:account-id:session/session-id
```

Esempio:

```
arn:aws:ssm:us-east-2:123456789012:session/JohnDoe-1a2b3c4d5eEXAMPLE
```

Per ulteriori informazioni sull'utilizzo delle variabili nelle policy IAM, consulta [Elementi delle policy IAM: variabili](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html). 

**Topics**
+ [Avviare una sessione di shell predefinita specificando il documento di sessione predefinito nelle policy IAM](getting-started-default-session-document.md)
+ [Avviare una sessione con un documento specificando i documenti di sessione nelle policy IAM](getting-started-specify-session-document.md)
+ [Policy IAM di esempio per Session Manager](getting-started-restrict-access-quickstart.md)
+ [Altre policy IAM di esempio per Session Manager](getting-started-restrict-access-examples.md)

# Avviare una sessione di shell predefinita specificando il documento di sessione predefinito nelle policy IAM
<a name="getting-started-default-session-document"></a>

Quando si configura Session Manager per Account AWS o quando si modificano le preferenze di sessione nella console Systems Manager, il sistema crea un documento di sessione SSM chiamato`SSM-SessionManagerRunShell`. Questo è il documento di sessione predefinito. Session Manager utilizza questo documento per memorizzare le preferenze di sessione, che includono informazioni come le seguenti:
+ Una posizione in cui desideri salvare i dati della sessione, ad esempio un bucket Amazon Simple Storage Service (Amazon S3) o un gruppo di log CloudWatch Amazon Logs.
+ Un ID chiave AWS Key Management Service (AWS KMS) per crittografare i dati della sessione.
+ Se il supporto Run As è consentito o meno per le sessioni.

Ecco un esempio delle informazioni contenute nel documento sulle preferenze di sessione `SSM-SessionManagerRunShell`.

```
{
  "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": "MyCWLogGroup",
    "cloudWatchEncryptionEnabled": false,
    "kmsKeyId": "1a2b3c4d",
    "runAsEnabled": true,
    "runAsDefaultUser": "RunAsUser"
  }
}
```

Per impostazione predefinita, Session Manager utilizza il documento di sessione predefinito quando un utente avvia una sessione dalla Console di gestione AWS. Questo vale Fleet Manager sia Session Manager per la console Systems Manager che per EC2 Connect nella console Amazon EC2. Session Managerutilizza anche il documento di sessione predefinito quando un utente avvia una sessione utilizzando un AWS CLI comando come nell'esempio seguente:

```
aws ssm start-session \
    --target i-02573cafcfEXAMPLE
```

Per accedere alla sessione di shell predefinita, è necessario specificare il documento di sessione predefinito nella policy IAM, come mostrato nell'esempio seguente.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "EnableSSMSession",
      "Effect": "Allow",
      "Action": [
        "ssm:StartSession"
      ],
      "Resource": [
        "arn:aws:ec2:us-east-1:111122223333:instance/instance-id",
        "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "ssmmessages:OpenDataChannel"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

------

# Avviare una sessione con un documento specificando i documenti di sessione nelle policy IAM
<a name="getting-started-specify-session-document"></a>

Se utilizzi il comando [start-session](https://docs.aws.amazon.com/cli/latest/reference/ssm/start-session.html) della AWS CLI utilizzando il documento di sessione predefinito, puoi omettere il nome del documento. Il sistema richiama automaticamente il documento di sessione `SSM-SessionManagerRunShell`.

In tutti gli altri casi, devi specificare un valore per il parametro `document-name`. Quando un utente specifica il nome di un documento di sessione in un comando, i sistemi controllano la policy IAM per verificare che dispongano dell'autorizzazione ad accedere al documento. Se non dispongono dell'autorizzazione, la richiesta di connessione non riesce. Gli esempi seguenti includono il parametro `document-name` con il documento di sessione `AWS-StartPortForwardingSession`.

```
aws ssm start-session \
    --target i-02573cafcfEXAMPLE \
    --document-name AWS-StartPortForwardingSession \
    --parameters '{"portNumber":["80"], "localPortNumber":["56789"]}'
```

Per un esempio di come specificare un documento di sessione Session Manager in una policy IAM, consulta [Policy di avvio rapido per utenti finali per Session Manager](getting-started-restrict-access-quickstart.md#restrict-access-quickstart-end-user).

**Nota**  
Per avviare una sessione con SSH, le fasi di configurazione devono essere completate sul nodo gestito di destinazione *e* sul computer locale dell'utente. Per informazioni, consulta [(Facoltativo) Abilitare e controllare le autorizzazioni per le connessioni SSH tramite Session Manager](session-manager-getting-started-enable-ssh-connections.md).

# Policy IAM di esempio per Session Manager
<a name="getting-started-restrict-access-quickstart"></a>

Usa gli esempi in questa sezione per aiutarti a creare policy AWS Identity and Access Management (IAM) che forniscano le autorizzazioni di Session Manager accesso più comunemente necessarie. 

**Nota**  
Puoi anche utilizzare una AWS KMS key policy per controllare a quali entità IAM (utenti o ruoli) Account AWS viene concesso l'accesso alla tua chiave KMS. Per informazioni, consulta [Panoramica sulla gestione dell'accesso alle AWS KMS risorse](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html) e sull'[utilizzo delle politiche chiave AWS KMS nella](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) *Guida per gli AWS Key Management Service sviluppatori*.

**Topics**
+ [Policy di avvio rapido per utenti finali per Session Manager](#restrict-access-quickstart-end-user)
+ [Policy di avvio rapido per amministratori per Session Manager](#restrict-access-quickstart-admin)

## Policy di avvio rapido per utenti finali per Session Manager
<a name="restrict-access-quickstart-end-user"></a>

Utilizzare gli esempi seguenti per creare policy IAM per l'utente finale per Session Manager. 

Puoi creare una policy che consenta agli utenti di avviare sessioni solo dalla Session Manager console e AWS Command Line Interface (AWS CLI), solo dalla console Amazon Elastic Compute Cloud (Amazon EC2) o da tutte e tre.

Queste policy offrono agli utenti finali la possibilità di avviare una sessione per una determinato nodo gestito nonché la possibilità di terminare solo le proprie sessioni. Per alcuni esempi di personalizzazioni che potresti applicare alla policy, fai riferimento a [Altre policy IAM di esempio per Session Manager](getting-started-restrict-access-examples.md).

Nei seguenti esempi di policy, sostituisci ognuna *example resource placeholder* con le tue informazioni. 

Scegliere una delle seguenti schede per visualizzare e policy di esempio per l'intervallo di accesso alla sessione che si desidera fornire.

------
#### [ Session Manager and Fleet Manager ]

Utilizzare questa policy di esempio per fornire agli utenti la possibilità di avviare e riprendere sessioni solo dalle console Session Manager e Fleet Manager. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:instance/i-02573cafcfEXAMPLE",
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
        },
        {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       },
        {
            "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"
            ],
            "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-name"
        }
    ]
}
```

------

------
#### [ Amazon EC2 ]

Utilizzare questa policy di esempio per fornire agli utenti la possibilità di avviare e riprendere sessioni solo dalla console Amazon EC2. Questa policy non fornisce tutte le autorizzazioni necessarie per avviare le sessioni dalla console Session Manager e dall' AWS CLI.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession",
                "ssm:SendCommand"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:instance/i-02573cafcfEXAMPLE",
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
        },
        {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:GetConnectionStatus",
                "ssm:DescribeInstanceInformation"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:TerminateSession",
                "ssm:ResumeSession"
            ],
            "Resource": [
                "arn:aws:ssm:*:*:session/${aws:username}-*"
            ]
        }
    ]
}
```

------

------
#### [ AWS CLI ]

Utilizzare questa policy di esempio per fornire agli utenti la possibilità di avviare e riprendere sessioni solo da AWS CLI.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession",
                "ssm:SendCommand"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:instance/i-02573cafcfEXAMPLE",
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
        },
        {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:TerminateSession",
                "ssm:ResumeSession"
            ],
            "Resource": [
                "arn:aws:ssm:*:*:session/${aws:userid}-*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey"
            ],
            "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-name"
        }
    ]
}
```

------

------

**Nota**  
`SSM-SessionManagerRunShell` è il nome predefinito del documento SSM creato da Session Manager per archiviare le preferenze di configurazione della sessione. Puoi creare un documento di sessione personalizzato e specificarlo in questa policy. Puoi anche specificare il documento `AWS-StartSSHSession` fornito da AWS per gli utenti che avviano le sessioni mediante SSH. Per informazioni sui passi di configurazione necessari per supportare le sessioni utilizzando SSH, consulta [(Facoltativo) Permettere e controllare le autorizzazioni per le connessioni SSH tramite Session Manager](session-manager-getting-started-enable-ssh-connections.md).  
L'autorizzazione `kms:GenerateDataKey` consente la creazione di una chiave di crittografia dei dati che verrà utilizzata per crittografare i dati delle sessioni. Se utilizzerai la crittografia AWS Key Management Service (AWS KMS) per i dati della sessione, *key-name* sostituiscila con l'Amazon Resource Name (ARN) della chiave KMS che desideri utilizzare, nel formato. `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-12345EXAMPLE` Se non utilizzi la crittografia delle chiavi KMS per i dati delle sessioni, rimuovi i seguenti contenuti dalla policy:  

```
{
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey"
            ],
            "Resource": "key-name"
        }
```
Per informazioni sull'utilizzo AWS KMS per crittografare i dati della sessione, consulta. [Attiva la crittografia delle chiavi KMS per i dati delle sessioni (console)](session-preferences-enable-encryption.md)  
L'autorizzazione per [https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_SendCommand.html](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_SendCommand.html) è necessaria nei casi in cui un utente tenta di avviare una sessione dalla console Amazon EC2, ma bisogna prima aggiornare l'SSM Agent alla versione minima richiesta per Session Manager. Run Command viene utilizzato per inviare un comando all'istanza per aggiornare l'agente.

## Policy di avvio rapido per amministratori per Session Manager
<a name="restrict-access-quickstart-admin"></a>

Utilizzare gli esempi seguenti per creare policy di amministratore IAM per Session Manager. 

Queste policy offrono agli amministratori la possibilità di avviare una sessione per i nodi gestiti contrassegnati con il tag `Key=Finance,Value=WebServers`, l'autorizzazione di creare, aggiornare ed eliminare le preferenze nonché l'autorizzazione di terminare solo le proprie sessioni. Per alcuni esempi di personalizzazioni che potresti applicare alla policy, fai riferimento a [Altre policy IAM di esempio per Session Manager](getting-started-restrict-access-examples.md).

Puoi creare una policy che consenta agli amministratori di eseguire queste attività solo dalla Session Manager console e AWS CLI, solo dalla console Amazon EC2, o da tutte e tre.

Nei seguenti esempi di policy, sostituisci ognuna *example resource placeholder* con le tue informazioni. 

Scegliere una delle seguenti schede per visualizzare le policy di esempio per lo scenario di accesso che si desidera supportare.

------
#### [ Session Manager and CLI ]

Utilizzare questa policy di esempio per fornire agli amministratori del provider la possibilità di eseguire processi correlati alla sessione solo dalla console Session Manager e dall' AWS CLI. Questa policy non fornisce tutte le autorizzazioni necessarie per eseguire processi correlati alla sessione dalla console Amazon EC2.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession"
            ],
            "Resource": [
                "arn:aws:ec2:*:111122223333:instance/*"
            ],
            "Condition": {
                "StringLike": {
                    "ssm:resourceTag/Finance": [
                        "WebServers"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssmmessages:OpenDataChannel"
            ],
            "Resource": [
                "arn:aws:ssm:*:*:session/${aws:userid}-*"
            ]
        },
        {
            "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:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssmmessages:OpenDataChannel"
            ],
            "Resource": [
                "arn:aws:ssm:*:*:session/${aws:userid}-*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:TerminateSession",
                "ssm:ResumeSession"
            ],
            "Resource": [
                "arn:aws:ssm:*:*:session/${aws:userid}-*"
            ]
        }
    ]
}
```

------

------
#### [ Amazon EC2 ]

Utilizzare questa policy di esempio per fornire agli amministratori del provider la possibilità di eseguire processi correlati alla sessione solo dalla console Amazon EC2 Questa policy non fornisce tutte le autorizzazioni necessarie per eseguire attività correlate alla sessione dalla console Session Manager e dall' AWS CLI.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession",
                "ssm:SendCommand"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:instance/*"
            ],
            "Condition": {
                "StringLike": {
                    "ssm:resourceTag/tag-key": [
                        "tag-value"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
        },
        {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       },
        {
            "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 ]

Utilizzare questa policy di esempio per fornire agli amministratori del provider la possibilità di eseguire processi relativi alla sessione dalla console Session Manager, dall' AWS CLI e dalla console Amazon EC2.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession",
                "ssm:SendCommand"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:instance/*"
            ],
            "Condition": {
                "StringLike": {
                    "ssm:resourceTag/tag-key": [
                        "tag-value"
                    ]
                }
            }
        },
        {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       },
        {
            "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:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:TerminateSession",
                "ssm:ResumeSession"
            ],
            "Resource": [
                "arn:aws:ssm:*:*:session/${aws:userid}-*"
            ]
        }
    ]
}
```

------

------

**Nota**  
L'autorizzazione per [https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_SendCommand.html](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_SendCommand.html) è necessaria nei casi in cui un utente tenta di avviare una sessione dalla console Amazon EC2, ma prima bisogna inviare un comando per aggiornare SSM Agent.

# Altre policy IAM di esempio per Session Manager
<a name="getting-started-restrict-access-examples"></a>

Fai riferimento alle seguenti policy di esempio per creare una policy IAM AWS Identity and Access Management personalizzata per qualunque scenario di accesso utente al Session Manager che desideri supportare.

**Topics**
+ [Esempio 1: concedere l'accesso ai documenti nella console](#grant-access-documents-console-example)
+ [Esempio 2: limitare l'accesso a nodi gestiti specifici](#restrict-access-example-instances)
+ [Esempio 3: limitazione dell'accesso in base ai tag](#restrict-access-example-instance-tags)
+ [Esempio 4: consentire agli utenti di terminare solo le sessioni da essi avviate](#restrict-access-example-user-sessions)
+ [Esempio 5: consentire l'accesso (amministrativo) completo a tutte le sessioni](#restrict-access-example-full-access)

## Esempio 1: concedere l'accesso ai documenti nella console
<a name="grant-access-documents-console-example"></a>

Puoi consentire agli utenti di specificare un documento personalizzato quando avviano una sessione utilizzando la console di Session Manager. Nel seguente esempio, la policy IAM concede l'autorizzazione ad accedere ai documenti con nomi che iniziano con **SessionDocument-** nella Regione AWS e nell’ Account AWS specificati.

Per utilizzare questa politica, sostituisci ognuna *example resource placeholder* con le tue informazioni.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:GetDocument",
                "ssm:ListDocuments"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/SessionDocument-*"
            ]
        }
    ]
}
```

------

**Nota**  
La console di Session Manager supporta solo i documenti di sessione che hanno un `sessionType` di `Standard_Stream` e che vengono utilizzati per definire le preferenze di sessione. Per ulteriori informazioni, consulta [Schema documento di sessione](session-manager-schema.md).

## Esempio 2: limitare l'accesso a nodi gestiti specifici
<a name="restrict-access-example-instances"></a>

È possibile creare una policy IAM che definisca a quali nodi gestiti un utente può connettersi utilizzando Session Manager. Ad esempio, la seguente policy concede a un utente il permesso di avviare, terminare e riprendere le sessioni su tre nodi specifici. La policy impedisce all'utente di connettersi a nodi diversi da quelli specificati.

**Nota**  
Per utenti federati, consulta [Esempio 4: consentire agli utenti di terminare solo le sessioni da essi avviate](#restrict-access-example-user-sessions).

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

****  

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

------

## Esempio 3: limitazione dell'accesso in base ai tag
<a name="restrict-access-example-instance-tags"></a>

Puoi limitare l'accesso ai nodi gestiti in base a tag specifici. Nell'esempio seguente, l'utente può avviare e riprendere le sessioni (`Effect: Allow, Action: ssm:StartSession, ssm:ResumeSession`) su qualsiasi nodo gestito (`Resource: arn:aws:ec2:region:987654321098:instance/*`) a condizione che il nodo sia Finance WebServer (`ssm:resourceTag/Finance: WebServer`). Se l'utente invia un comando a un nodo gestito senza tag o con un tag diverso da `Finance: WebServer`, il risultato del comando includerà `AccessDenied`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession"
            ],
            "Resource": [
                "arn:aws:ec2:us-east-1:111122223333:instance/*"
            ],
            "Condition": {
                "StringLike": {
                    "ssm:resourceTag/Finance": [
                        "WebServers"
                    ]
                }
            }
        },
        {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       },
        {
            "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-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
        }
    ]
}
```

------

Puoi creare policy IAM che permettono a un utente di avviare sessioni su nodi gestiti contrassegnati con più tag. La seguente policy consente all'utente di avviare sessioni su nodi gestiti a cui sono applicati entrambi i tag specificati. Se l'utente invia un comando a un nodo gestito non contrassegnato con questi due tag, il risultato del comando includerà `AccessDenied`.

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

****  

```
{
   "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": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       },
      {
            "Effect": "Allow",
            "Action": [
                "ssm:StartSession"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell"
            ]
      }
   ]
}
```

------

Per ulteriori informazioni sulla creazione di policy IAM, consulta la pagina [Policy gestite e policy inline](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) nella *Guida per l'utente di IAM*. Per ulteriori informazioni sull'applicazione di tag a nodi gestiti, consulta [Applicazione di tag a risorse Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) nella *Guida per l'utente di Amazon EC2* (il contenuto si applica ai nodi gestiti di Windows e Linux). Per ulteriori informazioni su come aumentare la posizione di sicurezza rispetto ai comandi non autorizzati a livello di root nei nodi gestiti, consulta [Limitare l'accesso ai comandi a livello di root tramite SSM Agent](ssm-agent-restrict-root-level-commands.md)

## Esempio 4: consentire agli utenti di terminare solo le sessioni da essi avviate
<a name="restrict-access-example-user-sessions"></a>

Session Managerfornisce due metodi per controllare quali sessioni può terminare un utente federato dell'utente. Account AWS 
+ Utilizza la variabile `{aws:userid}` in una politica di autorizzazioni AWS Identity and Access Management (IAM). Gli utenti federati possono terminare solo le sessioni da essi avviate. Per gli utenti non federati, utilizzare il Metodo 1. Per gli utenti federati, utilizzare il Metodo 2.
+ Utilizza i tag forniti dai AWS tag in una politica di autorizzazioni IAM. Nella policy deve essere inclusa una condizione che consenta agli utenti di terminare solo le sessioni contrassegnate con tag specifici forniti da AWS. Questo metodo funziona per tutti gli account, compresi quelli che utilizzano federated IDs per concedere l'accesso a. AWS

### Metodo 1: concedere TerminateSession i privilegi utilizzando la variabile `{aws:username}`
<a name="restrict-access-example-user-sessions-username"></a>

La seguente policy IAM consente a un utente IDs di visualizzare tutte le sessioni del tuo account. Tuttavia, gli utenti possono interagire con i nodi gestiti solo attraverso le sessioni da loro avviate. Un utente a cui è assegnata la seguente policy non può terminare o connettersi alle sessioni di altri utenti. A tale scopo, la policy utilizza la variabile `{aws:username}`.

**Nota**  
Questo metodo non funziona per gli account che concedono l'accesso all' AWS utilizzo di federated. IDs

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

****  

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

------

### Metodo 2: concedere TerminateSession i privilegi utilizzando i tag forniti da AWS
<a name="restrict-access-example-user-sessions-tags"></a>

È possibile controllare le sessioni che un utente può terminare includendo variabili di chiave tag condizionali in una policy IAM. La condizione specifica che l'utente può terminare solo le sessioni che sono contrassegnate con una o entrambe queste specifiche variabili chiave tag e un valore specificato.

Quando un utente Account AWS inizia una sessione, Session Manager applica due tag di risorsa alla sessione. Il primo tag risorsa è `aws:ssmmessages:target-id`, con il quale si specifica l'ID della destinazione che l'utente può terminare. L'altro tag risorsa è `aws:ssmmessages:session-id`, con un valore nel formato di `role-id:caller-specified-role-name`.

**Nota**  
Session Manager non supporta i tag personalizzati per questa policy di controllo dell'accesso IAM. È necessario utilizzare i tag di risorsa forniti da AWS, descritti di seguito. 

 ** `aws:ssmmessages:target-id` **   
Con questa chiave di tag, è possibile includere l'ID del nodo gestito come valore nella policy. Nel seguente blocco della policy, l'istruzione di condizione consente a un utente di terminare solo il nodo i-02573cafcfEXAMPLE.    
****  

```
{
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Action": [
                "ssm:TerminateSession"
             ],
             "Resource": "*",
             "Condition": {
                 "StringLike": {
                     "ssm:resourceTag/aws:ssmmessages:target-id": [
                        "i-02573cafcfEXAMPLE"
                     ]
                 }
             }
         }
     ]
}
```
Se l'utente tenta di terminare una sessione per la quale non è stata concessa questa autorizzazione `TerminateSession`, viene visualizzato un errore `AccessDeniedException`.

 ** `aws:ssmmessages:session-id` **   
Questa chiave tag include una variabile per l'ID di sessione come valore nella richiesta di avviare una sessione.  
Nell'esempio seguente viene illustrata una policy per i casi in cui il tipo di chiamante è `User`. Il valore fornito per `aws:ssmmessages:session-id` è l'ID dell'utente. In questo esempio, `AIDIODR4TAW7CSEXAMPLE` rappresenta l'ID di un utente nel tuo Account AWS. Per recuperare l'ID di un utente nel tuo Account AWS, usa il comando IAM,`get-user`. Per informazioni, consulta [get-user](https://docs.aws.amazon.com/IAM/latest/UserGuide/get-user.html) nella AWS Identity and Access Management sezione della *IAM* User Guide.     
****  

```
{
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Action": [
                "ssm:TerminateSession"
             ],
             "Resource": "*",
             "Condition": {
                 "StringLike": {
                     "ssm:resourceTag/aws:ssmmessages:session-id": [
                        "AIDIODR4TAW7CSEXAMPLE"
                     ]
                 }
             }
         }
     ]
}
```
Nell'esempio seguente viene illustrata una policy per i casi in cui il tipo di chiamante è `AssumedRole`. Puoi utilizzare la variabile `{aws:userid}` per il valore da fornire per `aws:ssmmessages:session-id`. In alternativa, è possibile codificare un ID ruolo per il valore specificato per `aws:ssmmessages:session-id`. Se codifichi un ID ruolo, devi specificare il valore nel formato `role-id:caller-specified-role-name`. Ad esempio, `AIDIODR4TAW7CSEXAMPLE:MyRole`.  
Per applicare i tag di sistema, l'ID ruolo fornito può contenere solo i seguenti caratteri: lettere Unicode, 0-9, spazio, `_`, `.`, `:`, `/`, `=`, `+`, `-`, `@` e `\`.
Per recuperare l'ID del ruolo per un ruolo nel tuo Account AWS, usa il comando. `get-caller-identity` Per informazioni, consulta [get-caller-identity](https://docs.aws.amazon.com/cli/latest/reference/sts/get-caller-identity.html)la sezione AWS CLI Command Reference.     
****  

```
{
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
             "Effect": "Allow",
             "Action": [
                "ssm:TerminateSession"
             ],
             "Resource": "*",
             "Condition": {
                 "StringLike": {
                     "ssm:resourceTag/aws:ssmmessages:session-id": [
                        "${aws:userid}*"
                     ]
                 }
             }
         }
     ]
}
```
Se un utente tenta di terminare una sessione per la quale non è stata concessa questa autorizzazione `TerminateSession`, viene visualizzato un errore `AccessDeniedException`.

**`aws:ssmmessages:target-id`** e **`aws:ssmmessages:session-id`**  
È inoltre possibile creare policy IAM che permettono a un utente di terminare sessioni contrassegnate con entrambi i tag di sistema, come illustrato in questo esempio.    
****  

```
{
   "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}*"
               ]
            }
         }
      }
   ]
}
```

## Esempio 5: consentire l'accesso (amministrativo) completo a tutte le sessioni
<a name="restrict-access-example-full-access"></a>

La seguente policy IAM consente a un utente di interagire con tutti i nodi gestiti e tutte le sessioni create da tutti gli utenti per tutti i nodi. Dovrebbe essere concessa solo a un amministratore che ha bisogno del controllo completo sulle attività del Session Manager della tua organizzazione.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "ssm:StartSession",
                "ssm:TerminateSession",
                "ssm:ResumeSession",
                "ssm:DescribeSessions",
                "ssm:GetConnectionStatus"
            ],
            "Effect": "Allow",
            "Resource": [
                "*"
            ]
        },
        {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
       }
    ]
}
```

------

# Fase 4: configurazione delle preferenze delle sessioni
<a name="session-manager-getting-started-configure-preferences"></a>

Gli utenti a cui sono state concesse le autorizzazioni amministrative nella propria policy AWS Identity and Access Management (IAM) possono configurare le preferenze di sessione, tra cui:
+ Attiva il supporto Esegui come per i nodi gestiti Linux. In questo modo è possibile avviare sessioni utilizzando le credenziali di un utente del sistema operativo specificato anziché le credenziali di un `ssm-user` account generato dal sistema che è AWS Systems Manager Session Manager possibile creare su un nodo gestito.
+ Configura Session Manager l'utilizzo della AWS KMS key crittografia per fornire una protezione aggiuntiva ai dati trasmessi tra le macchine client e i nodi gestiti.
+ Configura Session Manager per creare e inviare i log della cronologia delle sessioni a un bucket Amazon Simple Storage Service (Amazon S3) o a un gruppo di log Amazon Logs. CloudWatch I dati di log archiviati si utilizzano quindi per fornire rapporti sulle connessioni di sessione effettuate ai nodi gestiti e sui comandi eseguiti su di esse durante le sessioni.
+ Configura i timeout delle sessioni. È possibile utilizzare questa impostazione per specificare quando terminare una sessione dopo un periodo di inattività.
+ Configura Session Manager per utilizzare profili di shell configurabili. Questi profili personalizzabili permettono di definire le preferenze all'interno di sessioni quali le preferenze della shell, le variabili di ambiente, le directory di lavoro ed eseguire più comandi all'avvio di una sessione.

Per ulteriori informazioni sulle autorizzazioni necessarie per configurare le preferenze di Session Manager, consulta [Concedere o negare a un utente le autorizzazioni per aggiornare le preferenze del Session Manager](preference-setting-permissions.md).

**Topics**
+ [Concedere o negare a un utente le autorizzazioni per aggiornare le preferenze del Session Manager](preference-setting-permissions.md)
+ [Specificare un valore di timeout della sessione di inattività](session-preferences-timeout.md)
+ [Specifica la durata massima della sessione](session-preferences-max-timeout.md)
+ [Consenti profili shell configurabili](session-preferences-shell-config.md)
+ [Attiva Esegui come supporto per i nodi gestiti da Linux and macOS](session-preferences-run-as.md)
+ [Attiva la crittografia delle chiavi KMS per i dati delle sessioni (console)](session-preferences-enable-encryption.md)
+ [Creare un documento di preferenze di Session Manager (riga di comando)](getting-started-create-preferences-cli.md)
+ [Aggiornamento delle preferenze Session Manager (riga di comando)](getting-started-configure-preferences-cli.md)

Per informazioni sull'utilizzo della console di Systems Manager per configurare le opzioni per la registrazione dei dati di sessione, consulta i seguenti argomenti.
+  [Registrazione dei dati delle sessioni mediante Amazon S3 (console)](session-manager-logging-s3.md) 
+  [Streaming dei dati delle sessioni tramite Amazon CloudWatch Logs (console)](session-manager-logging-cwl-streaming.md) 
+  [Registrazione dei dati della sessione tramite Amazon CloudWatch Logs (console)](session-manager-logging-cloudwatch-logs.md) 

# Concedere o negare a un utente le autorizzazioni per aggiornare le preferenze del Session Manager
<a name="preference-setting-permissions"></a>

Le preferenze dell'account vengono archiviate come documenti AWS Systems Manager (SSM) per ciascuno Regione AWS di essi. Prima che un utente possa aggiornare le preferenze dell'account per le sessioni nel tuo account, deve disporre delle autorizzazioni necessarie per accedere al tipo di documento SSM in cui sono archiviate tali preferenze. Queste autorizzazioni vengono concesse tramite una policy AWS Identity and Access Management (IAM).

**Policy di amministratore per consentire la creazione e l'aggiornamento delle preferenze**  
Un amministratore può disporre della seguente policy per creare e aggiornare le preferenze in qualsiasi momento. La seguente policy concede l'autorizzazione per accedere e aggiornare il documento `SSM-SessionManagerRunShell` nell'account 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"
            ]
        }
    ]
}
```

------

**Policy utente per impedire che le preferenze vengano aggiornate**  
Utilizza la seguente policy per impedire agli utenti finali nel tuo account di aggiornare o sostituire le preferenze del 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"
            ]
        }
    ]
}
```

------

# Specificare un valore di timeout della sessione di inattività
<a name="session-preferences-timeout"></a>

Session Manager, uno strumento in AWS Systems Manager, consente di specificare il periodo di tempo necessario per consentire a un utente di rimanere inattivo prima che il sistema termini una sessione. Per impostazione predefinita, le sessioni scadono dopo 20 minuti di inattività. È possibile modificare questa impostazione per specificare il timeout di una sessione tra 1 e 60 minuti di inattività. Alcune agenzie di sicurezza informatica professionali consigliano di impostare i timeout delle sessioni inattive su un massimo di 15 minuti. 

Il timer di timeout della sessione inattiva si reimposta quando riceve input dal lato client. Session Manager Questi input includono, a titolo esemplificativo ma non esaustivo:
+ Inserimento da tastiera nel terminale
+ Eventi di ridimensionamento della finestra del terminale o del browser
+ Riconnessione della sessione (ResumeSession), che può verificarsi a causa di interruzioni di rete, gestione delle schede del browser o disconnessioni WebSocket 

Poiché questi eventi reimpostano il timer di inattività, una sessione potrebbe rimanere attiva più a lungo del periodo di timeout configurato anche senza comandi diretti dal terminale.

Se i requisiti di sicurezza impongono limiti rigorosi di durata delle sessioni indipendentemente dall'attività, utilizza l'impostazione *Durata massima della sessione* oltre al timeout di inattività. Per ulteriori informazioni, consulta [Specifica la durata massima della sessione](session-preferences-max-timeout.md).

**Per consentire il timeout della sessione inattiva (console)**

1. Apri la AWS Systems Manager console all'indirizzo. [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/)

1. Nel pannello di navigazione, scegli **Session Manager**.

1. Scegli la scheda **Preferenze**, quindi seleziona **Modifica**.

1. Specificare il periodo di tempo necessario per consentire a un utente di rimanere inattivo prima che una sessione finisca nel campo **minuti** in **tempo di inattività della sessione**.

1. Scegli **Save** (Salva).

# Specifica la durata massima della sessione
<a name="session-preferences-max-timeout"></a>

Session Manager, uno strumento in AWS Systems Manager, consente di specificare la durata massima di una sessione prima che termini. Per impostazione predefinita, le sessioni non hanno una durata massima. Il valore specificato per la durata massima della sessione deve essere compreso tra 1 e 1.440 minuti.

**Per specificare la durata massima della sessione (console)**

1. Apri la AWS Systems Manager console all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Nel pannello di navigazione, scegli **Session Manager**.

1. Scegli la scheda **Preferenze**, quindi seleziona **Modifica**.

1. Selezionare la casella di controllo accanto ad **Abilita la durata massima della sessione**.

1. Specificare la durata massima della sessione prima che finisca nel campo **minuti** sotto **Durata massima sessione**.

1. Scegli **Save** (Salva).

# Consenti profili shell configurabili
<a name="session-preferences-shell-config"></a>

Per impostazione predefinita, le sessioni sulle istanze EC2 per Linux iniziano utilizzando la shell Bourne (sh). Tuttavia, potresti usare un'altra shell come bash. Consentendo i profili di shell configurabili, è possibile personalizzare le preferenze all'interno di sessioni quali le preferenze della shell, le variabili di ambiente, le directory di lavoro ed eseguire più comandi all'avvio di una sessione.

**Importante**  
Systems Manager non controlla i comandi o gli script nel profilo della shell per vedere quali modifiche apporterebbero a un'istanza prima dell'esecuzione. Per limitare la capacità di un utente di modificare i comandi o gli script immessi nel profilo della shell, si consiglia quanto segue:  
Creare un documento personalizzato di tipo sessione per gli utenti e i ruoli AWS Identity and Access Management (IAM). Modificare quindi la policy IAM per questi utenti e ruoli in modo che l'operazione API `StartSession` possa utilizzare solo il documento di tipo sessione creato per loro. Per informazioni, consulta [Creare un documento di preferenze di Session Manager (riga di comando)](getting-started-create-preferences-cli.md) e [Policy di avvio rapido per utenti finali per Session Manager](getting-started-restrict-access-quickstart.md#restrict-access-quickstart-end-user).
Modifica la policy IAM per gli utenti e i ruoli IAM per negare l'accesso all'operazione API `UpdateDocument` per la risorsa documento di tipo sessione creata. Ciò consente agli utenti e ai ruoli di utilizzare il documento creato per le preferenze di sessione senza consentire loro di modificare alcuna delle impostazioni.

**Per attivare i profili di shell configurabili**

1. Apri la AWS Systems Manager console all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Nel pannello di navigazione, scegli **Session Manager**.

1. Scegli la scheda **Preferenze**, quindi seleziona **Modifica**.

1. Specifica le variabili di ambiente, le preferenze della shell o i comandi che si desidera eseguire all'avvio della sessione nei campi relativi ai sistemi operativi applicabili.

1. Scegli **Save** (Salva).

Di seguito sono riportati alcuni comandi di esempio che possono essere aggiunti al profilo della shell.

Passa alla shell bash e passa alla directory /usr sulle istanze Linux.

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

Invia un timestamp e un messaggio di benvenuto all'avvio di una sessione.

------
#### [ 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."
```

------

Visualizzare l'attività dinamica del sistema all'avvio di una sessione.

------
#### [ 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 "-------  ------    -----      ----- -----   ------     -- -----------"}
```

------

# Attiva Esegui come supporto per i nodi gestiti da Linux and macOS
<a name="session-preferences-run-as"></a>

Per impostazione predefinita, Session Manager autentica le connessioni utilizzando le credenziali di un account `ssm-user` generato dal sistema che viene creato su un nodo gestito. (Su computer Linux e macOS, l'account viene aggiunto a `/etc/sudoers/`). Se lo desideri, è possibile invece autenticare le sessioni utilizzando le credenziali di un account utente del sistema operativo (OS), oppure un utente di dominio per le istanze connesse a una Active Directory. In questo caso, Session Manager verifica che l'account dell'OS specificato esista nel nodo o nel dominio prima di iniziare la sessione. Se tenti di avviare una sessione utilizzando un account dell'OS che non esiste nel nodo, o in un dominio, la connessione non viene stabilita.

**Nota**  
Session Manager non supporta l'utilizzo di un account utente `root` del sistema operativo per autenticare le connessioni. Per le sessioni autenticate utilizzando un account utente del sistema operativo, le policy a livello di sistema operativo e di directory del nodo, come le restrizioni di accesso o le restrizioni sull'utilizzo delle risorse di sistema, potrebbero non essere applicabili. 

**Come funziona**  
Se attivi il supporto Esegui come per le sessioni, il sistema controlla le autorizzazioni di accesso come segue:

1. Per l'utente che avvia la sessione, all'entità IAM (utente o ruolo) è stato assegnato il tag `SSMSessionRunAs = os user account name`?

   Se Sì, il nome utente dell'OS esiste sul nodo gestito? In tal caso, avviare la sessione. In caso negativo, non consentire l'avvio di una sessione.

   Se l'entità IAM *non* è stata contrassegnata con `SSMSessionRunAs = os user account name`, continua con il passaggio 2.

1. Se l'entità IAM non è stata etichettata con`SSMSessionRunAs = os user account name`, è stato specificato un nome utente Account AWS del sistema operativo nelle Session Manager preferenze?

   Se Sì, il nome utente dell'OS esiste sul nodo gestito? In tal caso, avviare la sessione. In caso negativo, non consentire l'avvio di una sessione. 

**Nota**  
Quando attivi il supporto Esegui come, esso impedisce a Session Manager di avviare sessioni utilizzando l'account `ssm-user` su un nodo gestito. Ciò significa che se Session Manager non riesce a connettersi utilizzando l'account utente del sistema operativo specificato, non ricorre alla connessione utilizzando il metodo predefinito.   
Se attivi Esegui come senza specificare un account del sistema operativo o assegnare tag a un'entità IAM e non hai specificato un account del sistema operativo nelle preferenze di Session Manager, i tentativi di connessione alla sessione falliranno.

**Per attivare il supporto Esegui come per i nodi gestiti Linux e macOS**

1. Apri la AWS Systems Manager console all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Nel pannello di navigazione, scegli **Session Manager**.

1. Scegli la scheda **Preferenze**, quindi seleziona **Modifica**.

1. Seleziona la casella di controllo accanto a **Abilita supporto Esegui come per le istanze Linux**.

1. Esegui una delle seguenti operazioni:
   + **Opzione 1**: nel campo **Nome utente del sistema operativo**, inserisci il nome dell'account utente del sistema operativo che desideri utilizzare per avviare le sessioni. Utilizzando questa opzione, tutte le sessioni vengono eseguite dallo stesso utente del sistema operativo per tutti gli utenti del sistema operativo Account AWS che si connettono tramiteSession Manager.
   + **Opzione 2** (consigliata): scegli il collegamento **Apri la console IAM**. Nel riquadro di navigazione, scegli **Utenti** o **Ruoli**. Scegliere l'entità (utente o ruolo) cui aggiungere tag e quindi selezionare la scheda **Tags (Tag)**. Inserire `SSMSessionRunAs` per il nome chiave. Inserisci il nome di un account utente del sistema operativo per il valore della chiave. Scegli **Salva modifiche**.

     Utilizzando questa opzione, è possibile specificare utenti univoci dell'OS per diverse entità IAM, se lo desideri. Per ulteriori informazioni sull'applicazione di tag alle entità IAM (utenti o ruoli), consulta la pagina [Applicazione di tag alle risorse IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html) nella *Guida per l'utente IAM*.

     Di seguito è riportato un esempio di :  
![\[Screenshot di come specificare i tag per l'autorizzazione Esegui come di Session Manager.\]](http://docs.aws.amazon.com/it_it/systems-manager/latest/userguide/images/ssn-run-as-tags.png)

1. Scegli **Save** (Salva).

# Attiva la crittografia delle chiavi KMS per i dati delle sessioni (console)
<a name="session-preferences-enable-encryption"></a>

Usa AWS Key Management Service (AWS KMS) per creare e gestire le chiavi di crittografia. Con AWS KMS, puoi controllare l'uso della crittografia in un'ampia gamma di applicazioni Servizi AWS e all'interno delle tue applicazioni. È possibile specificare che i dati di sessione trasmessi tra i nodi gestiti e le macchine locali degli utenti del sistema Account AWS siano crittografati utilizzando la crittografia a chiave KMS. (Questa crittografia si aggiunge alla crittografia TLS 1.2/1.3 AWS già fornita di default). Per crittografare i dati Session Manager della sessione, crea una chiave KMS *simmetrica* utilizzando. AWS KMS

AWS KMS la crittografia è disponibile per e per i tipi `Standard_Stream` di sessione`InteractiveCommands`. `NonInteractiveCommands` Per utilizzare l'opzione per crittografare i dati della sessione utilizzando una chiave creata in AWS KMS, è AWS Systems Manager SSM Agent necessario installare la versione 2.3.539.0 o successiva di sul nodo gestito. 

**Nota**  
È necessario consentire AWS KMS la crittografia per reimpostare le password sui nodi gestiti dalla console. AWS Systems Manager Per ulteriori informazioni, consulta [Reimpostazione di una password su un nodo gestito](fleet-manager-reset-password.md#managed-instance-reset-a-password).

Puoi usare una chiave che hai creato nel tuo Account AWS. Inoltre, è possibile utilizzare una chiave che è stata creata in un account Account AWS diverso. Il creatore della chiave in un'altra chiave Account AWS deve fornirti le autorizzazioni necessarie per utilizzare la chiave.

Dopo aver abilitato la crittografia delle chiavi KMS per i dati delle sessioni, gli utenti che avviano le sessioni e i nodi gestiti a cui si connettono devono entrambi disporre dell'autorizzazione per utilizzare la chiave. Fornisci l'autorizzazione a utilizzare la chiave KMS Session Manager tramite politiche AWS Identity and Access Management (IAM). Per informazioni, consultare gli argomenti seguenti:
+ Aggiungi AWS KMS le autorizzazioni per gli utenti del tuo account:. [Policy IAM di esempio per Session Manager](getting-started-restrict-access-quickstart.md)
+ Aggiungi AWS KMS le autorizzazioni per i nodi gestiti nel tuo account:. [Fase 2: Verifica o aggiungi le autorizzazioni delle istanze per Session Manager](session-manager-getting-started-instance-profile.md)

Per ulteriori informazioni sulla creazione di una chiave KMS, consulta la [https://docs.aws.amazon.com/kms/latest/developerguide/](https://docs.aws.amazon.com/kms/latest/developerguide/).

Per informazioni sull'utilizzo della AWS CLI crittografia con chiave KMS dei dati di sessione nel tuo account, vedi [Creare un documento di preferenze di Session Manager (riga di comando)](getting-started-create-preferences-cli.md) o. [Aggiornamento delle preferenze Session Manager (riga di comando)](getting-started-configure-preferences-cli.md)

**Nota**  
C'è un addebito per l'utilizzo delle chiavi KMS. Per informazioni, consulta [Prezzi di AWS Key Management Service](https://aws.amazon.com/kms/pricing/).

**Attivare la crittografia delle chiavi KMS per i dati delle sessioni (console)**

1. Apri la AWS Systems Manager console all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Nel pannello di navigazione, scegli **Session Manager**.

1. Scegli la scheda **Preferenze**, quindi seleziona **Modifica**.

1. Selezionare la casella di controllo accanto ad **Abilita la crittografia KMS**.

1. Esegui una delle seguenti operazioni:
   + Scegliere il pulsante accanto a **Seleziona una chiave KMS nel mio account corrente**, quindi seleziona una chiave dall'elenco.

     oppure

     Scegliere il pulsante accanto a **Enter a KMS key alias or KMS key ARN (Immetti un alias della chiave o un ARN della chiave KMS)**. Immettere manualmente un alias della chiave KMS per una chiave creata nell'account corrente o immettere l'Amazon Resource Name (ARN) della chiave per una chiave in un altro account. Di seguito vengono mostrati gli esempi:
     + Alias della chiave: `alias/my-kms-key-alias`
     + ARN della chiave: `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-12345EXAMPLE`

     oppure

     Scegli **Crea nuova chiave** per creare una nuova KMS nel tuo account. Una volta creata la nuova chiave, torna alla scheda **Preferenze** e seleziona la chiave per crittografare i dati della sessione nel tuo account.

   Per ulteriori informazioni sulla condivisione delle chiavi, consulta [Consentire Account AWS agli esterni di accedere a una chiave](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html#key-policy-modifying-external-accounts) nella *Guida per gli AWS Key Management Service sviluppatori*.

1. Scegli **Save** (Salva).

# Creare un documento di preferenze di Session Manager (riga di comando)
<a name="getting-started-create-preferences-cli"></a>

Utilizza la seguente procedura per creare documenti SSM che definiscono le tue preferenze per le sessioni. AWS Systems Manager Session Manager Puoi utilizzare il documento per configurare le opzioni della sessione, tra cui la crittografia dei dati, la durata della sessione e la registrazione. Ad esempio, puoi specificare se archiviare i dati di log della sessione in un bucket Amazon Simple Storage Service (Amazon S3) o in un gruppo di log Amazon CloudWatch Logs. Puoi creare documenti che definiscono le preferenze generali per tutte le sessioni per un Account AWS and Regione AWS o che definiscono le preferenze per le singole sessioni. 

**Nota**  
Puoi inoltre configurare le preferenze generali di sessione utilizzando la console di Session Manager.

I documenti utilizzati per impostare le preferenze di Session Manager devono avere un `sessionType` di `Standard_Stream`. Per ulteriori informazioni sui documenti di sessione, consulta [Schema documento di sessione](session-manager-schema.md).

Per informazioni sull'utilizzo della riga di comando per aggiornare le preferenze Session Manager esistenti, consulta [Aggiornamento delle preferenze Session Manager (riga di comando)](getting-started-configure-preferences-cli.md).

Per un esempio di come creare preferenze di sessione utilizzando CloudFormation, vedere [Create a Systems Manager document for Session Manager preferences](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#aws-resource-ssm-document--examples) nella *Guida per l'AWS CloudFormation utente*.

**Nota**  
Questa procedura descrive come creare documenti per impostare Session Manager le preferenze a Account AWS livello. Per creare documenti che verranno utilizzati per impostare le preferenze a livello di sessione, specifica un valore diverso da `SSM-SessionManagerRunShell` per il nome file relativo agli input dei comandi.   
Per utilizzare il documento per impostare le preferenze per le sessioni avviate dalla AWS Command Line Interface (AWS CLI), fornisci il nome del documento come valore del parametro `--document-name`. Per impostare le preferenze per le sessioni avviate dalla console di Session Manager, puoi digitare o selezionare il nome del documento da un elenco.

**Per creare preferenze Session Manager (riga di comando)**

1. Sul proprio computer locale creare un file JSON denominato ad esempio `SessionManagerRunShell.json`, quindi incollarvi i seguenti contenuti:

   ```
   {
       "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"
           }
       }
   }
   ```

   Puoi anche passare i valori alle preferenze delle sessioni utilizzando i parametri invece di codificare i valori come illustrato nell'esempio seguente.

   ```
   {
      "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. Specificare dove inviare i dati delle sessioni. È possibile specificare un nome di bucket S3 (con un prefisso opzionale) o un nome di gruppo di CloudWatch log Logs. Per crittografare ulteriormente i dati tra client locale e i nodi gestiti, fornisci la chiave KMS da utilizzare per la crittografia. Di seguito è riportato un esempio di :

   ```
   {
     "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"
       }
     }
   }
   ```
**Nota**  
Se non si desidera crittografare i dati di log della sessione, modifica `true` in `false` per `s3EncryptionEnabled`.  
Se non invii log a un bucket Amazon S3 o a CloudWatch un gruppo di log Logs, non desideri crittografare i dati delle sessioni attive o non desideri attivare il supporto RunAs per le sessioni del tuo account, puoi eliminare le righe relative a tali opzioni. Assicurarsi che l'ultima riga nella sezione `inputs` non termini con una virgola.  
Se si aggiunge un ID della chiave KMS per crittografare i dati della sessione, gli utenti che avviano le sessioni e i nodi gestiti a cui si collegano devono entrambi disporre dell'autorizzazione per utilizzare la chiave. Fornire l'autorizzazione a utilizzare la chiave KMS con il Session Manager tramite le policy IAM. Per informazioni, consultare gli argomenti seguenti:  
Aggiungi le AWS KMS autorizzazioni per gli utenti del tuo account: [Policy IAM di esempio per Session Manager](getting-started-restrict-access-quickstart.md)
Aggiungi AWS KMS le autorizzazioni per i nodi gestiti nel tuo account: [Fase 2: Verifica o aggiungi le autorizzazioni delle istanze per Session Manager](session-manager-getting-started-instance-profile.md)

1. Salvare il file.

1. Nella directory in cui è stato creato il file JSON, eseguire il comando seguente.

------
#### [ 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
   ```

------

   Se il comando viene eseguito correttamente, verrà visualizzato un output simile al seguente:

   ```
   {
       "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"
       }
   }
   ```

# Aggiornamento delle preferenze Session Manager (riga di comando)
<a name="getting-started-configure-preferences-cli"></a>

La procedura seguente descrive come utilizzare lo strumento da riga di comando preferito per apportare modifiche alle AWS Systems Manager Session Manager preferenze del gruppo selezionato Regione AWS. Account AWS Utilizza Session Manager le preferenze per specificare le opzioni per la registrazione dei dati della sessione in un bucket Amazon Simple Storage Service (Amazon S3) o in un gruppo di log Amazon Logs. CloudWatch Puoi anche utilizzare le preferenze del Session Manager per crittografare i dati delle sessioni.

**Per aggiornare le preferenze Session Manager (riga di comando)**

1. Sul proprio computer locale creare un file JSON denominato ad esempio `SessionManagerRunShell.json`, quindi incollarvi i seguenti contenuti.

   ```
   {
       "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. Specificare dove inviare i dati delle sessioni. Puoi specificare un nome di bucket S3 (con un prefisso opzionale) o un nome di gruppo di log Logs. CloudWatch Se desideri crittografare ulteriormente i dati tra client locale e nodi gestiti, fornisci il codice da utilizzare per la AWS KMS key crittografia. Di seguito è riportato un esempio di :

   ```
   {
     "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"
       }
     }
   }
   ```
**Nota**  
Se non si desidera crittografare i dati di log della sessione, modifica `true` in `false` per `s3EncryptionEnabled`.  
Se non invii log a un bucket Amazon S3 o a CloudWatch un gruppo di log Logs, non desideri crittografare i dati delle sessioni attive o non desideri attivare il supporto RunAs per le sessioni del tuo account, puoi eliminare le righe relative a tali opzioni. Assicurarsi che l'ultima riga nella sezione `inputs` non termini con una virgola.  
Se si aggiunge un ID della chiave KMS per crittografare i dati della sessione, gli utenti che avviano le sessioni e i nodi gestiti a cui si collegano devono entrambi disporre dell'autorizzazione per utilizzare la chiave. Fornisci l'autorizzazione a utilizzare la chiave KMS tramite policy (IAM). Session Manager AWS Identity and Access Management Per informazioni, consultare gli argomenti seguenti:  
Aggiungi AWS KMS le autorizzazioni per gli utenti del tuo account:. [Policy IAM di esempio per Session Manager](getting-started-restrict-access-quickstart.md)
Aggiungi AWS KMS le autorizzazioni per i nodi gestiti nel tuo account:. [Fase 2: Verifica o aggiungi le autorizzazioni delle istanze per Session Manager](session-manager-getting-started-instance-profile.md)

1. Salvare il file.

1. Nella directory in cui è stato creato il file JSON, eseguire il comando seguente.

------
#### [ 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'
   ```

------

   Se il comando viene eseguito correttamente, verrà visualizzato un output simile al seguente:

   ```
   {
       "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"
       }
   }
   ```

# Fase 5: (facoltativo) limitazione dell'accesso ai comandi in una sessione
<a name="session-manager-restrict-command-access"></a>

È possibile limitare i comandi che un utente può eseguire in una AWS Systems Manager Session Manager sessione utilizzando un documento `Session` di tipo personalizzato AWS Systems Manager (SSM). Nel documento, puoi definire il comando che viene eseguito quando l'utente avvia una sessione e i parametri che l’utente può fornire al comando. Il documento `Session` `schemaVersion` deve essere 1.0 e il `sessionType` del documento deve essere `InteractiveCommands`. Puoi quindi creare policy AWS Identity and Access Management (IAM) che consentano agli utenti di accedere solo ai documenti `Session` definiti. Per ulteriori informazioni sull'utilizzo delle policy IAM per limitare l'accesso ai comandi in una sessione, consulta [Esempi di policy IAM per comandi interattivi](#interactive-command-policy-examples).

I documenti con `sessionType` of `InteractiveCommands` sono supportati solo per le sessioni iniziate da AWS Command Line Interface (AWS CLI). L'utente fornisce il nome del documento personalizzato come valore del parametro `--document-name` e specifica tutti i valori dei parametri del comando utilizzando l'opzione `--parameters`. Per ulteriori informazioni sull'esecuzione di comandi interattivi, consulta [Avvio di una sessione (comandi interattivi e non interattivi)](session-manager-working-with-sessions-start.md#sessions-start-interactive-commands).

Utilizza la procedura seguente per creare un documento SSM di tipo `Session` personalizzato che definisce il comando che un utente può eseguire.

## Limitare l'accesso ai comandi in una sessione (console)
<a name="restrict-command-access-console"></a>

**Per limitare i comandi che un utente può eseguire in una sessione Session Manager (console)**

1. Apri la AWS Systems Manager console all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Nel pannello di navigazione, scegli **Documenti**.

1. Scegli **Crea comando o sessione**.

1. Per **Nome**, inserisci un nome descrittivo per il documento.

1. Per **Tipo di documento**, scegli **Documento di sessione**.

1. Immettere il contenuto del documento che definisce il comando che un utente può eseguire in una sessione Session Manager utilizzando JSON o YAML, come illustrato nell'esempio seguente.

------
#### [ 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
           }
       }
   }
   ```

------

1. Scegli **Crea documento**.

## Limitare l'accesso ai comandi in una sessione (riga di comando)
<a name="restrict-command-access-commandline"></a>

**Prima di iniziare**  
Se non l'hai già fatto, installa e configura AWS Command Line Interface (AWS CLI) o AWS Strumenti per PowerShell. Per informazioni, consulta le pagine [Installazione o aggiornamento della versione più recente di AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) e [Installazione di AWS Strumenti per PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html).

**Per limitare i comandi che un utente può eseguire in una sessione Session Manager (riga di comando)**

1. Creare un file JSON o YAML per il contenuto del documento che definisce il comando che un utente può eseguire in una sessione Session Manager, come illustrato nell'esempio seguente.

------
#### [ 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
           }
       }
   }
   ```

------

1. Eseguire i comandi seguenti per creare un documento SSM utilizzando il contenuto che definisce il comando che un utente può eseguire in una sessione Session Manager.

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

   ```
   aws ssm create-document \
       --content file://path/to/file/documentContent.json \
       --name "exampleAllowedSessionDocument" \
       --document-type "Session"
   ```

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

   ```
   aws ssm create-document ^
       --content file://C:\path\to\file\documentContent.json ^
       --name "exampleAllowedSessionDocument" ^
       --document-type "Session"
   ```

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

   ```
   $json = Get-Content -Path "C:\path\to\file\documentContent.json" | Out-String
   New-SSMDocument `
       -Content $json `
       -Name "exampleAllowedSessionDocument" `
       -DocumentType "Session"
   ```

------

## Parametri di comando interattivi e AWS CLI
<a name="restrict-command-access-parameters-cli"></a>

È possibile fornire parametri di comando interattivi quando si utilizza la AWS CLI. A seconda del sistema operativo (OS) del computer client utilizzato per la connessione ai nodi gestiti con AWS CLI, la sintassi fornita per i comandi che contengono caratteri speciali o di escape potrebbe essere diversa. Gli esempi seguenti mostrano alcuni dei diversi modi in cui è possibile fornire i parametri di comando quando si AWS CLI utilizza e come gestire caratteri speciali o di escape.

Parameter StoreÈ possibile fare riferimento ai parametri memorizzati in nei parametri del AWS CLI comando, come illustrato nell'esempio seguente.

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

```
aws ssm start-session \
    --target instance-id \
    --document-name MyInteractiveCommandDocument \ 
    --parameters '{"command":["{{ssm:mycommand}}"]}'
```

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

```
aws ssm start-session ^
    --target instance-id ^
    --document-name MyInteractiveCommandDocument ^
    --parameters '{"command":["{{ssm:mycommand}}"]}'
```

------

L'esempio seguente mostra come puoi utilizzare una sintassi abbreviata con la AWS CLI per passare i parametri.

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

```
aws ssm start-session \
    --target instance-id \
    --document-name MyInteractiveCommandDocument \ 
    --parameters command="ifconfig"
```

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

```
aws ssm start-session ^
    --target instance-id ^
    --document-name MyInteractiveCommandDocument ^
    --parameters command="ipconfig"
```

------

Puoi anche fornire parametri facoltativi in JSON , come mostrato nel seguente esempio.

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

```
aws ssm start-session \
    --target instance-id \
    --document-name MyInteractiveCommandDocument \ 
    --parameters '{"command":["ifconfig"]}'
```

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

```
aws ssm start-session ^
    --target instance-id ^
    --document-name MyInteractiveCommandDocument ^
    --parameters '{"command":["ipconfig"]}'
```

------

I parametri possono anche essere memorizzati in un file JSON e forniti AWS CLI come illustrato nell'esempio seguente. Per ulteriori informazioni sull'utilizzo di parametri AWS CLI da un file, consulta [Caricamento di parametri AWS CLI da un file](https://docs.aws.amazon.com/cli/latest/userguide/;cli-usage-parameters-file.html) nella *Guida per l'utente di AWS Command Line Interface *.

```
{
    "command": [
        "my command"
    ]
}
```

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

```
aws ssm start-session \
    --target instance-id \
    --document-name MyInteractiveCommandDocument \ 
    --parameters file://complete/path/to/file/parameters.json
```

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

```
aws ssm start-session ^
    --target instance-id ^
    --document-name MyInteractiveCommandDocument ^
    --parameters file://complete/path/to/file/parameters.json
```

------

È inoltre possibile generare AWS CLI uno scheletro da un file di input JSON, come illustrato nell'esempio seguente. *Per ulteriori informazioni sulla generazione di AWS CLI scheletri da file di input JSON, consulta [Generazione di AWS CLI scheletri e parametri di input da un file di input JSON o YAML](https://docs.aws.amazon.com/cli/latest/userguide/;cli-usage-skeleton.html) nella Guida per l'utente.AWS Command Line Interface *

```
{
    "Target": "instance-id",
    "DocumentName": "MyInteractiveCommandDocument",
    "Parameters": {
        "command": [
            "my command"
        ]
    }
}
```

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

```
aws ssm start-session \
    --cli-input-json file://complete/path/to/file/parameters.json
```

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

```
aws ssm start-session ^
    --cli-input-json file://complete/path/to/file/parameters.json
```

------

Per eseguire l'escape dei caratteri all'interno delle virgolette, è necessario aggiungere ulteriori barre rovesciate ai caratteri di escape, come illustrato nell'esempio seguente.

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

```
aws ssm start-session \
    --target instance-id \
    --document-name MyInteractiveCommandDocument \ 
    --parameters '{"command":["printf \"abc\\\\tdef\""]}'
```

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

```
aws ssm start-session ^
    --target instance-id ^
    --document-name MyInteractiveCommandDocument ^
    --parameters '{"command":["printf \"abc\\\\tdef\""]}'
```

------

Per ulteriori informazioni sulla citazione con parametri di comando nella AWS CLI, consulta [Utilizzo di virgolette con stringhe nella AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/;cli-usage-parameters-quoting-strings.html) nella *Guida per l'utente della AWS Command Line Interface *.

## Esempi di policy IAM per comandi interattivi
<a name="interactive-command-policy-examples"></a>

Puoi creare policy IAM che consentono agli utenti di accedere solo ai documenti `Session` definiti. Ciò limita i comandi che un utente può eseguire in una sessione Session Manager ai soli comandi definiti nei documenti SSM di tipo `Session` personalizzati.

 **Consentire a un utente di eseguire un comando interattivo su un singolo nodo**     
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":"ssm:StartSession",
         "Resource":[
            "arn:aws:ec2:us-east-1:444455556666:instance/i-02573cafcfEXAMPLE",
            "arn:aws:ssm:us-east-1:444455556666:document/allowed-session-document"
         ]
      },
      {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
      }
   ]
}
```

 **Consentire a un utente di eseguire un comando interattivo su tutti i nodi gestiti**     
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":"ssm:StartSession",
         "Resource":[
            "arn:aws:ec2:us-east-1:444455556666:instance/*",
            "arn:aws:ssm:us-east-1:444455556666:document/allowed-session-document"
         ]
      },
      {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
      }
   ]
}
```

 **Consentire a un utente di eseguire più comandi interattivi su tutti i nodi gestiti**     
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":"ssm:StartSession",
         "Resource":[
            "arn:aws:ec2:us-east-1:444455556666:instance/*",
            "arn:aws:ssm:us-east-1:444455556666:document/allowed-session-document",
            "arn:aws:ssm:us-east-1:444455556666:document/allowed-session-document-2"
         ]
      },
      {
         "Effect": "Allow",
         "Action": ["ssmmessages:OpenDataChannel"],
         "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"]
      }
   ]
}
```

# Fase 6: (Facoltativo) Utilizzare AWS PrivateLink per configurare un endpoint VPC per Session Manager
<a name="session-manager-getting-started-privatelink"></a>

È possibile migliorare ulteriormente la posizione di sicurezza dei tuoi nodi gestiti configurando AWS Systems Manager in modo che utilizzi un endpoint di interfaccia di cloud privato virtuale (VPC) (VPC). Gli endpoint di interfaccia sono basati su una tecnologia che consente di accedere in modo privato ad Amazon Elastic Compute Cloud (Amazon EC2) e Systems Manager APIs utilizzando indirizzi IP privati. AWS PrivateLink

AWS PrivateLink limita tutto il traffico di rete tra i nodi gestiti, Systems Manager e Amazon EC2 alla rete Amazon. (I nodi gestiti non hanno accesso a Internet.) Inoltre, non hai bisogno di un gateway Internet, di un dispositivo NAT o di un gateway privato virtuale. 

Per informazioni su come creare un endpoint VPC, consulta [Migliora la sicurezza delle istanze EC2 utilizzando gli endpoint VPC per Systems Manager](setup-create-vpc.md).

L'alternativa all'utilizzo di un endpoint VPC è l'abilitazione dell'accesso a Internet in uscita sui nodi gestiti. In questo caso, i nodi gestiti devono permettere anche il traffico in uscita HTTPS (porta 443) verso i seguenti endpoint:
+  `ec2messages.region.amazonaws.com` 
+  `ssm.region.amazonaws.com` 
+  `ssmmessages.region.amazonaws.com` 

Systems Manager utilizza l'ultimo di questi endpoint, `ssmmessages.region.amazonaws.com` per effettuare chiamate da SSM Agent al servizio Session Manager nel cloud.

Per utilizzare funzionalità opzionali come la crittografia AWS Key Management Service (AWS KMS), lo streaming dei log su Amazon CloudWatch Logs (CloudWatch Logs) e l'invio di log ad Amazon Simple Storage Service (Amazon S3), devi consentire il traffico HTTPS (porta 443) in uscita ai seguenti endpoint:
+  `kms.region.amazonaws.com` 
+  `logs.region.amazonaws.com` 
+  `s3.region.amazonaws.com` 

Per ulteriori informazioni sugli endpoint richiesti per Systems Manager, consultare [Referenza: ec2messages, ssmmessages e altre operazioni API](systems-manager-setting-up-messageAPIs.md).

# Fase 7 (facoltativo): abilitazione o disabilitazione delle autorizzazioni amministrative dell'account ssm-account
<a name="session-manager-getting-started-ssm-user-permissions"></a>

A partire dalla versione 2.3.50.0 di AWS Systems Manager SSM Agent, l'agente crea un account utente locale chiamato `ssm-user` e lo aggiunge a `/etc/sudoers` (LinuxandmacOS) o al gruppo Administrators (). Windows Nelle versioni dell'agente precedenti alla 2.3.612.0, l'account viene creato la prima volta che SSM Agent viene avviato o riavviato dopo l'installazione. Nella versione 2.3.612.0 e successive, l'account `ssm-user` viene creato la prima volta che una sessione viene avviata su un nodo. Si `ssm-user` tratta dell'utente predefinito del sistema operativo (OS) all'avvio di una AWS Systems Manager Session Manager sessione. SSM Agentla versione 2.3.612.0 è stata rilasciata l'8 maggio 2019.

Se desideri impedire agli utenti Session Manager di eseguire comandi amministrativi su un nodo, puoi aggiornare le autorizzazioni dell'account `ssm-user`. Puoi anche ripristinare queste autorizzazioni dopo che sono state rimosse.

**Topics**
+ [Gestione delle autorizzazioni sudo per l'account ssm-user su Linux e macOS](#ssm-user-permissions-linux)
+ [Gestione delle autorizzazioni di amministratore per l'account ssm-user su Windows Server](#ssm-user-permissions-windows)

## Gestione delle autorizzazioni sudo per l'account ssm-user su Linux e macOS
<a name="ssm-user-permissions-linux"></a>

Utilizza una delle seguenti procedure per abilitare o disabilitare le autorizzazioni sudo per l'account ssm-user sui nodi gestiti Linux e macOS.

**Utilizza Run Command per modificare le autorizzazioni sudo di ssm-user (console)**
+ Utilizza la procedura descritta in [Esecuzione di comandi dalla console](running-commands-console.md) con i seguenti valori:
  + Per **Documenti di comando**, scegli `AWS-RunShellScript`.
  + Per rimuovere l'accesso sudo, nell'area **Parametri di comando**, incolla quanto segue nella casella **Comandi**.

    ```
    cd /etc/sudoers.d
    echo "#User rules for ssm-user" > ssm-agent-users
    ```

    oppure

    Per ripristinare l'accesso sudo, nell'area **Parametri di comando**, incolla quanto segue nella casella **Comandi**.

    ```
    cd /etc/sudoers.d 
    echo "ssm-user ALL=(ALL) NOPASSWD:ALL" > ssm-agent-users
    ```

**Utilizza la riga di comando per modificare le autorizzazioni sudo di ssm-user (AWS CLI)**

1. Connettersi al nodo master ed eseguire il comando seguente.

   ```
   sudo -s
   ```

1. Cambiare la directory di lavoro utilizzando il comando seguente.

   ```
   cd /etc/sudoers.d
   ```

1. Aprire il file denominato `ssm-agent-users` per la modifica.

1. Per rimuovere l'accesso sudo, eliminare la riga seguente.

   ```
   ssm-user ALL=(ALL) NOPASSWD:ALL
   ```

   oppure

   Per ripristinare l'accesso sudo, aggiungere la riga seguente.

   ```
   ssm-user ALL=(ALL) NOPASSWD:ALL
   ```

1. Salvare il file.

## Gestione delle autorizzazioni di amministratore per l'account ssm-user su Windows Server
<a name="ssm-user-permissions-windows"></a>

Utilizza una delle seguenti procedure per abilitare o disabilitare le autorizzazioni di amministratore per l'account ssm-user sui nodi gestiti Windows Server:

**Utilizza Run Command per modificare le autorizzazioni di amministratore (console)**
+ Utilizza la procedura descritta in [Esecuzione di comandi dalla console](running-commands-console.md) con i seguenti valori:

  Per **Documenti di comando**, scegli `AWS-RunPowerShellScript`.

  Per rimuovere l'accesso amministrativo, nell'area **Parametri di comando**, incolla quanto segue nella casella **Comandi**.

  ```
  net localgroup "Administrators" "ssm-user" /delete
  ```

  oppure

  Per ripristinare l'accesso amministrativo, nell'area **Parametri di comando**, incolla quanto segue nella casella **Comandi**.

  ```
  net localgroup "Administrators" "ssm-user" /add
  ```

**Utilizza PowerShell o la finestra del prompt dei comandi per modificare le autorizzazioni di amministratore**

1. Connettiti al nodo gestito e apri PowerShell o la finestra del prompt dei comandi.

1. Per rimuovere l'accesso amministrativo, eseguire il comando riportato di seguito.

   ```
   net localgroup "Administrators" "ssm-user" /delete
   ```

   oppure

   Per ripristinare l'accesso amministrativo, eseguire il comando riportato di seguito.

   ```
   net localgroup "Administrators" "ssm-user" /add
   ```

**Utilizza la console Windows per modificare le autorizzazioni di amministratore**

1. Connettiti al nodo gestito e apri PowerShell o la finestra del prompt dei comandi.

1. Dalla riga di comando, esegui `lusrmgr.msc` per aprire la console **Utenti e gruppi locali**.

1. Apri la directory **Utenti**, quindi apri **ssm-user**.

1. Nella scheda **Membro di**, esegui una delle seguenti operazioni:
   + Per rimuovere l'accesso amministrativo, seleziona **Amministratori**, quindi scegli **Rimuovi**.

     oppure

     Per ripristinare l'accesso amministrativo, inserire **Administrators** nella casella di testo, quindi scegli **Aggiungi**.

1. Scegli **OK**.

# Fase 8: (facoltativo) abilitazione e controllo delle autorizzazioni per le connessioni SSH tramite Session Manager
<a name="session-manager-getting-started-enable-ssh-connections"></a>

Puoi consentire agli utenti del tuo account Account AWS di utilizzare il AWS Command Line Interface (AWS CLI) per stabilire connessioni Secure Shell (SSH) ai nodi gestiti utilizzando. AWS Systems Manager Session Manager Gli utenti che si connettono utilizzando SSH possono anche copiare i file tra i loro computer locali e gli nodi gestiti usando SCP (Secure Copy Protocol). È possibile usare questa funzionalità per connetterti ai nodi gestiti senza aprire porte in entrata o gestire host bastion.

 Quando stabilisci connessioni SSH tramiteSession Manager, SSM Agent crei AWS CLI WebSocket connessioni sicure tramite TLS agli endpoint. Session Manager La sessione SSH viene eseguita all'interno di questo tunnel crittografato, che fornisce un ulteriore livello di sicurezza senza richiedere l'apertura delle porte in ingresso sui nodi gestiti.

Dopo aver consentito le connessioni SSH, puoi utilizzare le policy AWS Identity and Access Management (IAM) per consentire o negare esplicitamente a utenti, gruppi o ruoli di effettuare connessioni SSH. Session Manager

**Nota**  
La registrazione non è disponibile per sessioni Session Manager che si connettono tramite inoltro porta o SSH. Questo perché SSH crittografa tutti i dati della sessione all'interno della connessione TLS sicura stabilita tra gli Session Manager endpoint AWS CLI e funge Session Manager solo da tunnel per le connessioni SSH.

**Topics**
+ [Consentire connessioni SSH per Session Manager](#ssh-connections-enable)
+ [Controllo delle autorizzazioni utente per le connessioni SSH tramite Session Manager](#ssh-connections-permissions)

## Consentire connessioni SSH per Session Manager
<a name="ssh-connections-enable"></a>

Attenersi alla seguente procedura per abilitare le connessioni SSH tramite Session Manager su un nodo gestito. 

**Per consentire connessioni SSH per Session Manager**

1. Nel nodo gestito per cui si desidera permettere le connessioni SSH, procedere nel modo seguente:
   + Accertarsi che SSH sia in esecuzione sul nodo gestito. (È possibile chiudere le porte in entrata sul nodo.)
   + Accertarsi che SSM Agent versione 2.3.672.0 o successiva sia installata sul nodo gestito.

     Per informazioni su come installare e aggiornare SSM Agent su un nodo gestito, consulta i seguenti argomenti:
     + [Installazione e disinstallazione manuale di SSM Agent su istanze EC2 per Windows Server](manually-install-ssm-agent-windows.md).
     +  [Installazione e disinstallazione manuale di SSM Agent su istanze EC2 per Linux](manually-install-ssm-agent-linux.md) 
     +  [Installazione e disinstallazione manuale di SSM Agent su istanze EC2 per macOS](manually-install-ssm-agent-macos.md) 
     +  [Come installare SSM Agent su nodi Windows ibridi](hybrid-multicloud-ssm-agent-install-windows.md) 
     +  [Come installare SSM Agent su nodi Linux ibridi](hybrid-multicloud-ssm-agent-install-linux.md) 
**Nota**  
Per utilizzarli Session Manager con server locali, dispositivi periferici e macchine virtuali (VMs) attivati come nodi gestiti, è necessario utilizzare il livello Advanced-Instances. Per ulteriori informazioni sulle istanze avanzate, consulta [Configurazione dei livelli di istanza](fleet-manager-configure-instance-tiers.md).

1. Sul computer locale da cui si desidera connettersi a un nodo gestito tramite SSH, procedi nel modo seguente:
   + Accertarsi che la versione 1.1.23.0 o successiva del plugin Session Manager sia installata.

     Per informazioni sull'istallazione del plugin Session Manager, consulta [Installa il Session Manager plugin per AWS CLI](session-manager-working-with-install-plugin.md).
   + Aggiornare il file di configurazione SSH per permettere l'esecuzione di un comando proxy che avvia una sessione Session Manager e trasferire tutti i dati tramite la connessione.

      **Linux e macOS** 
**Suggerimento**  
Il file di configurazione SSH si trova in genere nel percorso `~/.ssh/config`.

     Aggiungere quanto segue al file di configurazione sul computer locale.

     ```
     # SSH over Session Manager
     Host i-* mi-*
         ProxyCommand sh -c "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters 'portNumber=%p'"
         User ec2-user
     ```

      ** Windows ** 
**Suggerimento**  
Il file di configurazione SSH si trova in genere nel percorso `C:\Users\<username>\.ssh\config`.

     Aggiungere quanto segue al file di configurazione sul computer locale.

     ```
     # SSH over Session Manager
     Host i-* mi-*
         ProxyCommand C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters portNumber=%p"
     ```
   + Creare o verificare di disporre di un certificato Privacy Enhanced Mail Certificate (un file PEM) o almeno una chiave pubblica, da utilizzare quando si stabiliscono connessioni a nodi gestiti. Questa deve essere una chiave già associata al nodo gestito. Le autorizzazioni del file di chiavi private devono essere impostate in modo che tu sia l'unico a poterlo leggere. È possibile utilizzare il seguente comando per impostare le autorizzazioni del file di chiavi private in modo che tu sia l'unico a poterlo leggere.

     ```
     chmod 400 <my-key-pair>.pem
     ```

     Ad esempio, per un'istanza Amazon Elastic Compute Cloud (Amazon EC2), il file della coppia di chiavi creata o selezionata al momento della creazione dell'istanza. (Specificare il percorso al certificato o alla chiave come parte del comando per avviare una sessione. Per informazioni sull'avvio di una sessione tramite SSH, consultare ) [Avvio di una sessione (SSH)](session-manager-working-with-sessions-start.md#sessions-start-ssh).)

## Controllo delle autorizzazioni utente per le connessioni SSH tramite Session Manager
<a name="ssh-connections-permissions"></a>

Dopo aver abilitato le connessioni SSH tramite Session Manager su un nodo gestito, è possibile utilizzare le policy IAM per consentire o impedire a utenti, gruppi o ruoli la possibilità di effettuare connessioni SSH tramite Session Manager. 

**Per utilizzare una policy IAM per consentire le connessioni SSH tramite Session Manager**
+ Utilizza una delle opzioni seguenti:
  + **Opzione 1**: apri la console IAM all'indirizzo. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 

    Nel riquadro di navigazione, scegli **Policy** e quindi aggiorna le policy di autorizzazioni per l'utente o il ruolo che desideri possa avviare le connessioni SSH tramite Session Manager. 

    Ad esempio, aggiungi il seguente elemento alla policy di avvio rapido creata in [Policy di avvio rapido per utenti finali per Session Manager](getting-started-restrict-access-quickstart.md#restrict-access-quickstart-end-user). Sostituisci ogni *example resource placeholder* con le tue informazioni. 

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

****  

    ```
    {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
            {
                "Effect": "Allow",
                "Action": "ssm:StartSession",
                "Resource": [
                    "arn:aws:ec2:us-east-1:111122223333:instance/instance-id",
                    "arn:aws:ssm:*:*:document/AWS-StartSSHSession"
                ]
            },
            {
                "Effect": "Allow",
                "Action": "ssmmessages:OpenDataChannel",
                "Resource": "arn:aws:ssm:*:*:session/${aws:userid}-*"
            }
        ]
    }
    ```

------
  + **Opzione 2**: collega una politica in linea a una politica utente utilizzando l' Console di gestione AWS AWS CLI, l'o l' AWS API.

    Utilizzando il metodo che preferisci, allega la dichiarazione sulla politica dell'**Opzione 1** alla politica per un AWS utente, gruppo o ruolo.

    Per informazioni, consulta [Aggiunta e rimozione di autorizzazioni per identità IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) nella *Guida per l'utente di IAM*.

**Per utilizzare una policy IAM che neghi le connessioni SSH tramite Session Manager**
+ Utilizza una delle opzioni seguenti:
  + **Opzione 1**: apri la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/). Nel riquadro di navigazione, scegli **Policy** e quindi aggiorna le policy di autorizzazione per l'utente o il ruolo per bloccare l'avvio delle sessioni Session Manager. 

    Ad esempio, aggiungi il seguente elemento alla policy di avvio rapido creata in [Policy di avvio rapido per utenti finali per Session Manager](getting-started-restrict-access-quickstart.md#restrict-access-quickstart-end-user).

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

****  

    ```
    {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
            {
                "Effect": "Deny",
                "Action": "ssm:StartSession",
                "Resource": "arn:aws:ssm:*:*:document/AWS-StartSSHSession"
            },
            {
                "Effect": "Allow",
                "Action": "ssmmessages:OpenDataChannel",
                "Resource": "arn:aws:ssm:*:*:session/${aws:userid}-*"
            }
        ]
    }
    ```

------
  + **Opzione 2**: collega una politica in linea a una politica utente utilizzando l' Console di gestione AWS AWS CLI, l'o l' AWS API.

    Utilizzando il metodo che preferisci, allega la dichiarazione sulla politica dell'**Opzione 1** alla politica per un AWS utente, gruppo o ruolo.

    Per informazioni, consulta [Aggiunta e rimozione di autorizzazioni per identità IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) nella *Guida per l'utente di IAM*.