Condivisione di documenti SSM - AWS Systems Manager

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

Condivisione di documenti SSM

Puoi condividere documenti AWS Systems Manager (SSM) privatamente o pubblicamente con account nello stesso. Regione AWS Per condividere privatamente un documento, si modificano le autorizzazioni del documento e si consente a determinati individui di accedervi in base al proprio ID di Account AWS . Per condividere pubblicamente un documento SSM, si modificano le autorizzazioni del documento e si specifica All. I documenti non possono essere condivisi contemporaneamente in modalità pubblica e privata.

avvertimento

Utilizzare documenti SSM condivisi solo se provengono da fonti attendibili. Quando utilizzi un documento condiviso, verificane attentamente i contenuti prima di utilizzarlo per comprendere come modificherà la configurazione dell'istanza. Per ulteriori informazioni sulle best practice per i documenti condivisi, consulta Best practice per documenti SSM condivisi.

Limitazioni

Quando si iniziano a utilizzare documenti SSM, tenere presente le seguenti restrizioni.

  • Soltanto il proprietario può condividere un documento.

  • Devi interrompere la condivisione di un documento prima di poterlo eliminare. Per ulteriori informazioni, consulta Modifica delle autorizzazioni per un documento condiviso.

  • Puoi condividere un documento con un massimo di 1000. Account AWSÈ possibile richiedere un aumento di questo limite nel AWS Support Center. Per Limit type (Tipo di limite), scegliere EC2 Systems Manager e descrivere il motivo della richiesta.

  • È possibile condividere pubblicamente un massimo di cinque documenti SSM. È possibile richiedere un aumento di questo limite nel AWS Support Center. Per Limit type (Tipo di limite), scegliere EC2 Systems Manager e descrivere il motivo della richiesta.

  • I documenti possono essere condivisi con altri account Regione AWS solo nello stesso account. La condivisione tra regioni non è supportata.

Per ulteriori informazioni sulle quote di servizio di Systems Manager, consultare AWS Systems Manager Service Quotas (Quote di servizio di ).

Best practice per documenti SSM condivisi

Consulta le seguenti linee guida prima di condividere o utilizzare un documento condiviso.

Rimuovi le informazioni sensibili

Esamina attentamente il tuo documento AWS Systems Manager (SSM) e rimuovi tutte le informazioni sensibili. Ad esempio, verifica che il documento non includa AWS le tue credenziali. Se condividi un documento con utenti specifici, questi possono visualizzare le informazioni contenute nel documento. Se condividi un documento pubblicamente, tutti possono visualizzare le informazioni contenute nel documento.

Bloccare la condivisione pubblica per i documenti

A meno che il caso d'uso non richieda l'attivazione della condivisione pubblica, si consiglia di attivare l'impostazione Blocca condivisione pubblica per i documenti di Systems Manager nella sezione Preferences (Preferenze) della console Documenti di Systems Manager.

Limitazione delle operazioni Run Command utilizzando una policy di attendibilità IAM

Crea una politica restrittiva AWS Identity and Access Management (IAM) per gli utenti che avranno accesso al documento. La policy IAM determina quali documenti SSM un utente può vedere nella console Amazon Elastic Compute Cloud (Amazon EC2) o ListDocuments chiamando utilizzando () o. AWS Command Line Interface AWS CLI AWS Tools for Windows PowerShell La policy limita inoltre le operazioni che l'utente può eseguire con i documenti SSM. Puoi creare una policy restrittiva in modo che un utente possa utilizzare solo documenti specifici. Per ulteriori informazioni, consulta Esempi di policy gestite dal cliente.

Fare attenzione quando si utilizzano documenti SSM condivisi

È importante verificare i contenuti di ogni documento condiviso, soprattutto nel caso di documenti pubblici, per comprendere i comandi che verranno eseguiti sulle istanze. L'esecuzione di un documento potrebbe avere ripercussioni negative, anche in modo non intenzionale. Se il documento fa riferimento a una rete esterna, verifica quest'ultima prima di utilizzare il documento.

Invia comandi utilizzando l'hash del documento

Quando condividi un documento, il sistema crea un hash Sha-256 e lo assegna al documento. Il sistema salva inoltre uno snapshot del contenuto del documento. Quando invii un comando utilizzando un documento condiviso, puoi specificare l'hash nel comando per garantire che si verifichino le seguenti condizioni:

  • Si sta eseguendo un comando dal documento di Systems Manager corretto

  • Il contenuto del documento non è stato modificato da quando è stato condiviso con l'utente.

Se l'hash non corrisponde al documento specificato o se il contenuto del documento condiviso è stato modificato, il comando restituisce un'eccezione InvalidDocument (Documento non valido). L'hash non è in grado di verificare il contenuto di un documento da percorsi esterni.

Bloccare la condivisione pubblica per i documenti SSM

A meno che il tuo caso d'uso non richieda l'attivazione della condivisione pubblica, ti consigliamo di attivare l'impostazione di blocco della condivisione pubblica per i tuoi documenti AWS Systems Manager (SSM). L'attivazione di questa impostazione impedisce l'accesso indesiderato ai documenti SSM. L'impostazione di blocco della condivisione pubblica è un'impostazione a livello di account che può differire per ciascuno Regione AWS. Completare le seguenti attività per bloccare la condivisione pubblica dei documenti SSM.

Blocca condivisione pubblica (console)

Bloccare la condivisione pubblica dei documenti SSM
  1. Apri la AWS Systems Manager console all'indirizzo https://console.aws.amazon.com/systems-manager/.

  2. Nel riquadro di navigazione, scegli Documenti.

  3. SceglierePreferences (Preferenze), quindi scegliere Edit (Modifica) nella sezione Block public sharing (Blocca condivisione pubblica).

  4. Selezionare la casella Block public sharing (Blocca condivisione pubblica) quindi scegliere Save (Salva).

Blocca condivisione pubblica (riga di comando)

Apri AWS Command Line Interface (AWS CLI) o AWS Tools for Windows PowerShell sul tuo computer locale ed esegui il seguente comando per bloccare la condivisione pubblica dei tuoi documenti SSM.

Linux & macOS
aws ssm update-service-setting \ --setting-id /ssm/documents/console/public-sharing-permission \ --setting-value Disable \ --region 'The Regione AWS you want to block public sharing in'
Windows
aws ssm update-service-setting ^ --setting-id /ssm/documents/console/public-sharing-permission ^ --setting-value Disable ^ --region "The Regione AWS you want to block public sharing in"
PowerShell
Update-SSMServiceSetting ` -SettingId /ssm/documents/console/public-sharing-permission ` -SettingValue Disable ` –Region The Regione AWS you want to block public sharing in

Confermare che il valore dell'impostazione sia stato aggiornato utilizzando il seguente comando.

Linux & macOS
aws ssm get-service-setting \ --setting-id /ssm/documents/console/public-sharing-permission \ --region The Regione AWS you blocked public sharing in
Windows
aws ssm get-service-setting ^ --setting-id /ssm/documents/console/public-sharing-permission ^ --region "The Regione AWS you blocked public sharing in"
PowerShell
Get-SSMServiceSetting ` -SettingId /ssm/documents/console/public-sharing-permission ` -Region The Regione AWS you blocked public sharing in

Limitazione dell'accesso per bloccare la condivisione pubblica con IAM

Puoi creare policy AWS Identity and Access Management (IAM) che impediscano agli utenti di modificare l'impostazione di condivisione pubblica a blocchi. Ciò impedisce agli utenti di consentire l'accesso indesiderato ai documenti SSM.

Di seguito è riportato un esempio di policy IAM che impedisce agli utenti di aggiornare l'impostazione di blocco della condivisione pubblica. Per utilizzare questo esempio, è necessario sostituire l'ID dell'account Amazon Web Services di esempio con il proprio ID dell'account.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "ssm:UpdateServiceSetting", "Resource": "arn:aws:ssm:*:987654321098:servicesetting/ssm/documents/console/public-sharing-permission" } ] }

Condividere un documento SSM

È possibile condividere documenti AWS Systems Manager (SSM) utilizzando la console Systems Manager. Quando si condividono documenti dalla console, è possibile condividere solo la versione predefinita del documento. È inoltre possibile condividere documenti SSM a livello di codice chiamando l'operazione ModifyDocumentPermission API utilizzando AWS Command Line Interface (AWS CLI) o l'SDK AWS Tools for Windows PowerShell. AWS Prima di condividere un documento, procurarsi gli ID degli Account AWS degli utenti con cui si desidera effettuare la condivisione. Puoi specificare questi ID account quando condividi il documento.

Condivisione di un documento (console)

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

  2. Nel riquadro di navigazione, scegli Documenti.

  3. Nell'elenco dei documenti, scegliere il documento che si desidera condividere, quindi selezionare View details (Visualizza dettagli). Nella scheda Permissions (Autorizzazioni), verificare di essere il proprietario del documento. Soltanto il proprietario di un documento può condividerlo.

  4. Scegli Modifica.

  5. Per condividere il comando pubblicamente, scegliere Public (Pubblico), quindi selezionare Save (Salva). Per condividere il comando privatamente, scegliere Private (Privato), inserire l'ID dell' Account AWS , selezionare Add permission (Aggiungi autorizzazione) e scegliere Save (Salva).

Condivisione di un documento (riga di comando)

La procedura seguente richiede che venga specificata una Regione AWS per la sessione della riga di comando.

  1. Apri AWS CLI o AWS Tools for Windows PowerShell sul tuo computer locale ed esegui il comando seguente per specificare le tue credenziali.

    Nel comando seguente, sostituisci region con le tue informazioni. Per un elenco dei valori regione supportati, consulta la colonna Regione in Endpoint del servizio Systems Manager nella Riferimenti generali di Amazon Web Services.

    Linux & macOS
    aws config AWS Access Key ID: [your key] AWS Secret Access Key: [your key] Default region name: region Default output format [None]:
    Windows
    aws config AWS Access Key ID: [your key] AWS Secret Access Key: [your key] Default region name: region Default output format [None]:
    PowerShell
    Set-AWSCredentials –AccessKey your key –SecretKey your key Set-DefaultAWSRegion -Region region
  2. Utilizzare il comando seguente per elencare tutti i documenti SSM disponibili per l'utente. L'elenco include i documenti creati e i documenti condivisi.

    Linux & macOS
    aws ssm list-documents
    Windows
    aws ssm list-documents
    PowerShell
    Get-SSMDocumentList
  3. Utilizzare il comando seguente per ottenere un documento specifico.

    Linux & macOS
    aws ssm get-document \ --name document name
    Windows
    aws ssm get-document ^ --name document name
    PowerShell
    Get-SSMDocument ` –Name document name
  4. Utilizzare il comando seguente per ottenere una descrizione del documento.

    Linux & macOS
    aws ssm describe-document \ --name document name
    Windows
    aws ssm describe-document ^ --name document name
    PowerShell
    Get-SSMDocumentDescription ` –Name document name
  5. Utilizzare il comando seguente per visualizzare le autorizzazioni per il documento.

    Linux & macOS
    aws ssm describe-document-permission \ --name document name \ --permission-type Share
    Windows
    aws ssm describe-document-permission ^ --name document name ^ --permission-type Share
    PowerShell
    Get-SSMDocumentPermission ` –Name document name ` -PermissionType Share
  6. Utilizzare il comando seguente per modificare le autorizzazioni per il documento e condividerlo. È necessario essere il proprietario del documento per modificare le autorizzazioni. Facoltativamente, puoi specificare una versione del documento che desideri condividere utilizzando il parametro --shared-document-version. Se non specifichi una versione, il sistema condivide la versione Default del documento. Questo comando di esempio consente di condividere privatamente il documento con un determinato utente, in base all'ID dell' Account AWS di quella persona.

    Linux & macOS
    aws ssm modify-document-permission \ --name document name \ --permission-type Share \ --account-ids-to-add Account AWS ID
    Windows
    aws ssm modify-document-permission ^ --name document name ^ --permission-type Share ^ --account-ids-to-add Account AWS ID
    PowerShell
    Edit-SSMDocumentPermission ` –Name document name ` -PermissionType Share ` -AccountIdsToAdd Account AWS ID
  7. Utilizzare il comando seguente per condividere un documento pubblicamente.

    Linux & macOS
    aws ssm modify-document-permission \ --name document name \ --permission-type Share \ --account-ids-to-add 'all'
    Windows
    aws ssm modify-document-permission ^ --name document name ^ --permission-type Share ^ --account-ids-to-add "all"
    PowerShell
    Edit-SSMDocumentPermission ` -Name document name ` -PermissionType Share ` -AccountIdsToAdd ('all')

Modifica delle autorizzazioni per un documento condiviso

Se condividi un comando, gli utenti possono visualizzare e utilizzare quel comando fino a quando non rimuovi l'accesso al documento AWS Systems Manager (SSM) o elimini il documento SSM. Tuttavia, non è possibile eliminare un documento finché è condiviso. Devi interrompere la condivisione prima di poterlo eliminare.

Interruzione della condivisione di un documento (console)

Interrompere la condivisione di un documento
  1. Apri la AWS Systems Manager console all'indirizzo https://console.aws.amazon.com/systems-manager/.

  2. Nel riquadro di navigazione, scegli Documenti.

  3. Nell'elenco dei documenti, scegli il documento che desideri interrompere la condivisione, quindi scegli Dettagli. Nella sezione Autorizzazioni, verifica di essere il proprietario del documento. Soltanto il proprietario del documento può interromperne la condivisione.

  4. Scegli Modifica.

  5. Scegli X per eliminare l' Account AWS ID che non dovrebbe più avere accesso al comando, quindi scegli Salva.

Interruzione della condivisione di un documento (riga di comando)

Apri AWS CLI o AWS Tools for Windows PowerShell sul tuo computer locale ed esegui il comando seguente per interrompere la condivisione di un comando.

Linux & macOS
aws ssm modify-document-permission \ --name document name \ --permission-type Share \ --account-ids-to-remove 'Account AWS ID'
Windows
aws ssm modify-document-permission ^ --name document name ^ --permission-type Share ^ --account-ids-to-remove "Account AWS ID"
PowerShell
Edit-SSMDocumentPermission ` -Name document name ` -PermissionType Share ` –AccountIdsToRemove Account AWS ID

Utilizzo di documenti SSM condivisi

Quando condividi un documento AWS Systems Manager (SSM), il sistema genera un Amazon Resource Name (ARN) e lo assegna al comando. Se si seleziona e si esegue un documento condiviso dalla console di Systems Manager, non si visualizza l'ARN. Tuttavia, se si desidera eseguire un documento SSM condiviso utilizzando un metodo diverso dalla console di Systems Manager, è necessario specificare l'ARN completo del documento per il parametro di richiesta DocumentName. L'ARN completo per un documento SSM viene mostrato quando si esegue il comando per elencare i documenti.

Nota

Non è necessario specificare gli ARN per i documenti AWS pubblici (documenti che iniziano conAWS-*) o per i documenti di tua proprietà.

Utilizzare un documento SSM condiviso (riga di comando)

Per elencare tutti i documenti SSM pubblici

Linux & macOS
aws ssm list-documents \ --filters Key=Owner,Values=Public
Windows
aws ssm list-documents ^ --filters Key=Owner,Values=Public
PowerShell
$filter = New-Object Amazon.SimpleSystemsManagement.Model.DocumentKeyValuesFilter $filter.Key = "Owner" $filter.Values = "Public" Get-SSMDocumentList ` -Filters @($filter)

Per elencare i documenti SSM privati che sono stati condivisi con l'utente

Linux & macOS
aws ssm list-documents \ --filters Key=Owner,Values=Private
Windows
aws ssm list-documents ^ --filters Key=Owner,Values=Private
PowerShell
$filter = New-Object Amazon.SimpleSystemsManagement.Model.DocumentKeyValuesFilter $filter.Key = "Owner" $filter.Values = "Private" Get-SSMDocumentList ` -Filters @($filter)

Per elencare tutti i documenti SSM disponibili per l'utente

Linux & macOS
aws ssm list-documents
Windows
aws ssm list-documents
PowerShell
Get-SSMDocumentList

Per ottenere informazioni su un documento SSM che è stato condiviso con l'utente

Linux & macOS
aws ssm describe-document \ --name arn:aws:ssm:us-east-2:12345678912:document/documentName
Windows
aws ssm describe-document ^ --name arn:aws:ssm:us-east-2:12345678912:document/documentName
PowerShell
Get-SSMDocumentDescription ` –Name arn:aws:ssm:us-east-2:12345678912:document/documentName

Per eseguire un documento SSM condiviso

Linux & macOS
aws ssm send-command \ --document-name arn:aws:ssm:us-east-2:12345678912:document/documentName \ --instance-ids ID
Windows
aws ssm send-command ^ --document-name arn:aws:ssm:us-east-2:12345678912:document/documentName ^ --instance-ids ID
PowerShell
Send-SSMCommand ` –DocumentName arn:aws:ssm:us-east-2:12345678912:document/documentName ` –InstanceIds ID