

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

# Sicurezza in AWS Database Migration Service
<a name="CHAP_Security"></a>

La sicurezza del cloud AWS è la massima priorità. In qualità di AWS cliente, puoi beneficiare di un data center e di un'architettura di rete progettati per soddisfare i requisiti delle organizzazioni più sensibili alla sicurezza.

La sicurezza è una responsabilità condivisa tra AWS te e te. Il [modello di responsabilità condivisa](https://aws.amazon.com/compliance/shared-responsibility-model/) descrive questo come sicurezza *del* cloud e sicurezza *nel* cloud:
+ **Sicurezza del cloud**: AWS è responsabile della protezione dell'infrastruttura che gestisce AWS i servizi nel AWS cloud. AWS ti fornisce anche servizi che puoi utilizzare in modo sicuro. I revisori di terze parti testano e verificano regolarmente l'efficacia della sicurezza come parte dei [programmi di conformitàAWS](https://aws.amazon.com/compliance/programs/). Per maggiori informazioni sui programmi di conformità applicabili AWS DMS, consulta la sezione [AWS Servizi rientranti nell'ambito del programma di conformità](https://aws.amazon.com/compliance/services-in-scope/).
+ **Sicurezza nel cloud**: la tua responsabilità è determinata dal AWS servizio che utilizzi. L'utente è anche responsabile per altri fattori, tra cui la riservatezza dei dati, i requisiti dell'azienda, nonché le leggi e le normative applicabili. 

Questa documentazione ti aiuta a capire come applicare il modello di responsabilità condivisa durante l'utilizzo AWS DMS. I seguenti argomenti mostrano come eseguire la configurazione AWS DMS per soddisfare gli obiettivi di sicurezza e conformità. Imparerai anche a utilizzare altri AWS servizi che ti aiutano a monitorare e proteggere AWS DMS le tue risorse. 

Puoi gestire l'accesso alle tue AWS DMS risorse e ai tuoi database (DBs). Il metodo utilizzato per gestire l'accesso dipende dall'attività di replica da eseguire con AWS DMS: 
+ Utilizza le policy AWS Identity and Access Management (IAM) per assegnare le autorizzazioni che determinano chi è autorizzato a gestire le risorse. AWS DMS AWS DMS richiede che tu disponga delle autorizzazioni appropriate se accedi come utente IAM. Ad esempio, puoi utilizzare IAM per determinare chi è autorizzato a creare, descrivere, modificare ed eliminare cluster e istanze database, applicare tag alle risorse oppure modificare i gruppi di sicurezza. Per ulteriori informazioni su IAM e sul suo utilizzo con AWS DMS, consulta[Gestione delle identità e degli accessi per AWS Database Migration Service](security-iam.md).
+ AWS DMS utilizza Secure Sockets Layer (SSL) per le connessioni degli endpoint con Transport Layer Security (TLS). Per ulteriori informazioni sull'utilizzo SSL/TLS di with, consulta. AWS DMS[Utilizzo di SSL con AWS Database Migration Service](CHAP_Security.SSL.md)
+ AWS DMS utilizza le chiavi di crittografia AWS Key Management Service (AWS KMS) per crittografare lo storage utilizzato dall'istanza di replica e le relative informazioni di connessione all'endpoint. AWS DMS utilizza anche chiavi di AWS KMS crittografia per proteggere i dati di destinazione inattivi per gli endpoint di destinazione Amazon S3 e Amazon Redshift. Per ulteriori informazioni, consulta [Impostazione di una chiave di crittografia e specificazione delle autorizzazioni AWS KMS](#CHAP_Security.EncryptionKey).
+ AWS DMS crea sempre la tua istanza di replica in un cloud privato virtuale (VPC) basato sul servizio Amazon VPC per il massimo controllo possibile degli accessi alla rete. Per le istanze DB e i cluster di istanze, utilizza lo stesso VPC dell'istanza di replica o uno aggiuntivo VPCs per soddisfare questo livello di controllo degli accessi. Ciascun Amazon VPC utilizzato deve essere associato a un gruppo di sicurezza che dispone di regole che consentono l'uscita di tutto il traffico su tutte le porte dal VPC. Questo approccio consente la comunicazione dall'istanza di replica agli endpoint dei database di origine e di destinazione, purché su tali endpoint sia abilitato l'ingresso corretto. 

  Per ulteriori informazioni sulle configurazioni di rete disponibili per, vedere. AWS DMS[Configurazione di una rete per un'istanza di replica](CHAP_ReplicationInstance.VPC.md) Per ulteriori informazioni sulla creazione di un'istanza database o di un cluster di istanza in un VPC, consulta la documentazione relativa alla sicurezza e alla gestione dei cluster per i database Amazon nella [Documentazione AWS](https://docs.aws.amazon.com/index.html?nc2=h_ql_doc_do_v). Per ulteriori informazioni sulle configurazioni di rete supportate da AWS DMS , consulta [Configurazione di una rete per un'istanza di replica](CHAP_ReplicationInstance.VPC.md).
+ Per visualizzare i log di migrazione del database, sono necessarie le autorizzazioni Amazon CloudWatch Logs appropriate per il ruolo IAM che stai utilizzando. Per ulteriori informazioni sulla registrazione per AWS DMS, consulta [Monitoraggio delle attività di replica tramite Amazon CloudWatch](CHAP_Monitoring.md#CHAP_Monitoring.CloudWatch).

**Topics**
+ [Protezione dei dati in AWS Database Migration Service](CHAP_Security.DataProtection.md)
+ [Gestione delle identità e degli accessi per AWS Database Migration Service](security-iam.md)
+ [Convalida della conformità per AWS Database Migration Service](dms-compliance.md)
+ [Resilienza in AWS Database Migration Service](disaster-recovery-resiliency.md)
+ [Sicurezza dell'infrastruttura in AWS Database Migration Service](infrastructure-security.md)
+ [Controllo granulare degli accessi tramite i nomi e i tag delle risorse](CHAP_Security.FineGrainedAccess.md)
+ [Crittografia per migrazioni omogenee AWS DMS](#CHAP_Security.Migrations)
+ [Impostazione di una chiave di crittografia e specificazione delle autorizzazioni AWS KMS](#CHAP_Security.EncryptionKey)
+ [Sicurezza di rete per AWS Database Migration Service](#CHAP_Security.Network)
+ [Utilizzo di SSL con AWS Database Migration Service](CHAP_Security.SSL.md)
+ [Modifica della password del database](#CHAP_Security.ChangingDBPassword)
+ [Utilizzo dell'autenticazione Kerberos con AWS Database Migration Service](CHAP_Security.Kerberos.md)

# Protezione dei dati in AWS Database Migration Service
<a name="CHAP_Security.DataProtection"></a>

## Crittografia dei dati
<a name="CHAP_Security.DataProtection.DataEncryption"></a>

È possibile abilitare la crittografia per le risorse di dati degli endpoint di AWS DMS destinazione supportati. AWS DMS crittografa anche le connessioni verso AWS DMS e tra tutti gli AWS DMS endpoint di origine e di destinazione. Inoltre, è possibile gestire le chiavi utilizzate per abilitare questa AWS DMS crittografia da e dagli endpoint di destinazione supportati.

**Topics**
+ [Crittografia dei dati a riposo](#CHAP_Security.DataProtection.DataEncryption.EncryptionAtRest)
+ [Crittografia dei dati in transito](#CHAP_Security.DataProtection.DataEncryption.EncryptionInTransit)
+ [Gestione delle chiavi](#CHAP_Security.DataProtection.DataEncryption.KeyManagement)

### Crittografia dei dati a riposo
<a name="CHAP_Security.DataProtection.DataEncryption.EncryptionAtRest"></a>

AWS DMS supporta la crittografia a riposo, consentendoti di specificare la modalità di crittografia lato server che desideri utilizzare per inviare i dati replicati ad Amazon S3 prima che vengano copiati sugli endpoint di destinazione supportati. AWS DMS Puoi specificare questa modalità di crittografia impostando l'attributo di connessione `encryptionMode` aggiuntivo per l'endpoint. Se questa `encryptionMode` impostazione specifica la modalità di crittografia delle chiavi KMS, puoi anche creare AWS KMS chiavi personalizzate specificamente per crittografare i dati di destinazione per i seguenti endpoint di destinazione: AWS DMS 
+ Amazon Redshift: per ulteriori informazioni sull'impostazione di `encryptionMode`, consulta [Impostazioni degli endpoint quando si utilizza Amazon Redshift come destinazione per AWS DMS](CHAP_Target.Redshift.md#CHAP_Target.Redshift.ConnectionAttrib). Per ulteriori informazioni sulla creazione di una chiave di AWS KMS crittografia personalizzata, consulta. [Creazione e utilizzo di AWS KMS chiavi per crittografare i dati di destinazione di Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys)
+ Amazon S3: per ulteriori informazioni sull'impostazione di `encryptionMode`, consulta [Impostazioni degli endpoint quando si utilizza Amazon S3 come destinazione per AWS DMS](CHAP_Target.S3.md#CHAP_Target.S3.Configuring). Per ulteriori informazioni sulla creazione di una chiave di AWS KMS crittografia personalizzata, vedere[Creazione di AWS KMS chiavi per crittografare gli oggetti di destinazione di Amazon S3](CHAP_Target.S3.md#CHAP_Target.S3.KMSKeys).

### Crittografia dei dati in transito
<a name="CHAP_Security.DataProtection.DataEncryption.EncryptionInTransit"></a>

AWS DMS supporta la crittografia in transito garantendo che i dati replicati vengano spostati in modo sicuro dall'endpoint di origine all'endpoint di destinazione. È inclusa la crittografia di un bucket S3 nell'istanza di replica utilizzata dall'attività di replica per lo storage intermedio mentre i dati si spostano attraverso la pipeline di replica. Per crittografare le connessioni delle attività agli endpoint di origine e di destinazione AWS DMS utilizza Secure Socket Layer (SSL) o Transport Layer Security (TLS). Crittografando le connessioni a entrambi gli endpoint, AWS DMS garantisce la sicurezza dei dati durante il trasferimento dall'endpoint di origine all'attività di replica e dall'attività all'endpoint di destinazione. Per ulteriori informazioni sull'utilizzo di with, consulta SSL/TLS AWS DMS[Utilizzo di SSL con AWS Database Migration Service](CHAP_Security.SSL.md)

AWS DMS supporta chiavi predefinite e personalizzate per crittografare sia lo storage di replica intermedio che le informazioni di connessione. Puoi gestire queste chiavi utilizzando AWS KMS. Per ulteriori informazioni, consulta [Impostazione di una chiave di crittografia e specificazione delle autorizzazioni AWS KMS](CHAP_Security.md#CHAP_Security.EncryptionKey).

### Gestione delle chiavi
<a name="CHAP_Security.DataProtection.DataEncryption.KeyManagement"></a>

AWS DMS supporta chiavi predefinite o personalizzate per crittografare lo storage di replica, le informazioni di connessione e l'archiviazione dei dati di destinazione per determinati endpoint di destinazione. È possibile gestire queste chiavi utilizzando. AWS KMS Per ulteriori informazioni, consulta [Impostazione di una chiave di crittografia e specificazione delle autorizzazioni AWS KMS](CHAP_Security.md#CHAP_Security.EncryptionKey).

## Riservatezza del traffico Internet
<a name="CHAP_Security.DataProtection.InternetworkTraffic"></a>

Le connessioni sono dotate di protezione tra gli endpoint di origine AWS DMS e di destinazione nella stessa AWS regione, indipendentemente dal fatto che vengano eseguite in locale o come parte di un AWS servizio nel cloud. (Almeno un endpoint, di origine o di destinazione, deve essere eseguito come parte di un AWS servizio nel cloud.) Questa protezione si applica indipendentemente dal fatto che questi componenti condividano lo stesso cloud privato virtuale (VPC) o esistano separatamente VPCs, se si VPCs trovano tutti nella stessa AWS regione. Per ulteriori informazioni sulle configurazioni di rete supportate per AWS DMS, vedere. [Configurazione di una rete per un'istanza di replica](CHAP_ReplicationInstance.VPC.md) Per ulteriori informazioni sulle considerazioni di protezione quando si utilizzano queste configurazioni di rete, consulta [Sicurezza di rete per AWS Database Migration Service](CHAP_Security.md#CHAP_Security.Network).

## Protezione dei dati in DMS Fleet Advisor
<a name="fa-security-data-protection"></a>

DMS Fleet Advisor raccoglie e analizza i metadati del database per determinare la dimensione corretta della destinazione della migrazione. DMS Fleet Advisor non accede ai dati nelle tabelle e non li trasferisce. Inoltre, DMS Fleet Advisor non tiene traccia dell'utilizzo delle funzionalità del database e non accede alle statistiche di utilizzo.

Puoi controllare l'accesso ai database quando crei gli utenti che DMS Fleet Advisor utilizza per utilizzare i database. Fornisci i privilegi richiesti agli utenti. Per utilizzare DMS Fleet Advisor, fornisci agli utenti dei database le autorizzazioni di lettura. DMS Fleet Advisor non modifica i database e non richiede autorizzazioni di scrittura. Per ulteriori informazioni, consulta [Creazione di utenti del database per AWS DMS Fleet Advisor](fa-database-users.md).

È possibile utilizzare la crittografia dei dati nei database. AWS DMS crittografa anche le connessioni all'interno di DMS Fleet Advisor e all'interno dei suoi raccoglitori di dati.

Il raccoglitore di dati DMS utilizza l'interfaccia di programmazione delle applicazioni di protezione dei dati per crittografare, proteggere e archiviare le informazioni sull'ambiente e sulle credenziali dei database del cliente. DMS Fleet Advisor archivia questi dati crittografati in un file sul server su cui è in funzione il raccoglitore di dati DMS. DMS Fleet Advisor non trasferisce i dati dal server. Per ulteriori informazioni sull'interfaccia di programmazione delle applicazioni di protezione dei dati, vedi [How to: Use Data Protection](https://learn.microsoft.com/en-us/dotnet/standard/security/how-to-use-data-protection).

Dopo aver installato il raccoglitore di dati DMS, puoi visualizzare tutte le query eseguite dall'applicazione per raccogliere le metriche. Puoi eseguire il raccoglitore di dati DMS in modalità offline e quindi esaminare i dati raccolti sul tuo server. Inoltre, puoi rivedere questi dati raccolti nel tuo bucket Amazon S3. Per ulteriori informazioni, consulta [Come funziona il raccoglitore di dati DMS?](fa-collecting.md#fa-data-collectors-how-it-works).

# Disattivazione dell'utilizzo dei dati per il miglioramento del servizio in AWS Database Migration Service
<a name="CHAP_Security.dataserviceimprovement"></a>

Puoi scegliere di rinunciare all'utilizzo dei tuoi dati per lo sviluppo e il miglioramento AWS DMS utilizzando la politica di opt-out di AWS Organizations. Puoi scegliere di rinunciare anche se al momento AWS DMS non raccoglie tali dati. Per ulteriori informazioni, consulta le [politiche di disattivazione dei servizi di intelligenza artificiale](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) nella *AWS Organizations User Guide*.

Attualmente, AWS Database Migration Service (AWS DMS) non raccoglie nessuno dei dati che elabora per conto dell'utente. Per sviluppare e migliorare il DMS e le funzionalità di altri AWS servizi, DMS potrebbe raccogliere tali dati in futuro. Aggiorneremo questa pagina di documentazione quando DMS sarà configurato per raccogliere dati. Avrai la possibilità di annullare l'iscrizione in qualsiasi momento.

**Nota**  
Per poter utilizzare la politica di opt-out, i tuoi AWS account devono essere gestiti centralmente da AWS Organizations. Se non hai creato un'organizzazione per i tuoi AWS account, consulta [Managing an organization with AWS Organizations nella AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org.html) *User Guide*.

Il rifiuto esplicito ha gli effetti seguenti:
+ AWS DMS elimina i dati raccolti e archiviati per scopi di miglioramento del servizio prima dell'eventuale rinuncia da parte dell'utente.
+ Dopo l'opt-out, AWS DMS non raccoglierai o archivierai più questi dati per scopi di miglioramento del servizio.

# Inferenza tra regioni in AWS Database Migration Service
<a name="CHAP_Security.DataProtection.CrossRegionInference"></a>

 Alcune AWS Database Migration Service funzionalità utilizzano l'inferenza AI interregionale per selezionare automaticamente quella ottimale all' Regione AWS interno della tua area geografica per elaborare le richieste di inferenza. Questo approccio massimizza le risorse di elaborazione disponibili e la disponibilità dei modelli ed è progettato per fornire un'esperienza cliente di alta qualità. Con l’inferenza tra regioni, ottieni: 
+ Accesso alle funzionalità e alle funzionalità di intelligenza artificiale più avanzate
+ Maggiore throughput e resilienza durante i periodi di forte domanda

 Le richieste di inferenza AI interregionali vengono mantenute all'interno di aree geografiche Regioni AWS che fanno parte della stessa area geografica della principale. Regione AWS Ad esempio, una richiesta effettuata da un'azienda primaria Regione AWS negli Stati Uniti viene conservata all'interno degli Regioni AWS Stati Uniti. I tuoi dati rimangono archiviati solo nella cartella principale Regione AWS. Tutti i dati vengono trasmessi crittografati attraverso la rete sicura di Amazon. 

**Nota**  
Amazon CloudWatch e AWS CloudTrail i log non specificano Regione AWS in che modo avviene l'inferenza dell'IA.

## Inferenza tra regioni nella conversione dello schema DMS
<a name="CHAP_Security.DataProtection.CrossRegionInference.SchemaConversion"></a>

 Quando utilizzi le funzionalità di intelligenza artificiale generativa in DMS Schema Conversion, i frammenti di codice anonimizzati e i relativi metadati dello schema potrebbero essere inviati ad altre persone all'interno della stessa area geografica per l'elaborazione dell'IA. Regioni AWS I dati di produzione rimangono nella cartella principale Regione AWS e non vengono mai consultati o trasmessi. 

**Importante**  
 L'inferenza tra regioni è sempre abilitata quando si utilizzano le funzionalità di intelligenza artificiale generativa in DMS Schema Conversion. Per mantenere l'elaborazione della conversione dello schema residente nel sistema principale Regione AWS, utilizza la conversione dello schema con le funzionalità di intelligenza artificiale generativa disattivate. 

 Le funzionalità di intelligenza artificiale generativa in DMS Schema Conversion sono attualmente disponibili in un numero limitato di regioni. La tabella seguente descrive a cosa possono essere indirizzate Regioni AWS le richieste a seconda della destinazione principale. Regione AWS


| Primaria Regione AWS | Inferenza Regioni AWS | 
| --- | --- | 
| Asia Pacifico (Tokyo) (ap-northeast-1) |  Asia Pacifico (Tokyo) (ap-northeast-1) Asia Pacifico (Osaka-Locale) (ap-northeast-3)  | 
| Asia Pacifico (Osaka-Locale) (ap-northeast-3) |  Asia Pacifico (Tokyo) (ap-northeast-1) Asia Pacifico (Osaka-Locale) (ap-northeast-3)  | 
| Asia Pacifico (Sydney) (ap-southeast-2) |  Asia Pacifico (Sydney) (ap-southeast-2) Asia Pacifico (Melbourne) (ap-southeast-4)  | 
| Canada (Centrale) (ca-central-1) |  Canada (Centrale) (ca-central-1) Stati Uniti orientali (Virginia settentrionale) (us-east-1) Stati Uniti orientali (Ohio) (us-east-2) Stati Uniti occidentali (Oregon) (us-west-2)  | 
| Europa (Francoforte) (eu-central-1) |  Europa (Francoforte) (eu-central-1) Europa (Stoccolma) (eu-north-1) Europa (Milano) (eu-south-1) Europa (Spagna) (eu-south-2) Europa (Irlanda) (eu-west-1) Europa (Parigi) (eu-west-3)  | 
| Europa (Stoccolma) (eu-north-1) |  Europa (Francoforte) (eu-central-1) Europa (Stoccolma) (eu-north-1) Europa (Milano) (eu-south-1) Europa (Spagna) (eu-south-2) Europa (Irlanda) (eu-west-1) Europa (Parigi) (eu-west-3)  | 
| Europa (Irlanda) (eu-west-1) |  Europa (Francoforte) (eu-central-1) Europa (Stoccolma) (eu-north-1) Europa (Milano) (eu-south-1) Europa (Spagna) (eu-south-2) Europa (Irlanda) (eu-west-1) Europa (Parigi) (eu-west-3)  | 
| Europa (Londra) (eu-west-2) |  Europa (Francoforte) (eu-central-1) Europa (Stoccolma) (eu-north-1) Europa (Milano) (eu-south-1) Europa (Spagna) (eu-south-2) Europa (Irlanda) (eu-west-1) Europa (Londra) (eu-west-2) Europa (Parigi) (eu-west-3)  | 
| Europa (Parigi) (eu-west-3) |  Europa (Francoforte) (eu-central-1) Europa (Stoccolma) (eu-north-1) Europa (Milano) (eu-south-1) Europa (Spagna) (eu-south-2) Europa (Irlanda) (eu-west-1) Europa (Parigi) (eu-west-3)  | 
| Stati Uniti orientali (Virginia settentrionale) (us-east-1) |  Stati Uniti orientali (Virginia settentrionale) (us-east-1) Stati Uniti orientali (Ohio) (us-east-2) Stati Uniti occidentali (Oregon) (us-west-2)  | 
| Stati Uniti orientali (Ohio) (us-east-2) |  Stati Uniti orientali (Virginia settentrionale) (us-east-1) Stati Uniti orientali (Ohio) (us-east-2) Stati Uniti occidentali (Oregon) (us-west-2)  | 
| Stati Uniti occidentali (Oregon) (us-west-2) |  Stati Uniti orientali (Virginia settentrionale) (us-east-1) Stati Uniti orientali (Ohio) (us-east-2) Stati Uniti occidentali (Oregon) (us-west-2)  | 

# Gestione delle identità e degli accessi per AWS Database Migration Service
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) aiuta un Servizio AWS amministratore a controllare in modo sicuro l'accesso alle AWS risorse. Gli amministratori IAM controllano chi può essere *autenticato* (effettuato l'accesso) e *autorizzato* (disporre delle autorizzazioni) a utilizzare le risorse. AWS DMS IAM è uno Servizio AWS strumento che puoi utilizzare senza costi aggiuntivi.

**Topics**
+ [Destinatari](#security_iam_audience)
+ [Autenticazione con identità](#security_iam_authentication)
+ [Gestione dell’accesso tramite policy](#security_iam_access-manage)
+ [Come AWS Database Migration Service funziona con IAM](security_iam_service-with-iam.md)
+ [AWS Database Migration Service esempi di policy basate sull'identità](security_iam_id-based-policy-examples.md)
+ [Esempi di policy basate sulle risorse per AWS KMS](security_iam_resource-based-policy-examples.md)
+ [Utilizzo dei segreti per accedere agli AWS Database Migration Service endpoint](security_iam_secretsmanager.md)
+ [Utilizzo di ruoli collegati ai servizi per AWS DMS](using-service-linked-roles.md)
+ [Risoluzione dei problemi di identità e accesso AWS Database Migration Service](security_iam_troubleshoot.md)
+ [Autorizzazioni IAM necessarie per l'uso AWS DMS](#CHAP_Security.IAMPermissions)
+ [Creazione dei ruoli IAM da utilizzare con AWS DMS](#CHAP_Security.APIRole)
+ [Prevenzione del confused deputy tra servizi](cross-service-confused-deputy-prevention.md)
+ [AWS politiche gestite per AWS Database Migration Service](security-iam-awsmanpol.md)

## Destinatari
<a name="security_iam_audience"></a>

Il modo in cui utilizzi AWS Identity and Access Management (IAM) varia in base al tuo ruolo:
+ **Utente del servizio**: richiedi le autorizzazioni all’amministratore se non riesci ad accedere alle funzionalità (consulta [Risoluzione dei problemi di identità e accesso AWS Database Migration Service](security_iam_troubleshoot.md))
+ **Amministratore del servizio**: determina l’accesso degli utenti e invia le richieste di autorizzazione (consulta [Come AWS Database Migration Service funziona con IAM](security_iam_service-with-iam.md))
+ **Amministratore IAM**: scrivi policy per gestire l’accesso (consulta [AWS Database Migration Service esempi di policy basate sull'identità](security_iam_id-based-policy-examples.md))

## Autenticazione con identità
<a name="security_iam_authentication"></a>

L'autenticazione è il modo in cui accedi AWS utilizzando le tue credenziali di identità. Devi autenticarti come utente IAM o assumendo un ruolo IAM. Utente root dell'account AWS

Puoi accedere come identità federata utilizzando credenziali provenienti da una fonte di identità come AWS IAM Identity Center (IAM Identity Center), autenticazione Single Sign-On o credenziali. Google/Facebook Per ulteriori informazioni sull’accesso, consulta [Come accedere all’ Account AWS](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) nella *Guida per l’utente di Accedi ad AWS *.

Per l'accesso programmatico, AWS fornisce un SDK e una CLI per firmare crittograficamente le richieste. Per ulteriori informazioni, consulta [AWS Signature Version 4 per le richieste API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) nella *Guida per l’utente di IAM*.

### Account AWS utente root
<a name="security_iam_authentication-rootuser"></a>

 Quando si crea un Account AWS, si inizia con un'identità di accesso denominata *utente Account AWS root* che ha accesso completo a tutte Servizi AWS le risorse. Consigliamo vivamente di non utilizzare l’utente root per le attività quotidiane. Per le attività che richiedono le credenziali come utente root, consulta [Attività che richiedono le credenziali dell’utente root](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) nella *Guida per l’utente di IAM*. 

### Utenti e gruppi IAM
<a name="security_iam_authentication-iamuser"></a>

Un *[utente IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* è una identità che dispone di autorizzazioni specifiche per una singola persona o applicazione. Ti consigliamo di utilizzare credenziali temporanee invece di utenti IAM con credenziali a lungo termine. Per ulteriori informazioni, consulta [Richiedere agli utenti umani di utilizzare la federazione con un provider di identità per accedere AWS utilizzando credenziali temporanee nella Guida](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) per l'*utente IAM*.

Un [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) specifica una raccolta di utenti IAM e semplifica la gestione delle autorizzazioni per gestire gruppi di utenti di grandi dimensioni. Per ulteriori informazioni, consulta [Casi d’uso per utenti IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) nella *Guida per l’utente di IAM*.

### Ruoli IAM
<a name="security_iam_authentication-iamrole"></a>

Un *[ruolo IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* è un’identità con autorizzazioni specifiche che fornisce credenziali temporanee. Puoi assumere un ruolo [passando da un ruolo utente a un ruolo IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) o chiamando un'operazione AWS CLI o AWS API. Per ulteriori informazioni, consulta [Metodi per assumere un ruolo](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) nella *Guida per l’utente di IAM*.

I ruoli IAM sono utili per l’accesso degli utenti federati, le autorizzazioni utente IAM temporanee, l’accesso multi-account, l’accesso multi-servizio e le applicazioni in esecuzione su Amazon EC2. Per maggiori informazioni, consultare [Accesso a risorse multi-account in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) nella *Guida per l’utente IAM*.

## Gestione dell’accesso tramite policy
<a name="security_iam_access-manage"></a>

Puoi controllare l'accesso AWS creando policy e associandole a AWS identità o risorse. Una policy definisce le autorizzazioni quando è associata a un'identità o a una risorsa. AWS valuta queste politiche quando un preside effettua una richiesta. La maggior parte delle politiche viene archiviata AWS come documenti JSON. Per maggiori informazioni sui documenti delle policy JSON, consulta [Panoramica delle policy JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json) nella *Guida per l’utente IAM*.

Utilizzando le policy, gli amministratori specificano chi ha accesso a cosa definendo quale **principale** può eseguire **azioni** su quali **risorse** e in quali **condizioni**.

Per impostazione predefinita, utenti e ruoli non dispongono di autorizzazioni. Un amministratore IAM crea le policy IAM e le aggiunge ai ruoli, che gli utenti possono quindi assumere. Le policy IAM definiscono le autorizzazioni indipendentemente dal metodo utilizzato per eseguirle.

### Policy basate sull’identità
<a name="security_iam_access-manage-id-based-policies"></a>

Le policy basate su identità sono documenti di policy di autorizzazione JSON che è possibile collegare a un’identità (utente, gruppo o ruolo). Tali policy controllano le operazioni autorizzate per l’identità, nonché le risorse e le condizioni in cui possono essere eseguite. Per informazioni su come creare una policy basata su identità, consultare [Definizione di autorizzazioni personalizzate IAM con policy gestite dal cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) nella *Guida per l’utente IAM*.

Le policy basate su identità possono essere *policy in linea* (con embedding direttamente in una singola identità) o *policy gestite* (policy autonome collegate a più identità). Per informazioni su come scegliere tra una policy gestita o una policy inline, consulta [Scegliere tra policy gestite e policy in linea](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html) nella *Guida per l’utente di IAM*.

### Policy basate sulle risorse
<a name="security_iam_access-manage-resource-based-policies"></a>

Le policy basate su risorse sono documenti di policy JSON che è possibile collegare a una risorsa. Gli esempi includono le *policy di trust dei ruoli* IAM e le *policy dei bucket* di Amazon S3. Nei servizi che supportano policy basate sulle risorse, gli amministratori dei servizi possono utilizzarli per controllare l’accesso a una risorsa specifica. In una policy basata sulle risorse è obbligatorio [specificare un’entità principale](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html).

Le policy basate sulle risorse sono policy inline che si trovano in tale servizio. Non è possibile utilizzare le policy AWS gestite di IAM in una policy basata sulle risorse.

### Liste di controllo degli accessi () ACLs
<a name="security_iam_access-manage-acl"></a>

Le liste di controllo degli accessi (ACLs) controllano quali principali (membri dell'account, utenti o ruoli) dispongono delle autorizzazioni per accedere a una risorsa. ACLs sono simili alle politiche basate sulle risorse, sebbene non utilizzino il formato del documento di policy JSON.

Amazon S3 e Amazon VPC sono esempi di servizi che supportano. AWS WAF ACLs Per ulteriori informazioni ACLs, consulta la [panoramica della lista di controllo degli accessi (ACL)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) nella *Amazon Simple Storage Service Developer Guide*.

### Altri tipi di policy
<a name="security_iam_access-manage-other-policies"></a>

AWS supporta tipi di policy aggiuntivi che possono impostare le autorizzazioni massime concesse dai tipi di policy più comuni:
+ **Limiti delle autorizzazioni**: imposta il numero massimo di autorizzazioni che una policy basata su identità ha la possibilità di concedere a un’entità IAM. Per ulteriori informazioni, consulta [Limiti delle autorizzazioni per le entità IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) nella *Guida per l’utente di IAM*.
+ **Politiche di controllo del servizio (SCPs)**: specificano le autorizzazioni massime per un'organizzazione o un'unità organizzativa in. AWS Organizations Per ulteriori informazioni, consultare [Policy di controllo dei servizi](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) nella *Guida per l’utente di AWS Organizations *.
+ **Politiche di controllo delle risorse (RCPs)**: imposta le autorizzazioni massime disponibili per le risorse nei tuoi account. Per ulteriori informazioni, consulta [Politiche di controllo delle risorse (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) nella *Guida per l'AWS Organizations utente*.
+ **Policy di sessione**: policy avanzate passate come parametro quando si crea una sessione temporanea per un ruolo o un utente federato. Per maggiori informazioni, consultare [Policy di sessione](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) nella *Guida per l’utente IAM*.

### Più tipi di policy
<a name="security_iam_access-manage-multiple-policies"></a>

Quando a una richiesta si applicano più tipi di policy, le autorizzazioni risultanti sono più complicate da comprendere. Per scoprire come si AWS determina se consentire o meno una richiesta quando sono coinvolti più tipi di policy, consulta [Logica di valutazione delle policy](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html) nella *IAM User Guide*.

# Come AWS Database Migration Service funziona con IAM
<a name="security_iam_service-with-iam"></a>

Prima di utilizzare IAM per gestire l'accesso a AWS DMS, è necessario comprendere con quali funzionalità IAM è possibile utilizzare AWS DMS. Per avere una visione di alto livello di come AWS DMS e altri AWS servizi funzionano con IAM, consulta [AWS i servizi che funzionano con IAM nella IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) *User Guide*.

**Topics**
+ [AWS DMS politiche basate sull'identità](#security_iam_service-with-iam-id-based-policies)
+ [AWS DMS politiche basate sulle risorse](#security_iam_service-with-iam-resource-based-policies)
+ [Autorizzazione basata su tag AWS DMS](#security_iam_service-with-iam-tags)
+ [Ruoli IAM per AWS DMS](#security_iam_service-with-iam-roles)
+ [Identity and Access Management per DMS Fleet Advisor](#fa-security-iam)

## AWS DMS politiche basate sull'identità
<a name="security_iam_service-with-iam-id-based-policies"></a>

Con le policy basate su identità IAM puoi specificare azioni e risorse consentite o rifiutate, nonché le condizioni in base alle quali le azioni sono consentite o rifiutate. AWS DMS supporta azioni, risorse e chiavi di condizione specifiche. Per informazioni su tutti gli elementi utilizzati in una policy JSON, consulta [Documentazione di riferimento agli elementi delle policy JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) nella *Guida per l'utente IAM*.

### Azioni
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. In altre parole, quale **entità principale** può eseguire **operazioni** su quali **risorse** e in quali **condizioni**.

L'elemento `Action` di una policy JSON descrive le operazioni che è possibile utilizzare per consentire o negare l'accesso in una policy. Includere le operazioni in una policy per concedere le autorizzazioni a eseguire l’operazione associata.

Le azioni politiche AWS DMS utilizzano il seguente prefisso prima dell'azione:. `dms:` Ad esempio, per concedere a qualcuno l'autorizzazione a creare un'attività di replica con l'operazione AWS DMS `CreateReplicationTask` API, includi l'`dms:CreateReplicationTask`azione nella sua politica. Le dichiarazioni politiche devono includere un `NotAction` elemento `Action` or. AWS DMS definisce il proprio set di azioni che descrivono le attività che è possibile eseguire con questo servizio.

Per specificare più operazioni  in una singola istruzione, separarle con una virgola come mostrato di seguito.

```
"Action": [
      "dms:action1",
      "dms:action2"
```

Puoi specificare più operazioni tramite caratteri jolly (\$1). Ad esempio, per specificare tutte le operazioni che iniziano con la parola `Describe`, includi la seguente operazione.

```
"Action": "dms:Describe*"
```



Per visualizzare un elenco di AWS DMS azioni, consulta [Actions Defined by AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-actions-as-permissions) nella *IAM User Guide*.

### Resources
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. In altre parole, quale **entità principale** può eseguire **operazioni** su quali **risorse** e in quali **condizioni**.

L’elemento JSON `Resource` della policy specifica l’oggetto o gli oggetti ai quali si applica l’operazione. Come best practice, specifica una risorsa utilizzando il suo [nome della risorsa Amazon (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Per le azioni che non supportano le autorizzazioni a livello di risorsa, si utilizza un carattere jolly (\$1) per indicare che l’istruzione si applica a tutte le risorse.

```
"Resource": "*"
```



AWS DMS funziona con le seguenti risorse:
+ Certificati
+ Endpoints
+ Abbonamenti a eventi
+ Istanze di replica
+ Gruppi di sottoreti di replica (sicurezza)
+ Attività di replica

La risorsa o le risorse AWS DMS necessarie dipendono dall'azione o dalle azioni richiamate. È necessaria una politica che consenta queste azioni sulla risorsa o sulle risorse associate specificate dalla risorsa. ARNs

Ad esempio, una risorsa AWS DMS endpoint ha il seguente ARN:

```
arn:${Partition}:dms:${Region}:${Account}:endpoint/${InstanceId}
```

Per ulteriori informazioni sul formato di ARNs, consulta [Amazon Resource Names (ARNs) e AWS service namespaces](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html).

Ad esempio, per specificare l'istanza dell'endpoint `1A2B3C4D5E6F7G8H9I0J1K2L3M` per la regione `us-east-2` nell'istruzione, utilizza il seguente ARN.

```
"Resource": "arn:aws:dms:us-east-2:987654321098:endpoint/1A2B3C4D5E6F7G8H9I0J1K2L3M"
```

Per specificare tutti gli endpoint che appartengono a un account specifico, utilizza il carattere jolly (\$1):

```
"Resource": "arn:aws:dms:us-east-2:987654321098:endpoint/*"
```

Alcune AWS DMS azioni, come quelle per la creazione di risorse, non possono essere eseguite su una risorsa specifica. In questi casi, è necessario utilizzare il carattere jolly (\$1).

```
"Resource": "*"
```

Alcune azioni AWS DMS API coinvolgono più risorse. Ad esempio, `StartReplicationTask` avvia e connette un'attività di replica a due risorse endpoint del database, un'origine e una destinazione, pertanto un utente IAM deve disporre delle autorizzazioni per leggere l'endpoint di origine e scrivere nell'endpoint di destinazione. Per specificare più risorse in una singola istruzione, separale ARNs con virgole. 

```
"Resource": [
      "resource1",
      "resource2" ]
```

Per ulteriori informazioni sul controllo dell'accesso alle AWS DMS risorse mediante le politiche, vedere[Utilizzo dei nomi delle risorse per il controllo dell'accesso](CHAP_Security.FineGrainedAccess.md#CHAP_Security.FineGrainedAccess.ResourceName). Per visualizzare un elenco dei tipi di AWS DMS risorse e relativi ARNs, consulta [Resources Defined by AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-resources-for-iam-policies) nella *IAM User Guide*. Per informazioni sulle operazioni con cui è possibile specificare l'ARN di ogni risorsa, consulta [Operazioni definite da AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-actions-as-permissions).

### Chiavi di condizione
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. In altre parole, quale **entità principale** può eseguire **operazioni** su quali **risorse** e in quali **condizioni**.

L’elemento `Condition` specifica quando le istruzioni vengono eseguite in base a criteri definiti. È possibile compilare espressioni condizionali che utilizzano [operatori di condizione](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), ad esempio uguale a o minore di, per soddisfare la condizione nella policy con i valori nella richiesta. Per visualizzare tutte le chiavi di condizione AWS globali, consulta le chiavi di [contesto delle condizioni AWS globali nella Guida](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) per l'*utente IAM*.

AWS DMS definisce il proprio set di chiavi di condizione e supporta anche l'utilizzo di alcune chiavi di condizione globali. Per visualizzare tutte le chiavi di condizione AWS globali, consulta le [chiavi di contesto delle condizioni AWS globali](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) nella *Guida per l'utente IAM*.



AWS DMS definisce un set di tag standard che puoi utilizzare nelle relative chiavi di condizione e ti consente anche di definire tag personalizzati. Per ulteriori informazioni, consulta [Utilizzo dei tag per controllare l'accesso](CHAP_Security.FineGrainedAccess.md#CHAP_Security.FineGrainedAccess.Tags).

Per visualizzare un elenco di chiavi di AWS DMS condizione, consulta [Condition Keys for AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-policy-keys) nella *IAM User Guide*. Per informazioni su azioni e risorse con cui è possibile utilizzare una chiave di condizione, consulta [Operazioni definite da AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-actions-as-permissions) e [Risorse definite da AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-resources-for-iam-policies).

### Esempi
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Per visualizzare esempi di politiche AWS DMS basate sull'identità, consulta. [AWS Database Migration Service esempi di policy basate sull'identità](security_iam_id-based-policy-examples.md)

## AWS DMS politiche basate sulle risorse
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Le politiche basate sulle risorse sono documenti di policy JSON che specificano quali azioni uno specifico principale può eseguire su una determinata risorsa e in quali condizioni. AWS DMS AWS DMS supporta politiche di autorizzazione basate sulle risorse per le chiavi di AWS KMS crittografia create per crittografare i dati migrati verso gli endpoint di destinazione supportati. Gli endpoint di destinazione supportati includono Amazon Redshift e Amazon S3. Utilizzando le policy basate su risorse, è possibile concedere l'autorizzazione per l'utilizzo di queste chiavi di crittografia ad altri account per ciascun endpoint di destinazione.

Per consentire l'accesso a più account, è possibile specificare un intero account o entità IAM in un altro account come [entità principale in una policy basata su risorse](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html). L’aggiunta di un’entità principale multi-account a una policy basata sulle risorse rappresenta solo una parte della relazione di trust. Quando il principale e la risorsa si trovano in AWS account diversi, è inoltre necessario concedere all'entità principale l'autorizzazione ad accedere alla risorsa. Concedi l'autorizzazione collegando una policy basata sull'identità all'entità. Tuttavia, se una policy basata su risorse concede l'accesso a un'entità principale nello stesso account, non sono richieste ulteriori policy basate su identità. Per ulteriori informazioni, consulta [Differenza tra i ruoli IAM e le policy basate su risorse](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html) nella *Guida per l'utente di IAM*.

Il AWS DMS servizio supporta solo un tipo di policy basata sulle risorse denominata *policy chiave, che è associata a una AWS KMS chiave* di crittografia. Questa policy definisce quali entità principali (account, utenti, ruoli e utenti federati) possono eseguire la crittografia dei dati migrati nell'endpoint di destinazione supportato.

Per informazioni su come collegare una policy basata su risorse a una chiave di crittografia creata per gli endpoint di destinazione supportati, consulta [Creazione e utilizzo di AWS KMS chiavi per crittografare i dati di destinazione di Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys) e [Creazione di AWS KMS chiavi per crittografare gli oggetti di destinazione di Amazon S3](CHAP_Target.S3.md#CHAP_Target.S3.KMSKeys).

### Esempi
<a name="security_iam_service-with-iam-resource-based-policies-examples"></a>



Per esempi di politiche basate sulle AWS DMS risorse, vedere. [Esempi di policy basate sulle risorse per AWS KMS](security_iam_resource-based-policy-examples.md)

## Autorizzazione basata su tag AWS DMS
<a name="security_iam_service-with-iam-tags"></a>

È possibile allegare tag alle AWS DMS risorse o passare tag in una richiesta a AWS DMS. Per controllare l'accesso in base ai tag, fornisci le informazioni sui tag nell'[elemento condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) di una policy utilizzando il tasto `dms:ResourceTag/key-name``aws:RequestTag/key-name`, o `aws:TagKeys` condition. AWS DMS definisce un set di tag standard che è possibile utilizzare nelle relative chiavi di condizione e consente inoltre di definire tag personalizzati. Per ulteriori informazioni, consulta [Utilizzo dei tag per controllare l'accesso](CHAP_Security.FineGrainedAccess.md#CHAP_Security.FineGrainedAccess.Tags).

Per un esempio di policy basata su identità che limita l'accesso a una risorsa in base ai tag, consulta [Accesso alle AWS DMS risorse in base ai tag](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-access-resources-tags).

## Ruoli IAM per AWS DMS
<a name="security_iam_service-with-iam-roles"></a>

Un [ruolo IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) è un'entità all'interno del tuo AWS account che dispone di autorizzazioni specifiche.

### Utilizzo di credenziali temporanee con AWS DMS
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

Puoi utilizzare le credenziali temporanee per effettuare l'accesso utilizzando la federazione, assumere un ruolo IAM o assumere un ruolo tra più account. È possibile ottenere credenziali di sicurezza temporanee chiamando operazioni AWS STS API come [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)o. [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html) 

AWS DMS supporta l'utilizzo di credenziali temporanee. 

### Ruoli collegati ai servizi
<a name="security_iam_service-with-iam-roles-service-linked"></a>

[I ruoli collegati ai](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) AWS servizi consentono ai servizi di accedere alle risorse di altri servizi per completare un'azione per conto dell'utente. I ruoli collegati ai servizi sono visualizzati nell'account IAM e sono di proprietà del servizio. Un amministratore IAM può visualizzare le autorizzazioni per i ruoli collegati ai servizi, ma non può modificarle.

Per informazioni dettagliate sulla creazione o la gestione di ruoli AWS DMS collegati ai servizi, consulta. [Uso di ruoli collegati ai servizi](using-service-linked-roles.md)

### Ruoli dei servizi
<a name="security_iam_service-with-iam-roles-service"></a>

Questa funzionalità consente a un servizio di assumere un [ruolo di servizio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role) per conto dell'utente. Questo ruolo consente al servizio di accedere alle risorse in altri servizi per completare un'azione per conto dell'utente. I ruoli dei servizi sono visualizzati nell'account IAM e sono di proprietà dell'account. Ciò significa che un amministratore IAM può modificare le autorizzazioni per questo ruolo. Tuttavia, questo potrebbe pregiudicare la funzionalità del servizio.

AWS DMS supporta due tipi di ruoli di servizio che è necessario creare per utilizzare determinati endpoint di origine o destinazione:
+ Ruoli con autorizzazioni per consentire l'accesso AWS DMS ai seguenti endpoint di origine e destinazione (o alle relative risorse):
  + Amazon DynamoDB come destinazione. Per ulteriori informazioni, consulta [Prerequisiti per l'utilizzo di DynamoDB come destinazione per AWS Database Migration Service](CHAP_Target.DynamoDB.md#CHAP_Target.DynamoDB.Prerequisites).
  + OpenSearch come destinazione: per ulteriori informazioni, vedere. [Prerequisiti per l'utilizzo OpenSearch di Amazon Service come destinazione per AWS Database Migration Service](CHAP_Target.Elasticsearch.md#CHAP_Target.Elasticsearch.Prerequisites)
  + Amazon Kinesis come destinazione. Per ulteriori informazioni, consulta [Prerequisiti per l'utilizzo di un flusso di dati Kinesis come destinazione per AWS Database Migration Service](CHAP_Target.Kinesis.md#CHAP_Target.Kinesis.Prerequisites).
  + Amazon Redshift come destinazione. È necessario creare il ruolo specificato solo per generare una chiave di crittografia KMS personalizzata per crittografare i dati di destinazione o per specificare un bucket S3 personalizzato per lo storage intermedio delle attività. Per ulteriori informazioni, consulta [Creazione e utilizzo di AWS KMS chiavi per crittografare i dati di destinazione di Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys) o [Impostazioni del bucket Amazon S3](CHAP_Target.Redshift.md#CHAP_Target.Redshift.EndpointSettings.S3Buckets).
  + Amazon S3 come origine o come destinazione. Per ulteriori informazioni, consulta [Prerequisiti per l'utilizzo di Amazon S3 come sorgente per AWS DMS](CHAP_Source.S3.md#CHAP_Source.S3.Prerequisites) o [Prerequisiti per l'utilizzo di Amazon S3 come destinazione](CHAP_Target.S3.md#CHAP_Target.S3.Prerequisites).

  Ad esempio, per leggere i dati da un endpoint di origine S3 o per eseguire il push dei dati a un endpoint di destinazione S3, è necessario creare un ruolo di servizio come prerequisito per accedere a S3 per ciascuna di queste operazioni di endpoint. 
+ Ruoli con autorizzazioni necessarie per utilizzare la console AWS DMS, l'API DMS AWS CLI e l'API AWS DMS: i due ruoli IAM che devi creare sono e. `dms-vpc-role` `dms-cloudwatch-logs-role` Se utilizzi Amazon Redshift come database di destinazione, devi anche creare e aggiungere il ruolo IAM `dms-access-for-endpoint` al tuo AWS account. Per ulteriori informazioni, consulta [Creazione dei ruoli IAM da utilizzare con AWS DMS](security-iam.md#CHAP_Security.APIRole).

### Scelta di un ruolo IAM in AWS DMS
<a name="security_iam_service-with-iam-roles-choose"></a>

Se utilizzi la console AWS DMS, AWS CLI o l'API AWS DMS per la migrazione del database, devi aggiungere determinati ruoli IAM al tuo AWS account prima di poter utilizzare le funzionalità di AWS DMS. Due di questi sono `dms-vpc-role` e `dms-cloudwatch-logs-role`. Se utilizzi Amazon Redshift come database di destinazione, devi anche aggiungere il ruolo IAM `dms-access-for-endpoint` al tuo AWS account. Per ulteriori informazioni, consulta [Creazione dei ruoli IAM da utilizzare con AWS DMS](security-iam.md#CHAP_Security.APIRole).

## Identity and Access Management per DMS Fleet Advisor
<a name="fa-security-iam"></a>

Con le policy IAM basate su identità puoi specificare azioni e risorse consentite o rifiutate, nonché le condizioni in base alle quali le azioni sono consentite o rifiutate. DMS Fleet Advisor supporta specifiche azioni, risorse e chiavi di condizione. Per informazioni su tutti gli elementi utilizzati in una policy JSON, consulta [Documentazione di riferimento agli elementi delle policy JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) nella *Guida per l'utente IAM*. 

DMS Fleet Advisor utilizza i ruoli IAM per accedere ad Amazon Simple Storage Service. Un [ruolo IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) è un'entità all'interno del tuo AWS account che dispone di autorizzazioni specifiche. Per ulteriori informazioni, consulta [Creazione di risorse IAM](fa-resources.md#fa-resources-iam). 

# AWS Database Migration Service esempi di policy basate sull'identità
<a name="security_iam_id-based-policy-examples"></a>

Per impostazione predefinita, gli utenti e i ruoli IAM non dispongono dell'autorizzazione per creare o modificare risorse AWS DMS . Inoltre, non possono eseguire attività utilizzando l'API Console di gestione AWS AWS CLI, o. AWS Un amministratore IAM deve creare policy IAM che concedono a utenti e ruoli l'autorizzazione per eseguire operazioni API specifiche sulle risorse specificate di cui hanno bisogno. L'amministratore deve quindi allegare queste policy a utenti o IAM che richiedono tali autorizzazioni.

Per informazioni su come creare una policy basata su identità IAM utilizzando questi documenti di policy JSON di esempio, consultare [Creazione di policy nella scheda JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor) nella *Guida per l'utente di IAM*.

**Topics**
+ [Best practice delle policy](#security_iam_service-with-iam-policy-best-practices)
+ [Utilizzo della console AWS DMS](#security_iam_id-based-policy-examples-console)
+ [Consentire agli utenti di visualizzare le loro autorizzazioni](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Accesso a un bucket Amazon S3](#security_iam_id-based-policy-examples-access-one-bucket)
+ [Accesso alle AWS DMS risorse in base ai tag](#security_iam_id-based-policy-examples-access-resources-tags)

## Best practice delle policy
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Le politiche basate sull'identità determinano se qualcuno può creare, accedere o eliminare AWS DMS risorse nel tuo account. Queste azioni possono comportare costi aggiuntivi per l’ Account AWS. Quando si creano o modificano policy basate sull’identità, seguire queste linee guida e raccomandazioni:
+ **Inizia con le policy AWS gestite e passa alle autorizzazioni con privilegi minimi: per iniziare a concedere autorizzazioni** *a utenti e carichi di lavoro, utilizza le politiche gestite che concedono le autorizzazioni per molti casi d'uso comuni.AWS * Sono disponibili nel tuo. Account AWS Ti consigliamo di ridurre ulteriormente le autorizzazioni definendo politiche gestite dai AWS clienti specifiche per i tuoi casi d'uso. Per maggiori informazioni, consulta [Policy gestite da AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) o [Policy gestite da AWS per le funzioni dei processi](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) nella *Guida per l’utente di IAM*.
+ **Applicazione delle autorizzazioni con privilegio minimo** - Quando si impostano le autorizzazioni con le policy IAM, concedere solo le autorizzazioni richieste per eseguire un’attività. È possibile farlo definendo le azioni che possono essere intraprese su risorse specifiche in condizioni specifiche, note anche come *autorizzazioni con privilegio minimo*. Per maggiori informazioni sull’utilizzo di IAM per applicare le autorizzazioni, consulta [Policy e autorizzazioni in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) nella *Guida per l’utente di IAM*.
+ **Condizioni d’uso nelle policy IAM per limitare ulteriormente l’accesso** - Per limitare l’accesso ad azioni e risorse è possibile aggiungere una condizione alle policy. Ad esempio, è possibile scrivere una condizione di policy per specificare che tutte le richieste devono essere inviate utilizzando SSL. Puoi anche utilizzare le condizioni per concedere l'accesso alle azioni del servizio se vengono utilizzate tramite uno specifico Servizio AWS, ad esempio CloudFormation. Per maggiori informazioni, consultare la sezione [Elementi delle policy JSON di IAM: condizione](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) nella *Guida per l’utente di IAM*.
+ **Utilizzo dello strumento di analisi degli accessi IAM per convalidare le policy IAM e garantire autorizzazioni sicure e funzionali** - Lo strumento di analisi degli accessi IAM convalida le policy nuove ed esistenti in modo che aderiscano al linguaggio (JSON) della policy IAM e alle best practice di IAM. Lo strumento di analisi degli accessi IAM offre oltre 100 controlli delle policy e consigli utili per creare policy sicure e funzionali. Per maggiori informazioni, consultare [Convalida delle policy per il Sistema di analisi degli accessi IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) nella *Guida per l’utente di IAM*.
+ **Richiedi l'autenticazione a più fattori (MFA**): se hai uno scenario che richiede utenti IAM o un utente root nel Account AWS tuo, attiva l'MFA per una maggiore sicurezza. Per richiedere la MFA quando vengono chiamate le operazioni API, aggiungere le condizioni MFA alle policy. Per maggiori informazioni, consultare [Protezione dell’accesso API con MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) nella *Guida per l’utente di IAM*.

Per maggiori informazioni sulle best practice in IAM, consulta [Best practice di sicurezza in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) nella *Guida per l’utente di IAM*.

## Utilizzo della console AWS DMS
<a name="security_iam_id-based-policy-examples-console"></a>

La seguente politica consente di accedere a AWS DMS, inclusa la console AWS DMS, e specifica anche le autorizzazioni per determinate azioni necessarie da altri servizi Amazon come Amazon EC2.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
     "Statement": [
    {
        "Effect": "Allow",
        "Action": "dms:*",
        "Resource": "arn:aws:dms:*:123456789012:*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "kms:ListAliases",
            "kms:DescribeKey"
        ],
        "Resource": "arn:aws:kms:*:123456789012:key/*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "iam:GetRole",
            "iam:CreateRole",
            "iam:AttachRolePolicy"
        ],
        "Resource": "arn:aws:iam::123456789012:role/*"
    },
    {
        "Effect": "Allow",
        "Action": "iam:PassRole",
        "Resource": "arn:aws:iam::123456789012:role/*",
        "Condition": {
            "StringEquals": {
                "iam:PassedToService": "dms.amazonaws.com"
            }
        }
    },
    {
        "Effect": "Allow",
        "Action": [
            "ec2:DescribeVpcs",
            "ec2:DescribeInternetGateways",
            "ec2:DescribeAvailabilityZones",
            "ec2:DescribeSubnets",
            "ec2:DescribeSecurityGroups",
            "ec2:ModifyNetworkInterfaceAttribute",
            "ec2:CreateNetworkInterface",
            "ec2:DeleteNetworkInterface"
        ],
        "Resource": "*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "cloudwatch:Get*",
            "cloudwatch:List*"
        ],
    "Resource": "*"
    },
    {
    "Effect": "Allow",
    "Action": [
        "logs:DescribeLogGroups",
        "logs:DescribeLogStreams",
        "logs:FilterLogEvents",
        "logs:GetLogEvents"
        ],
    "Resource": "arn:aws:logs:*:123456789012:*"
    }
   ]
}
```

------

L'analisi di queste autorizzazioni potrebbe aiutarti a comprendere meglio il motivo per cui ciascuna di esse è necessaria per l'uso della console.

La seguente sezione è necessaria per consentire all'utente di elencare le chiavi AWS KMS e gli alias disponibili per la visualizzazione nella console. Questa voce non è richiesta se si conosce l'ARN (Amazon Resource Name) per la chiave KMS e si sta utilizzando solo la AWS Command Line Interface (AWS CLI).

```
{
            "Effect": "Allow",
            "Action": [
                "kms:ListAliases", 
                "kms:DescribeKey"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La seguente sezione è necessaria per determinati tipi di endpoint che richiedono il trasferimento dell'ARN del ruolo con l'endpoint. Inoltre, se i AWS DMS ruoli richiesti non vengono creati in anticipo, la AWS DMS console ha la possibilità di creare il ruolo. Se tutti i ruoli sono configurati in anticipo, sono tutti necessari in `iam:GetRole` e `iam:PassRole`. Per ulteriori informazioni sui ruoli, consulta [Creazione dei ruoli IAM da utilizzare con AWS DMS](security-iam.md#CHAP_Security.APIRole).

```
{
            "Effect": "Allow",
            "Action": [
                "iam:GetRole",
                "iam:PassRole",
                "iam:CreateRole",
                "iam:AttachRolePolicy"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La sezione seguente è necessaria perché è AWS DMS necessario creare l'istanza Amazon EC2 e configurare la rete per l'istanza di replica creata. Queste risorse esistono nell'account del cliente, perciò è necessaria la possibilità di eseguire tali azioni per conto del cliente.

```
{
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeVpcs",
                "ec2:DescribeInternetGateways",
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups",
                "ec2:ModifyNetworkInterfaceAttribute",
                "ec2:CreateNetworkInterface",
                "ec2:DeleteNetworkInterface"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La seguente sezione è necessaria per consentire all'utente di visualizzare i parametri dell'istanza di replica.

```
{
            "Effect": "Allow",
            "Action": [
                "cloudwatch:Get*",
                "cloudwatch:List*"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

Questa sezione è necessaria per consentire all'utente di visualizzare i log della replica.

```
{
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogGroups",
                "logs:DescribeLogStreams",
                "logs:FilterLogEvents",
                "logs:GetLogEvents"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

Se utilizzi la console AWS DMS, la AWS Command Line Interface (AWS CLI) o l'API AWS DMS per la migrazione, devi aggiungere diversi ruoli al tuo account. Per ulteriori informazioni sull'aggiunta di questi ruoli, consulta [Creazione dei ruoli IAM da utilizzare con AWS DMS](security-iam.md#CHAP_Security.APIRole).

Per ulteriori informazioni sui requisiti per l'utilizzo di questa politica per accedere a AWS DMS, consulta. [Autorizzazioni IAM necessarie per l'uso AWS DMS](security-iam.md#CHAP_Security.IAMPermissions)

## Consentire agli utenti di visualizzare le loro autorizzazioni
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

Questo esempio mostra in che modo è possibile creare una policy che consente agli utenti IAM di visualizzare le policy inline e gestite che sono collegate alla relativa identità utente. Questa politica include le autorizzazioni per completare questa azione sulla console o utilizzando l'API o a livello di codice. AWS CLI AWS 

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

## Accesso a un bucket Amazon S3
<a name="security_iam_id-based-policy-examples-access-one-bucket"></a>

AWS DMS utilizza i bucket Amazon S3 come storage intermedio per la migrazione dei database. In genere, AWS DMS gestisce i bucket S3 predefiniti per questo scopo. Tuttavia, in alcuni casi, specialmente quando si utilizza l'API AWS CLI o l'API DMS, AWS AWS DMS consente invece di specificare il proprio bucket S3. Ad esempio, puoi specificare il tuo bucket S3 per la migrazione dei dati a un endpoint di destinazione Amazon Redshift. In questo caso, è necessario creare un ruolo con autorizzazioni basate sulla policy -managed. AWS`AmazonDMSRedshiftS3Role`

L'esempio seguente mostra una versione della policy `AmazonDMSRedshiftS3Role`. Consente a AWS DMS di concedere a un utente IAM del tuo AWS account l'accesso a uno dei tuoi bucket Amazon S3. Consente inoltre all'utente di aggiungere, aggiornare ed eliminare oggetti.

Oltre ad assegnare le autorizzazioni `s3:PutObject`, `s3:GetObject` e `s3:DeleteObject` all'utente, la policy assegna anche le autorizzazioni `s3:ListAllMyBuckets`, `s3:GetBucketLocation` e `s3:ListBucket`. Queste sono le autorizzazioni aggiuntive richieste dalla console. Altre autorizzazioni consentono a AWS DMS di gestire il ciclo di vita del bucket. Inoltre, l'operazione `s3:GetObjectAcl` è necessaria per poter copiare gli oggetti.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:CreateBucket",
                "s3:ListBucket",
                "s3:DeleteBucket",
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:PutObject",
                "s3:DeleteObject",
                "s3:GetObjectVersion",
                "s3:GetBucketPolicy",
                "s3:PutBucketPolicy",
                "s3:GetBucketAcl",
                "s3:PutBucketVersioning",
                "s3:GetBucketVersioning",
                "s3:PutLifecycleConfiguration",
                "s3:GetLifecycleConfiguration",
                "s3:DeleteBucketPolicy"
            ],
            "Resource": "arn:aws:s3:::dms-*"
        }
    ]
}
```

------

Per ulteriori informazioni sulla creazione di un ruolo basato su questa policy, consulta [Impostazioni del bucket Amazon S3](CHAP_Target.Redshift.md#CHAP_Target.Redshift.EndpointSettings.S3Buckets).

## Accesso alle AWS DMS risorse in base ai tag
<a name="security_iam_id-based-policy-examples-access-resources-tags"></a>

È possibile utilizzare le condizioni nella policy basata sulle identità per controllare l'accesso alle risorse di AWS DMS in base ai tag. Questo esempio mostra come è possibile creare una policy che consenta l'accesso a tutti gli endpoint AWS DMS. Tuttavia, l'autorizzazione viene concessa solo se il valore del tag `Owner` del database dell'endpoint è quello del nome dell'utente.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "dms:*",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "dms:endpoint-tag/Owner": "${aws:username}"
        }
      }
    }
  ]
}
```

------

Puoi allegare questa policy agli utenti IAM nel tuo account. Se un utente denominato `richard-roe` tenta di accedere a un AWS DMS endpoint, il database dell'endpoint deve essere taggato o. `Owner=richard-roe` `owner=richard-roe` In caso contrario, a questo utente viene negato l'accesso. La chiave di tag di condizione `Owner` corrisponde a `Owner` e `owner` perché i nomi delle chiavi di condizione non effettuano la distinzione tra maiuscole e minuscole. Per maggiori informazioni, consultare la sezione [Elementi delle policy JSON di IAM: condizione](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) nella *Guida per l’utente di IAM*.

# Esempi di policy basate sulle risorse per AWS KMS
<a name="security_iam_resource-based-policy-examples"></a>

AWS DMS consente di creare chiavi di AWS KMS crittografia personalizzate per crittografare i dati degli endpoint di destinazione supportati. Per informazioni su come creare e collegare una policy alla chiave di crittografia creata per la crittografia dei dati di destinazione supportati, consulta [Creazione e utilizzo di AWS KMS chiavi per crittografare i dati di destinazione di Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys) e [Creazione di AWS KMS chiavi per crittografare gli oggetti di destinazione di Amazon S3](CHAP_Target.S3.md#CHAP_Target.S3.KMSKeys).

**Topics**
+ [Una policy per una chiave di AWS KMS crittografia personalizzata per crittografare i dati di destinazione di Amazon Redshift](#security_iam_resource-based-policy-examples-custom-rs-key-policy)
+ [Una politica per una chiave di AWS KMS crittografia personalizzata per crittografare i dati di destinazione di Amazon S3](#security_iam_resource-based-policy-examples-custom-s3-key-policy)

## Una policy per una chiave di AWS KMS crittografia personalizzata per crittografare i dati di destinazione di Amazon Redshift
<a name="security_iam_resource-based-policy-examples-custom-rs-key-policy"></a>

Nell'esempio seguente viene illustrato il JSON per la policy della chiave creata per una chiave di crittografia AWS KMS per crittografare i dati di destinazione Amazon Redshift.

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

****  

```
{
  "Id": "key-consolepolicy-3",
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Enable IAM User Permissions",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::987654321098:root"
        ]
      },
      "Action": "kms:*",
      "Resource": "*"
    },
    {
      "Sid": "Allow access for Key Administrators",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::987654321098:role/Admin"
        ]
      },
      "Action": [
        "kms:Create*",
        "kms:Describe*",
        "kms:Enable*",
        "kms:List*",
        "kms:Put*",
        "kms:Update*",
        "kms:Revoke*",
        "kms:Disable*",
        "kms:Get*",
        "kms:Delete*",
        "kms:TagResource",
        "kms:UntagResource",
        "kms:ScheduleKeyDeletion",
        "kms:CancelKeyDeletion"
      ],
      "Resource": "*"
    },
    {
      "Sid": "Allow use of the key",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::987654321098:role/DMS-Redshift-endpoint-access-role"
        ]
      },
      "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
      ],
      "Resource": "*"
    },
    {
      "Sid": "Allow attachment of persistent resources",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::987654321098:role/DMS-Redshift-endpoint-access-role"
        ]
      },
      "Action": [
        "kms:CreateGrant",
        "kms:ListGrants",
        "kms:RevokeGrant"
      ],
      "Resource": "*",
      "Condition": {
        "Bool": {
          "kms:GrantIsForAWSResource": true
        }
      }
    }
  ]
}
```

------

Qui è possibile vedere dove la policy della chiave fa riferimento al ruolo per accedere ai dati dell'endpoint di destinazione Amazon Redshift creati prima di generare la chiave. Nell'esempio è `DMS-Redshift-endpoint-access-role`. È inoltre possibile vedere le diverse operazioni di chiave consentite per le diverse entità principali (utenti e ruoli). Ad esempio, qualsiasi utente con `DMS-Redshift-endpoint-access-role` può crittografare, decrittografare e crittografare nuovamente i dati di destinazione. Tale utente può anche generare chiavi di dati da esportare per crittografare i dati all'esterno. AWS KMS Possono anche restituire informazioni dettagliate su una AWS KMS chiave, ad esempio la chiave appena creata. Inoltre, l'utente può gestire i collegamenti alle risorse AWS , ad esempio l'endpoint di destinazione.

## Una politica per una chiave di AWS KMS crittografia personalizzata per crittografare i dati di destinazione di Amazon S3
<a name="security_iam_resource-based-policy-examples-custom-s3-key-policy"></a>

Nell'esempio seguente viene illustrato il JSON per la policy della chiave creata per una chiave di crittografia AWS KMS per crittografare i dati di destinazione Amazon S3.

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

****  

```
{
    "Id": "key-consolepolicy-3",
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Enable IAM User Permissions",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::987654321098:root"
                ]
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Sid": "Allow access for Key Administrators",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::987654321098:role/Admin"
                ]
            },
            "Action": [
                "kms:Create*",
                "kms:Describe*",
                "kms:Enable*",
                "kms:List*",
                "kms:Put*",
                "kms:Update*",
                "kms:Revoke*",
                "kms:Disable*",
                "kms:Get*",
                "kms:Delete*",
                "kms:TagResource",
                "kms:UntagResource",
                "kms:ScheduleKeyDeletion",
                "kms:CancelKeyDeletion"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Allow use of the key",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::987654321098:role/DMS-S3-endpoint-access-role"
                ]
            },
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:DescribeKey"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Allow attachment of persistent resources",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::987654321098:role/DMS-S3-endpoint-access-role"
                ]
            },
            "Action": [
                "kms:CreateGrant",
                "kms:ListGrants",
                "kms:RevokeGrant"
            ],
            "Resource": "*",
            "Condition": {
                "Bool": {
                    "kms:GrantIsForAWSResource": true
                }
            }
        }
    ]
}
```

------

Qui è possibile vedere dove la policy della chiave fa riferimento al ruolo per accedere ai dati dell'endpoint di destinazione Amazon S3 creati prima di generare la chiave. Nell'esempio è `DMS-S3-endpoint-access-role`. È inoltre possibile vedere le diverse operazioni di chiave consentite per le diverse entità principali (utenti e ruoli). Ad esempio, qualsiasi utente con `DMS-S3-endpoint-access-role` può crittografare, decrittografare e crittografare nuovamente i dati di destinazione. Tale utente può anche generare chiavi di dati da esportare per crittografare i dati all'esterno. AWS KMS Possono anche restituire informazioni dettagliate su una AWS KMS chiave, ad esempio la chiave appena creata. Inoltre, l'utente può gestire il collegamento alle risorse AWS , ad esempio l'endpoint di destinazione.

# Utilizzo dei segreti per accedere agli AWS Database Migration Service endpoint
<a name="security_iam_secretsmanager"></a>

Infatti AWS DMS, un *segreto* è una chiave crittografata che è possibile utilizzare per rappresentare un set di credenziali utente per autenticare, tramite l'*autenticazione segreta*, la connessione al database per un endpoint di AWS DMS origine o di destinazione supportato. Per un endpoint Oracle che utilizza anche Oracle Automatic Storage Management (ASM), AWS DMS richiede un segreto aggiuntivo che rappresenti le credenziali utente per accedere a Oracle ASM.

È possibile creare il segreto o i segreti AWS DMS necessari per l'autenticazione segreta utilizzando un servizio per la creazione Gestione dei segreti AWS, l'archiviazione e il recupero in modo sicuro delle credenziali per accedere ad applicazioni, servizi e risorse IT nel cloud e in locale. È incluso il supporto per la rotazione periodica automatica del valore del segreto crittografato senza l'intervento dell'utente, che fornisce un ulteriore livello di sicurezza per le credenziali. L'attivazione della rotazione dei valori segreti garantisce Gestione dei segreti AWS inoltre che questa rotazione dei valori segreti avvenga senza alcun effetto sulla migrazione del database che si basa sul segreto. Per autenticare segretamente una connessione del database agli endpoint, crea un segreto e assegnane l'identità o l'ARN a `SecretsManagerSecretId`, da includere nelle impostazioni dell'endpoint. Per autenticare segretamente Oracle ASM come parte di un endpoint Oracle, crea un segreto e assegnane l'identità o l'ARN a `SecretsManagerOracleAsmSecretId`, da includere sempre nelle impostazioni dell'endpoint.

**Nota**  
Non puoi usare le credenziali master gestite da Amazon RDS Aurora. Queste credenziali non includono informazioni sull'host o sulla porta, che AWS DMS devono stabilire connessioni. Crea invece un utente e un segreto nuovi. Per informazioni sulla creazione di un utente e un segreto, consulta [Utilizzo di Console di gestione AWS per creare un ruolo segreto e di accesso segreto](#security_iam_secretsmanager.console) di seguito.

Per ulteriori informazioni su Gestione dei segreti AWS, consulta [What Is AWS Secrets Manager?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) nella *Guida Gestione dei segreti AWS per l'utente*.

AWS DMS supporta l'autenticazione segreta per i seguenti database locali o AWS gestiti sugli endpoint di origine e di destinazione supportati:
+ Amazon DocumentDB
+ IBM Db2 LUW
+ Microsoft SQL Server
+ MongoDB
+ MySQL
+ Oracle
+ PostgreSQL
+ Amazon Redshift
+ SAP ASE

Per la connessione a uno di questi database, puoi scegliere di specificare uno dei seguenti set di valori, ma non entrambi, come parte delle impostazioni dell'endpoint:
+ Valori in chiaro per autenticare la connessione al database utilizzando le impostazioni `UserName`, `Password`, `ServerName` e `Port`. Per un endpoint Oracle che utilizza anche Oracle ASM, includi valori in chiaro aggiuntivi per autenticare ASM utilizzando le impostazioni `AsmUserName`, `AsmPassword` e `AsmServerName`.
+ Autenticazione dei segreti utilizzando i valori per le impostazioni `SecretsManagerSecretId` e `SecretsManagerAccessRoleArn`. Per un endpoint Oracle che utilizza Oracle ASM, includi valori aggiuntivi per le impostazioni `SecretsManagerOracleAsmSecretId` e `SecretsManagerOracleAsmAccessRoleArn`. I valori dei segreti di queste impostazioni possono includere: 
  + `SecretsManagerSecretId`: il nome della risorsa Amazon (ARN) completo, l'ARN parziale o il nome descrittivo di un segreto che hai creato per l'accesso al database degli endpoint in Gestione dei segreti AWS.
  + `SecretsManagerAccessRoleArn`— L'ARN di un ruolo di accesso segreto che hai creato in IAM per fornire AWS DMS l'accesso a questo `SecretsManagerSecretId` segreto per tuo conto.
  + `SecretsManagerOracleAsmSecretId`: il nome della risorsa Amazon (ARN) completo, l'ARN parziale o il nome descrittivo di un segreto che hai creato per l'accesso a Oracle ASM in Gestione dei segreti AWS.
  + `SecretsManagerOracleAsmAccessRoleArn`: l'ARN di un ruolo di accesso al segreto che hai creato in IAM per fornire ad AWS DMS l'accesso al segreto `SecretsManagerOracleAsmSecretId` per tuo conto.
**Nota**  
Puoi anche utilizzare un singolo ruolo di accesso segreto per fornire AWS DMS l'accesso sia al `SecretsManagerSecretId` segreto che al `SecretsManagerOracleAsmSecretId` segreto. Se crei questo singolo ruolo di accesso per entrambi i segreti, assicurati di assegnare lo stesso ARN per il ruolo di accesso a entrambi `SecretsManagerAccessRoleArn` e `SecretsManagerOracleAsmAccessRoleArn`. Ad esempio, se il ruolo di accesso per entrambi i segreti ha il relativo ARN assegnato alla variabile `ARN2xsecrets`, puoi impostare le impostazioni dell'ARN come segue:  

  ```
  SecretsManagerAccessRoleArn = ARN2xsecrets;
  SecretsManagerOracleAsmAccessRoleArn = ARN2xsecrets;
  ```

  Per ulteriori informazioni sulla creazione di questi valori, consulta [Utilizzo di Console di gestione AWS per creare un ruolo segreto e di accesso segreto](#security_iam_secretsmanager.console).

Dopo aver creato e specificato le impostazioni necessarie per l'endpoint con il ruolo di accesso al segreto e il segreto, aggiorna le autorizzazioni sugli account utente che eseguono la richiesta API `CreateEndpoint` o `ModifyEndpoint` con questi dettagli del segreto. Assicurati che queste autorizzazioni dell'account includano l'`IAM:GetRole`autorizzazione sul ruolo di accesso segreto e l'`SecretsManager:DescribeSecret`autorizzazione sul segreto. AWS DMS richiede queste autorizzazioni per convalidare sia il ruolo di accesso che il relativo segreto.

**Per fornire e verificare le autorizzazioni utente richieste**

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

1. Scegli **Utenti**, quindi seleziona l'**ID utente** utilizzato per effettuare le chiamate API `CreateEndpoint` e `ModifyEndpoint`.

1. Nella scheda **Autorizzazioni **scegli **\$1\$1 JSON**.

1. Assicurati che l'utente disponga delle autorizzazioni mostrate di seguito.

   ```
   {
   	"Statement": [{
   			"Effect": "Allow",
   			"Action": [
   				"iam:GetRole",
   				"iam:PassRole"
   			],
   			"Resource": "SECRET_ACCESS_ROLE_ARN"
   		},
   		{
   			"Effect": "Allow",
   			"Action": "secretsmanager:DescribeSecret",
   			"Resource": "SECRET_ARN"
   		}
   	]
   }
   ```

1. Se l'utente non dispone di tali autorizzazioni, aggiungile.

1. Se utilizzi un ruolo IAM per effettuare chiamate API DMS, ripeti i passaggi precedenti per il rispettivo ruolo.

1. Apri un terminale e usa il AWS CLI per verificare che le autorizzazioni siano state fornite correttamente assumendo il ruolo o l'utente usato sopra.

   1. Convalida l'autorizzazione dell'utente sull' SecretAccessRole utilizzo del comando IAM. `get-role`

      ```
      aws iam get-role --role-name ROLE_NAME
      ```

      Sostituisci *ROLE\$1NAME* con il nome di. `SecretsManagerAccessRole`

      Se il comando restituisce un messaggio di errore, assicurati che le autorizzazioni siano state specificate correttamente.

   1. Convalida l'autorizzazione dell'utente per il segreto utilizzando il comando Secrets Manager `describe-secret`.

      ```
      aws secretsmanager describe-secret --secret-id SECRET_NAME OR SECRET_ARN --region=REGION_NAME
      ```

      L'utente può essere il nome descrittivo, l'ARN parziale o l'ARN completo. Per ulteriori informazioni, consulta [describe-secret](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/describe-secret.html).

      Se il comando restituisce un messaggio di errore, assicurati che le autorizzazioni siano state specificate correttamente.

## Utilizzo di Console di gestione AWS per creare un ruolo segreto e di accesso segreto
<a name="security_iam_secretsmanager.console"></a>

È possibile utilizzare il per Console di gestione AWS creare un segreto per l'autenticazione degli endpoint e per creare la politica e il ruolo che consentano l'accesso AWS DMS al segreto per conto dell'utente.

**Per creare un segreto utilizzando il comando Console di gestione AWS that AWS DMS can use per autenticare un database per le connessioni agli endpoint di origine e di destinazione**

1. Accedi a Console di gestione AWS e apri la Gestione dei segreti AWS console all'indirizzo. [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/)

1. Scegli **Archivia un nuovo segreto**.

1. Nella pagina **Archivia un nuovo segreto** scegli **Altro tipo di segreti** in **Seleziona il tipo di segreto** quindi scegli **Testo in chiaro**.
**Nota**  
Questa è l'unica richiesta di inserimento delle credenziali con testo in chiaro per stabilire d'ora in avanti la connessione al database degli endpoint.

1. Nel campo **Testo in chiaro**: 
   + Per un segreto di cui assegni l'identità a `SecretsManagerSecretId`, immetti la seguente struttura JSON.

     ```
     {
       "username": db_username,
       "password": db_user_password,
       "port": db_port_number,
       "host": db_server_name
     }
     ```
**Nota**  
Questo è l'elenco minimo dei membri JSON necessari per autenticare il database degli endpoint. Puoi aggiungere tutte le impostazioni degli endpoint JSON che desideri come membri JSON usando solo lettere minuscole. Tuttavia, AWS DMS ignora gli eventuali membri JSON aggiuntivi per l'autenticazione dell'endpoint.

     Qui `db_username` è il nome dell'utente che accede al database, `db_user_password` è la password dell'utente del database, `db_port_number` è il numero di porta per accedere al database e `db_server_name` è il nome (indirizzo) del server di database sul Web, come nell'esempio seguente.

     ```
     {
       "username": "admin",
       "password": "some_password",
       "port": "8190",
       "host": "oracle101.abcdefghij.us-east-1.rds.amazonaws.com"
     }
     ```
   + Per un segreto di cui assegni l'identità a `SecretsManagerOracleAsmSecretId`, immetti la seguente struttura JSON.

     ```
     {
       "asm_user": asm_username,
       "asm_password": asm_user_password,
       "asm_server": asm_server_name
     }
     ```
**Nota**  
Questo è l'elenco minimo dei membri JSON necessari per autenticare Oracle ASM per un endpoint Oracle. È anche l'elenco completo che è possibile specificare in base alle impostazioni degli endpoint Oracle ASM disponibili.

     Qui `asm_username` è il nome dell'utente che accede a Oracle ASM, `asm_user_password` è la password dell'utente Oracle ASM e `asm_server_name` è il nome (indirizzo) del server Oracle ASM sul Web, inclusa la porta, come nell'esempio seguente.

     ```
     { 
       "asm_user": "oracle_asm_user", 
       "asm_password": "oracle_asm_password",
       "asm_server": "oracle101.abcdefghij.us-east-1.rds.amazonaws.com:8190/+ASM" 
     }
     ```

1. Seleziona una chiave di AWS KMS crittografia per crittografare il segreto. È possibile accettare la chiave di crittografia predefinita creata per il servizio da Gestione dei segreti AWS o selezionare una AWS KMS chiave creata dall'utente.

1. Specifica un nome per fare riferimento a questo segreto e una descrizione facoltativa. Questo è il nome descrittivo che utilizzi come valore per `SecretsManagerSecretId` o `SecretsManagerOracleAsmSecretId`.

1. Se desideri abilitare la rotazione automatica nel segreto, devi selezionare o creare una AWS Lambda funzione con l'autorizzazione a ruotare le credenziali del segreto come descritto. Tuttavia, prima di impostare la rotazione automatica per utilizzare la funzione Lambda, assicurati che le impostazioni di configurazione della funzione aggiungano al valore della variabile di ambiente `EXCLUDE_CHARACTERS` i seguenti quattro caratteri.

   ```
   ;.:+{}*&,%\
   ```

   AWS DMS non ammette questi caratteri nelle password utilizzate per le credenziali degli endpoint. La configurazione della funzione Lambda per escluderli impedisce ad Gestione dei segreti AWS di generare questi caratteri come parte dei valori della password ruotate. Dopo aver impostato la rotazione automatica per utilizzare la funzione Lambda, ruota Gestione dei segreti AWS immediatamente il segreto per convalidare la configurazione segreta.
**Nota**  
A seconda della configurazione del motore di database, è possibile che il database non recuperi le credenziali ruotate. In questo caso, è necessario riavviare manualmente l'attività per aggiornare le credenziali.

1. Rivedi e archivia il tuo segreto in. Gestione dei segreti AWSÈ quindi possibile cercare ogni segreto in base al relativo nome descrittivo in Gestione dei segreti AWS, quindi recuperare l'ARN segreto come valore `SecretsManagerOracleAsmSecretId` o, se appropriato, `SecretsManagerSecretId` per autenticare l'accesso alla connessione al database degli endpoint e a Oracle ASM (se utilizzato).

**Per creare la politica di accesso segreto e il ruolo su cui impostare `SecretsManagerAccessRoleArn` o`SecretsManagerOracleAsmAccessRoleArn`, che consente di accedere AWS DMS Gestione dei segreti AWS al segreto appropriato**

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

1. Seleziona **Policy**, quindi scegli **Crea policy**.

1. Scegli **JSON** e inserisci la seguente policy per consentire l'accesso e la decrittografia del tuo segreto.

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": "secretsmanager:GetSecretValue",
         "Resource": "*"
       },
       {
         "Effect": "Allow",
         "Action": [
           "kms:Decrypt",
           "kms:DescribeKey"
         ],
         "Resource": "*"
       }
     ]
   }
   ```

------

   Qui `secret_arn` è l'ARN del tuo segreto, che puoi ottenere da `SecretsManagerSecretId` o `SecretsManagerOracleAsmSecretId`, come appropriato, e `kms_key_arn` è l'ARN della chiave AWS KMS che stai usando per crittografare il segreto, come nell'esempio seguente.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "arn:aws:secretsmanager:us-east-2:123456789012:secret:MySQLTestSecret-qeHamH"
           },
           {
                "Effect": "Allow",
                "Action": [
                           "kms:Decrypt",
                           "kms:DescribeKey"
                         ],
                "Resource": "arn:aws:kms:us-east-2:123456789012:key/761138dc-0542-4e58-947f-4a3a8458d0fd"
           }
        ]
   }
   ```

------
**Nota**  
Se si utilizza la chiave di crittografia predefinita creata da Gestione dei segreti AWS, non è necessario specificare le AWS KMS autorizzazioni per`kms_key_arn`.  
Se desideri che la tua policy fornisca l'accesso a entrambi i segreti, specifica semplicemente un oggetto risorsa JSON aggiuntivo per l'altro. *secret\$1arn*  
Se il segreto si trova in un account diverso, il ruolo `SecretsManagerAccessRoleArn` necessita di una policy aggiuntiva per verificare il segreto tra gli account. Per questi casi d'uso, aggiungi l'azione `secretsmanager:DescribeSecret` alla policy. Per maggiori dettagli sulla configurazione di un segreto per più account, consulta [Autorizzazioni ai AWS segreti di Secrets Manager per gli utenti di un account diverso](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples_cross.html).

1. Rivedi e crea la policy con un nome descrittivo e, facoltativamente, una descrizione.

1. Seleziona **Ruoli**, quindi scegli **Crea ruolo**.

1. Per il tipo di entità attendibile, scegli **Servizio AWS **.

1. Scegli **DMS** dall'elenco dei servizi come servizio attendibile, quindi seleziona **Successivo: Autorizzazioni**.

1. Cerca e collega la policy che hai creato nella fase 4, quindi procedi con l'aggiunta di eventuali tag ed esamina il ruolo. A questo punto, modifica le relazioni di trust relative al ruolo in modo da utilizzare il responsabile del servizio AWS DMS regionale come entità affidabile. Questo principale ha il seguente formato.

   ```
   dms.region-name.amazonaws.com
   ```

   Qui *`region-name`* è il nome della regione, ad esempio `us-east-1`. Segue quindi un responsabile del servizio AWS DMS regionale per questa regione.

   ```
   dms.us-east-1.amazonaws.com
   ```

1. Dopo aver modificato l'entità attendibile per il ruolo, crea il ruolo con un nome descrittivo e, facoltativamente, una descrizione. Ora puoi cercare il nuovo ruolo in base al suo nome descrittivo in IAM, quindi recuperare il ruolo ARN come valore `SecretsManagerAccessRoleArn` o `SecretsManagerOracleAsmAccessRoleArn` per autenticare la connessione al database degli endpoint.

**Per utilizzare Secrets Manager con un'istanza di replica in una sottorete privata**

1. Crea un endpoint VPC con Secrets Manager e annota il DNS per l'endpoint. Per ulteriori informazioni sulla creazione di un endpoint VPC con Secrets Manager, consulta [Connessione a Secrets Manager tramite un endpoint VPC](https://docs.aws.amazon.com/secretsmanager/latest/userguide/vpc-endpoint-overview.html#vpc-endpoint) []()nella *Guida per l'utente di AWS Secrets Manager*.

1. Per le regole di ingresso del gruppo di sicurezza degli endpoint VPC, consenti il traffico HTTPS dall'indirizzo IP privato dell'istanza di replica o dai gruppi di sicurezza collegati alle istanze di replica.

1. Per le regole di uscita del gruppo di sicurezza dell'istanza di replica, consenti tutto il traffico per la destinazione `0.0.0.0/0`.

1. Imposta l'attributo aggiuntivo di connessione dell'endpoint `secretsManagerEndpointOverride=secretsManager endpoint DNS` per fornire il DNS dell'endpoint VPC di Secrets Manager, come illustrato nell'esempio seguente.

   ```
   secretsManagerEndpointOverride=vpce-1234a5678b9012c-12345678.secretsmanager.eu-west-1.vpce.amazonaws.com
   ```

# Utilizzo di ruoli collegati ai servizi per AWS DMS
<a name="using-service-linked-roles"></a>

AWS Database Migration Service utilizza ruoli collegati ai [servizi AWS Identity and Access Management](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) (IAM). Un ruolo collegato ai servizi è un tipo unico di ruolo IAM a cui è collegato direttamente. AWS DMS I ruoli collegati ai servizi sono predefiniti AWS DMS e includono tutte le autorizzazioni richieste dal servizio per chiamare altri servizi per tuo conto. AWS 

Un ruolo collegato al servizio semplifica la configurazione AWS DMS perché non è necessario aggiungere manualmente le autorizzazioni necessarie. AWS DMS definisce le autorizzazioni dei ruoli collegati ai servizi e, se non diversamente definito, solo può assumerne i ruoli. AWS DMS Le autorizzazioni definite includono la policy di attendibilità e la policy delle autorizzazioni che non può essere collegata a nessun'altra entità IAM.

È possibile eliminare un ruolo collegato al servizio solo dopo avere eliminato le risorse correlate. In questo modo proteggi AWS DMS le tue risorse perché non puoi rimuovere inavvertitamente l'autorizzazione ad accedere alle risorse.

**Per informazioni su altri servizi che supportano i ruoli collegati ai servizi, consulta [AWS Servizi compatibili con IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) e cerca i servizi con **Sì** nella colonna Ruoli collegati ai servizi.** Scegli **Sì** in corrispondenza di un link per visualizzare la documentazione relativa al ruolo collegato al servizio per tale servizio.

**Ruoli collegati ai servizi per le funzionalità AWS DMS **

**Topics**
+ [Ruoli collegati ai servizi per Fleet Advisor AWS DMS](slr-services-fa.md)
+ [Ruolo collegato al servizio per AWS DMS](slr-services-sl.md)

# Ruoli collegati ai servizi per Fleet Advisor AWS DMS
<a name="slr-services-fa"></a>

AWS DMS Fleet Advisor utilizza il ruolo collegato al servizio denominato **AWSServiceRoleForDMSFleetAdvisor**: DMS Fleet Advisor utilizza questo ruolo collegato al servizio per gestire le metriche di Amazon. CloudWatch Questo ruolo collegato ai servizi è collegato alle seguenti policy gestite: `AWSDMSFleetAdvisorServiceRolePolicy`. Per gli aggiornamenti a questa policy, consulta [AWS politiche gestite per AWS Database Migration Service](security-iam-awsmanpol.md).

Il ruolo collegato al servizio AWSService RoleFor DMSFleet Advisor prevede che i seguenti servizi assumano il ruolo:
+ `dms-fleet-advisor.amazonaws.com`

La politica di autorizzazione dei ruoli denominata AWSDMSFleet AdvisorServiceRolePolicy consente a AWS DMS Fleet Advisor di completare le seguenti azioni sulle risorse specificate:
+ Operazione: `cloudwatch:PutMetricData` su `all AWS resources`

  Questa autorizzazione consente ai mandanti di pubblicare punti dati metrici su Amazon. CloudWatch AWS DMS Fleet Advisor richiede questa autorizzazione per visualizzare grafici con metriche del database di. CloudWatch

Il seguente esempio di codice mostra la AWSDMSFleet AdvisorServiceRolePolicy politica utilizzata per creare il AWSDMSFleet AdvisorServiceRolePolicy ruolo.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Resource": "*",
        "Action": "cloudwatch:PutMetricData",
        "Condition": {
            "StringEquals": {
                "cloudwatch:namespace": "AWS/DMS/FleetAdvisor"
            }
        }
    }
}
```

------

È necessario configurare le autorizzazioni per consentire a un'entità IAM, ad esempio un utente, un gruppo o un ruolo, di creare, modificare o eliminare un ruolo collegato ai servizi. Per ulteriori informazioni, consulta [Autorizzazioni del ruolo collegato ai servizi](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions) nella *Guida per l'utente IAM*.

## Creazione di un ruolo collegato al servizio per AWS DMS Fleet Advisor
<a name="create-slr-fa"></a>

Puoi utilizzare la console IAM per creare un ruolo collegato ai servizi con il caso d'uso **DMS - Fleet Advisor**. Nella AWS CLI o nell' AWS API, crea un ruolo collegato al servizio con il nome del servizio. `dms-fleet-advisor.amazonaws.com` Per ulteriori informazioni, consulta [Creazione di un ruolo collegato ai servizi](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role) nella *Guida per l’utente IAM*. Se elimini il ruolo collegato ai servizi, è possibile utilizzare lo stesso processo per crearlo nuovamente.

Assicurati di creare questo ruolo prima di creare un raccoglitore di dati. DMS Fleet Advisor utilizza questo ruolo per visualizzare grafici con le metriche di database nella Console di gestione AWS. Per ulteriori informazioni, consulta [Creazione di un raccoglitore di dati](fa-data-collectors-create.md).

## Modifica di un ruolo collegato al servizio per Fleet Advisor AWS DMS
<a name="edit-slr-fa"></a>

AWS DMS non consente di modificare il ruolo collegato al servizio AWSService RoleFor DMSFleet Advisor. Dopo aver creato un ruolo collegato al servizio, non è possibile modificarne il nome, perché potrebbero farvi riferimento diverse entità. È possibile tuttavia modificarne la descrizione utilizzando IAM. Per ulteriori informazioni, consulta [Modifica di un ruolo collegato al servizio](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role) nella *Guida per l’utente di IAM*.

## Eliminazione di un ruolo collegato al servizio per Fleet Advisor AWS DMS
<a name="delete-slr-fa"></a>

Se non è più necessario utilizzare una funzionalità o un servizio che richiede un ruolo collegato al servizio, consigliamo di eliminare il ruolo. In questo modo non hai un'entità non utilizzata che non viene monitorata o gestita attivamente. Tuttavia, è necessario effettuare la pulizia delle risorse associate al ruolo collegato al servizio prima di poterlo eliminare manualmente.

**Nota**  
Se il AWS DMS servizio utilizza il ruolo quando si tenta di eliminare le risorse, l'eliminazione potrebbe non riuscire. In questo caso, attendi alcuni minuti e quindi ripeti l’operazione.

**Per eliminare AWS DMS le risorse utilizzate dall' AWSServiceRoleForDMSFleetAdvisor**

1. Accedi a Console di gestione AWS e apri la AWS DMS console su [https://console.aws.amazon.com/dms/v2/](https://console.aws.amazon.com/dms/v2/).

1. Nel riquadro di navigazione, scegli **Raccoglitori di dati** in **Scopri**. Viene visualizzata la pagina **Raccoglitori di dati**.

1. Scegli il tuo raccoglitore di dati e seleziona **Elimina**.

1. Per confermare l'eliminazione, inserisci il nome del raccoglitore di dati nel campo di immissione del testo. Quindi, scegli **Elimina**.

**Importante**  
Quando elimini un raccoglitore di dati DMS, DMS Fleet Advisor elimina dall'inventario tutti i database che hai individuato utilizzando questo raccoglitore.

Dopo aver eliminato tutti i raccoglitori di dati, puoi eliminare il ruolo collegato ai servizi.

**Per eliminare manualmente il ruolo collegato ai servizi mediante IAM**

Utilizza la console IAM AWS CLI, o l' AWS API per eliminare il ruolo collegato al servizio AWSService RoleFor DMSFleet Advisor. Per ulteriori informazioni, consulta [Eliminazione del ruolo collegato ai servizi](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role) nella *Guida per l'utente IAM*.

## Regioni supportate per i ruoli collegati ai servizi di AWS DMS Fleet Advisor
<a name="slr-regions-fa"></a>

AWS DMS Fleet Advisor supporta l'utilizzo di ruoli collegati al servizio in tutte le regioni in cui il servizio è disponibile. Per ulteriori informazioni, consulta [Supportato Regioni AWS](CHAP_FleetAdvisor.md#CHAP_FleetAdvisor.SupportedRegions).

# Ruolo collegato al servizio per AWS DMS
<a name="slr-services-sl"></a>

AWS DMS utilizza il ruolo collegato al servizio denominato. **AWSServiceRoleForDMSServerless** AWS DMS utilizza questo ruolo collegato al servizio per creare e gestire AWS DMS risorse per conto dell'utente. AWS DMS utilizza questo ruolo per la gestione automatica delle istanze in modo da dover gestire solo le repliche.

Ai fini dell’assunzione del ruolo, il ruolo collegato al servizio [AWSServiceRoleForDMSServerless](security-iam-awsmanpol.md#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy) considera attendibili i seguenti servizi:
+ `dms.amazonaws.com`

È necessario configurare le autorizzazioni per consentire a un'entità IAM, ad esempio un utente, un gruppo o un ruolo, di creare, modificare o eliminare un ruolo collegato ai servizi. Per ulteriori informazioni, consulta [Autorizzazioni del ruolo collegato ai servizi](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions) nella *Guida per l'utente IAM*.

## Creazione di un ruolo collegato al servizio per AWS DMS
<a name="create-slr-sl"></a>

Quando si avvia un'attività di replica o una valutazione preliminare alla migrazione, viene creato in modo AWS DMS programmatico un ruolo collegato al servizio. AWS DMS Puoi visualizzare questo ruolo nella console IAM. Puoi anche scegliere di creare questo ruolo manualmente. **Per creare il ruolo manualmente, utilizza la console IAM per creare un ruolo collegato al servizio con lo use case DMS.** Nella AWS CLI o nell' AWS API, crea un ruolo collegato al servizio utilizzando `dms.amazonaws.com` for the service name. Per ulteriori informazioni, consulta [Creazione di un ruolo collegato ai servizi](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role) nella *Guida per l'utente di IAM*. Se elimini il ruolo collegato ai servizi, è possibile utilizzare lo stesso processo per crearlo nuovamente.

**Nota**  
Se elimini un ruolo mentre sono presenti repliche nel tuo account, la replica genera un errore.

## Modifica di un ruolo collegato al servizio per AWS DMS
<a name="edit-slr-sl"></a>

AWS DMS non consente di modificare il ruolo collegato al AWSService RoleFor DMSServerless servizio. Dopo aver creato un ruolo collegato al servizio, non è possibile modificarne il nome, perché potrebbero farvi riferimento diverse entità. È possibile tuttavia modificarne la descrizione utilizzando IAM. Per ulteriori informazioni, consulta [Modifica di un ruolo collegato al servizio](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role) nella *Guida per l’utente di IAM*.

## Eliminazione di un ruolo collegato al servizio per AWS DMS
<a name="delete-slr-sl"></a>

Se non è più necessario utilizzare una funzionalità o un servizio che richiede un ruolo collegato al servizio, consigliamo di eliminare il ruolo. In questo modo non hai un'entità non utilizzata che non viene monitorata o gestita attivamente. Tuttavia, è necessario effettuare la pulizia delle risorse associate al ruolo collegato al servizio prima di poterlo eliminare manualmente.

**Nota**  
Se il AWS DMS servizio utilizza il ruolo quando si tenta di eliminare le risorse, l'eliminazione potrebbe non riuscire. In questo caso, attendi alcuni minuti e quindi ripeti l’operazione.

**Per eliminare AWS DMS le risorse utilizzate da AWSService RoleFor DMSServerless**

1. Accedi a Console di gestione AWS e apri la AWS DMS console nella [https://console.aws.amazon.com/dms/v2](https://console.aws.amazon.com/dms/v2/).

1. ****Nel riquadro di navigazione, scegli **Repliche senza server** in Migra dati.**** Viene visualizzata la pagina **Serverless**.

1. Seleziona la replica serverless e scegli **Elimina**.

1. Per confermare l'eliminazione, inserisci il nome della replica serverless nel campo di immissione del testo. Quindi, scegli **Elimina**.

Dopo aver eliminato tutte le repliche serverless, puoi eliminare il ruolo collegato ai servizi.

**Per eliminare manualmente il ruolo collegato ai servizi mediante IAM**

Utilizza la console IAM AWS CLI, o l' AWS API per eliminare il ruolo collegato al AWSService RoleFor DMSServerless servizio. Per ulteriori informazioni, consulta [Eliminazione del ruolo collegato ai servizi](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role) nella *Guida per l'utente IAM*.

## Regioni supportate per i ruoli collegati ai servizi AWS DMS
<a name="slr-regions-sl"></a>

AWS DMS supporta l'utilizzo di ruoli collegati al servizio in tutte le regioni in cui il servizio è disponibile. 

# Risoluzione dei problemi di identità e accesso AWS Database Migration Service
<a name="security_iam_troubleshoot"></a>

Utilizza le seguenti informazioni per aiutarti a diagnosticare e risolvere i problemi più comuni che potresti riscontrare quando lavori con un AWS DMS IAM.

**Topics**
+ [Non sono autorizzato a eseguire alcuna azione in AWS DMS](#security_iam_troubleshoot-no-permissions)
+ [Non sono autorizzato a eseguire iam: PassRole](#security_iam_troubleshoot-passrole)
+ [Sono un amministratore e voglio consentire ad altri di accedere AWS DMS](#security_iam_troubleshoot-admin-delegate)
+ [Voglio consentire a persone esterne al mio AWS account di accedere alle mie risorse AWS DMS](#security_iam_troubleshoot-cross-account-access)

## Non sono autorizzato a eseguire alcuna azione in AWS DMS
<a name="security_iam_troubleshoot-no-permissions"></a>

Se ti Console di gestione AWS dice che non sei autorizzato a eseguire un'azione, devi contattare l'amministratore per ricevere assistenza. L'amministratore è la persona da cui si sono ricevuti il nome utente e la password.

L'errore di esempio seguente si verifica quando l'utente `mateojackson` IAM tenta di utilizzare la console per visualizzare i dettagli su un endpoint AWS DMS ma non dispone `dms: DescribeEndpoint` delle autorizzazioni.

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: dms:DescribeEndpoint on resource: my-postgresql-target
```

In questo caso, Mateo chiede al suo amministratore di aggiornare le sue policy per poter accedere alla risorsa dell'endpoint `my-postgresql-target` mediante l'operazione `dms:DescribeEndpoint`.

## Non sono autorizzato a eseguire iam: PassRole
<a name="security_iam_troubleshoot-passrole"></a>

Se ricevi un errore che indica che non sei autorizzato a eseguire l'operazione `iam:PassRole`, le tue policy devono essere aggiornate per poter passare un ruolo a AWS DMS.

Alcuni Servizi AWS consentono di passare un ruolo esistente a quel servizio invece di creare un nuovo ruolo di servizio o un ruolo collegato al servizio. Per eseguire questa operazione, è necessario disporre delle autorizzazioni per trasmettere il ruolo al servizio.

L'errore di esempio seguente si verifica quando un utente IAM denominato `marymajor` cerca di utilizzare la console per eseguire un'operazione in AWS DMS. Tuttavia, l'operazione richiede che il servizio disponga delle autorizzazioni concesse da un ruolo di servizio. Mary non dispone delle autorizzazioni per trasmettere il ruolo al servizio.

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

In questo caso, le policy di Mary devono essere aggiornate per poter eseguire l’operazione `iam:PassRole`.

Se hai bisogno di aiuto, contatta il tuo AWS amministratore. L’amministratore è la persona che ti ha fornito le credenziali di accesso.

## Sono un amministratore e voglio consentire ad altri di accedere AWS DMS
<a name="security_iam_troubleshoot-admin-delegate"></a>

Per consentire ad altri di accedere AWS DMS, devi concedere l'autorizzazione alle persone o alle applicazioni che necessitano dell'accesso. Se si utilizza AWS IAM Identity Center per gestire persone e applicazioni, si assegnano set di autorizzazioni a utenti o gruppi per definirne il livello di accesso. I set di autorizzazioni creano e assegnano automaticamente le policy IAM ai ruoli IAM associati alla persona o all'applicazione. Per ulteriori informazioni, consulta [Set di autorizzazioni](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html) nella *Guida per l'AWS IAM Identity Center utente*.

Se non utilizzi IAM Identity Center, devi creare entità IAM (utenti o ruoli) per le persone o le applicazioni che necessitano di accesso. Dovrai quindi collegare all'entità una policy che conceda le autorizzazioni corrette in AWS DMS. Dopo aver concesso le autorizzazioni, fornisci le credenziali all'utente o allo sviluppatore dell'applicazione. Utilizzeranno tali credenziali per accedere. AWS*Per ulteriori informazioni sulla creazione di utenti, gruppi, policy e autorizzazioni IAM, consulta [IAM Identities](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html) and [Policies and permissions in IAM nella IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) User Guide.*

## Voglio consentire a persone esterne al mio AWS account di accedere alle mie risorse AWS DMS
<a name="security_iam_troubleshoot-cross-account-access"></a>

È possibile creare un ruolo con il quale utenti in altri account o persone esterne all’organizzazione possono accedere alle tue risorse. È possibile specificare chi è attendibile per l’assunzione del ruolo. Per i servizi che supportano politiche basate sulle risorse o liste di controllo degli accessi (ACLs), puoi utilizzare tali politiche per concedere alle persone l'accesso alle tue risorse.

Per maggiori informazioni, consulta gli argomenti seguenti:
+ Per sapere se AWS DMS supporta queste funzionalità, consulta. [Come AWS Database Migration Service funziona con IAM](security_iam_service-with-iam.md)
+ Per scoprire come fornire l'accesso alle tue risorse attraverso Account AWS le risorse di tua proprietà, consulta [Fornire l'accesso a un utente IAM in un altro Account AWS di tua proprietà](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html) nella *IAM User Guide*.
+ Per scoprire come fornire l'accesso alle tue risorse a terze parti Account AWS, consulta [Fornire l'accesso a soggetti Account AWS di proprietà di terze parti](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html) nella *Guida per l'utente IAM*.
+ Per informazioni su come fornire l'accesso tramite la federazione delle identità, consulta [Fornire l'accesso a utenti autenticati esternamente (federazione delle identità)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) nella *Guida per l'utente IAM*.
+ Per informazioni sulle differenze di utilizzo tra ruoli e policy basate su risorse per l’accesso multi-account, consulta [Accesso a risorse multi-account in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) nella *Guida per l’utente di IAM*.

## Autorizzazioni IAM necessarie per l'uso AWS DMS
<a name="CHAP_Security.IAMPermissions"></a>

Utilizza autorizzazioni IAM e ruoli IAM determinati per usare AWS DMS. Se hai effettuato l'accesso come utente IAM e desideri utilizzarlo AWS DMS, l'amministratore dell'account deve allegare la policy discussa in questa sezione all'utente, al gruppo o al ruolo IAM che utilizzi per l'esecuzione AWS DMS. Per ulteriori informazioni sulle autorizzazioni IAM, consulta la [Guida per l'utente di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_access-management.html). 

La seguente policy fornisce l'accesso AWS DMS e le autorizzazioni per determinate azioni necessarie da altri servizi Amazon come IAM AWS KMS, Amazon EC2 e Amazon. CloudWatch CloudWatchmonitora la AWS DMS migrazione in tempo reale e raccoglie e tiene traccia delle metriche che indicano lo stato di avanzamento della migrazione. È possibile utilizzare CloudWatch Logs per eseguire il debug dei problemi relativi a un'attività. 

**Nota**  
È possibile limitare ulteriormente l'accesso alle AWS DMS risorse utilizzando i tag. Per ulteriori informazioni sulla limitazione dell'accesso alle AWS DMS risorse mediante l'uso di tag, consulta. [Controllo granulare degli accessi tramite i nomi e i tag delle risorse](CHAP_Security.FineGrainedAccess.md)

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

****  

```
{

  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "dms:*",
      "Resource": "arn:aws:dms:*:123456789012:*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "kms:ListAliases",
        "kms:DescribeKey"
      ],
      "Resource": "arn:aws:kms:*:123456789012:key/*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "iam:GetRole",
        "iam:PassRole",
        "iam:CreateRole",
        "iam:AttachRolePolicy"
      ],
      "Resource": "arn:aws:iam::123456789012:role/*",
      "Condition": {
        "StringEquals": {
          "iam:PassedToService": "dms.amazonaws.com"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "ec2:DescribeVpcs",
        "ec2:DescribeInternetGateways",
        "ec2:DescribeAvailabilityZones",
        "ec2:DescribeSubnets",
        "ec2:DescribeSecurityGroups",
        "ec2:ModifyNetworkInterfaceAttribute",
        "ec2:CreateNetworkInterface",
        "ec2:DeleteNetworkInterface"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "cloudwatch:Get*",
        "cloudwatch:List*"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "logs:DescribeLogGroups",
        "logs:DescribeLogStreams",
        "logs:FilterLogEvents",
        "logs:GetLogEvents"
      ],
      "Resource": "arn:aws:logs:*:123456789012:*"
    }
  ]
}
```

------

L'analisi di queste autorizzazioni seguenti potrebbe aiutarti a comprendere meglio il motivo per cui ciascuna di esse è necessaria.

La sezione seguente è necessaria per consentire all'utente di chiamare le operazioni AWS DMS API.

```
{
            "Effect": "Allow",
            "Action": "dms:*",
            "Resource": "arn:aws:dms:region:account:resourcetype/id"
}
```

La sezione seguente è necessaria per consentire all'utente di elencare le AWS KMS chiavi e gli alias disponibili per la visualizzazione nella console. Questa voce non è obbligatoria se conosci l'Amazon Resource Name (ARN) per la chiave KMS e stai utilizzando solo il AWS Command Line Interface ().AWS CLI

```
{
            "Effect": "Allow",
            "Action": [
                "kms:ListAliases", 
                "kms:DescribeKey"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La seguente sezione è necessaria per determinati tipi di endpoint che richiedono il trasferimento dell'ARN del ruolo IAM con l'endpoint. Inoltre, se i AWS DMS ruoli richiesti non vengono creati in anticipo, la AWS DMS console può creare il ruolo. Se tutti i ruoli sono configurati in anticipo, tutto ciò di cui hai bisogno è `iam:GetRole` e `iam:PassRole`. Per ulteriori informazioni sui ruoli, consulta [Creazione dei ruoli IAM da utilizzare con AWS DMS](#CHAP_Security.APIRole).

```
{
            "Effect": "Allow",
            "Action": [
                "iam:GetRole",
                "iam:PassRole",
                "iam:CreateRole",
                "iam:AttachRolePolicy"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La sezione seguente è necessaria perché è AWS DMS necessario creare l'istanza Amazon EC2 e configurare la rete per l'istanza di replica creata. Queste risorse esistono nell'account del cliente, perciò è necessaria la possibilità di eseguire tali azioni per conto del cliente.

```
{
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeVpcs",
                "ec2:DescribeInternetGateways",
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups",
                "ec2:ModifyNetworkInterfaceAttribute",
                "ec2:CreateNetworkInterface",
                "ec2:DeleteNetworkInterface"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La seguente sezione è necessaria per consentire all'utente di visualizzare i parametri dell'istanza di replica.

```
{
            "Effect": "Allow",
            "Action": [
                "cloudwatch:Get*",
                "cloudwatch:List*"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

Questa sezione è necessaria per consentire all'utente di visualizzare i log della replica.

```
{
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogGroups",
                "logs:DescribeLogStreams",
                "logs:FilterLogEvents",
                "logs:GetLogEvents"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

 Se utilizzi la AWS DMS console, il AWS Command Line Interface (AWS CLI) o l' AWS DMS API per la migrazione, devi aggiungere diversi ruoli al tuo account. Per ulteriori informazioni sull'aggiunta di questi ruoli, consulta [Creazione dei ruoli IAM da utilizzare con AWS DMS](#CHAP_Security.APIRole).

## Creazione dei ruoli IAM da utilizzare con AWS DMS
<a name="CHAP_Security.APIRole"></a>

Se utilizzi la AWS DMS console, l' AWS CLI o l' AWS DMS API per la migrazione del database, devi aggiungere tre ruoli IAM al tuo AWS account prima di poter utilizzare le funzionalità di AWS DMS. Due di questi sono `dms-vpc-role` e `dms-cloudwatch-logs-role`. Se utilizzi Amazon Redshift come database di destinazione, devi anche aggiungere il ruolo IAM `dms-access-for-endpoint` al tuo AWS account.

Gli aggiornamenti alle policy gestite sono automatici. Se stai usando una policy personalizzata con i ruoli IAM, assicurati di controllare periodicamente gli aggiornamenti per la policy gestita in questa documentazione. È possibile visualizzare i dettagli della policy gestita utilizzando una combinazione dei comandi `get-policy` e `get-policy-version`.

Ad esempio, il comando `get-policy` seguente recupera le informazioni sul ruolo IAM specificato.

```
aws iam get-policy --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole
```

Le informazioni restituite dal comando sono le seguenti.

```
{
    "Policy": {
        "PolicyName": "AmazonDMSVPCManagementRole",
        "PolicyId": "ANPAJHKIGMBQI4AEFFSYO",
        "Arn": "arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole",
        "Path": "/service-role/",
        "DefaultVersionId": "v4",
        "AttachmentCount": 1,
        "PermissionsBoundaryUsageCount": 0,
        "IsAttachable": true,
        "Description": "Provides access to manage VPC settings for AWS managed customer configurations",
        "CreateDate": "2015-11-18T16:33:19+00:00",
        "UpdateDate": "2024-07-25T15:19:01+00:00",
        "Tags": []
    }
}
```

Il comando `get-policy-version` seguente recupera le informazioni sulla policy IAM.

```
aws iam get-policy-version --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole --version-id v4
```

Le informazioni restituite dal comando sono le seguenti.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Sid": "ExampleStatementID",
        "Effect": "Allow",
        "Action": [
            "ec2:CreateNetworkInterface",
            "ec2:DeleteNetworkInterface",
            "ec2:DescribeAvailabilityZones",
            "ec2:DescribeDhcpOptions",
            "ec2:DescribeInternetGateways",
            "ec2:DescribeNetworkInterfaces",
            "ec2:DescribeSecurityGroups",
            "ec2:DescribeSubnets",
            "ec2:DescribeVpcs",
            "ec2:ModifyNetworkInterfaceAttribute"
        ],
        "Resource": "*"
      }
    ]
}
```

------

Gli stessi comandi possono essere utilizzati per ottenere informazioni su `AmazonDMSCloudWatchLogsRole` e sulla policy gestita `AmazonDMSRedshiftS3Role`.

Le procedure seguenti creano i ruoli IAM `dms-vpc-role`, `dms-cloudwatch-logs-role` e `dms-access-for-endpoint`.

**Per creare il ruolo dms-vpc-role IAM da utilizzare con l'API AWS CLI or AWS DMS**

1.  Crea un file JSON con la policy IAM seguente. Denominare il file JSON `dmsAssumeRolePolicyDocument.json`. 

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
      {
        "Effect": "Allow",
        "Principal": {
           "Service": "dms.amazonaws.com"
        },
      "Action": "sts:AssumeRole"
      }
    ]
   }
   ```

------

    Crea il ruolo AWS CLI utilizzando il comando seguente.

   ```
   aws iam create-role --role-name dms-vpc-role --assume-role-policy-document file://dmsAssumeRolePolicyDocument.json                    
   ```

1.  Collegare la policy `AmazonDMSVPCManagementRole` a `dms-vpc-role` utilizzando il comando seguente.

   ```
   aws iam attach-role-policy --role-name dms-vpc-role --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole                    
   ```

**Per creare il ruolo dms-cloudwatch-logs-role IAM da utilizzare con l' AWS DMS API AWS CLI or**

1.  Crea un file JSON con la policy IAM seguente. Denominare il file JSON `dmsAssumeRolePolicyDocument2.json`. 

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
      {
        "Effect": "Allow",
        "Principal": {
           "Service": "dms.amazonaws.com"
        },
      "Action": "sts:AssumeRole"
      }
    ]
   }
   ```

------

    Crea il ruolo AWS CLI utilizzando il comando seguente.

   ```
   aws iam create-role --role-name dms-cloudwatch-logs-role --assume-role-policy-document file://dmsAssumeRolePolicyDocument2.json                    
   ```

1.  Collegare la policy `AmazonDMSCloudWatchLogsRole` a `dms-cloudwatch-logs-role` utilizzando il comando seguente.

   ```
   aws iam attach-role-policy --role-name dms-cloudwatch-logs-role --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole                    
   ```

Se utilizzi Amazon Redshift come database di destinazione, è necessario creare il ruolo IAM `dms-access-for-endpoint` per fornire l'accesso ad Amazon S3.

**Per creare il ruolo dms-access-for-endpoint IAM da utilizzare con Amazon Redshift come database di destinazione**

1. Crea un file JSON con la policy IAM seguente. Denominare il file JSON `dmsAssumeRolePolicyDocument3.json`. 

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

****  

   ```
    {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "1",
         "Effect": "Allow",
         "Principal": {
           "Service": "dms.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       },
       {
         "Sid": "2",
         "Effect": "Allow",
         "Principal": {
           "Service": "redshift.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

1.  Crea il ruolo AWS CLI utilizzando il seguente comando.

   ```
     aws iam create-role --role-name dms-access-for-endpoint --assume-role-policy-document file://dmsAssumeRolePolicyDocument3.json                   
   ```

1.  Collegare la policy `AmazonDMSRedshiftS3Role` al ruolo `dms-access-for-endpoint` utilizzando il comando seguente.

   ```
   aws iam attach-role-policy --role-name dms-access-for-endpoint \
       --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role
   ```

Ora dovresti disporre delle politiche IAM per utilizzare l' AWS DMS API AWS CLI or.

# Prevenzione del confused deputy tra servizi
<a name="cross-service-confused-deputy-prevention"></a>

Il problema confused deputy è un problema di sicurezza in cui un’entità che non dispone dell’autorizzazione per eseguire un’azione può costringere un’entità maggiormente privilegiata a eseguire l’azione. Nel AWS, l'impersonificazione tra servizi può portare al confuso problema del vice. La rappresentazione tra servizi può verificarsi quando un servizio (il *servizio chiamante*) effettua una chiamata a un altro servizio (il *servizio chiamato*). Il servizio chiamante può essere manipolato per utilizzare le proprie autorizzazioni e agire sulle risorse di un altro cliente, a cui normalmente non avrebbe accesso. Per evitare ciò, AWS fornisce strumenti per poterti a proteggere i tuoi dati per tutti i servizi con entità di servizio a cui è stato concesso l’accesso alle risorse dell’account.

Si consiglia di utilizzare [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn)le chiavi di contesto della condizione [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount)globale nelle politiche delle risorse per limitare le autorizzazioni che AWS Database Migration Service forniscono un altro servizio alla risorsa. Se il valore `aws:SourceArn` non contiene l'ID account, ad esempio un nome dell'istanza di replica (ARN) AWS DMS , devi utilizzare entrambe le chiavi di contesto delle condizioni globali per limitare le autorizzazioni. Se si utilizzano entrambe le chiavi di contesto delle condizioni globali e il valore `aws:SourceArn` contiene l'ID account, il valore `aws:SourceAccount` e l'account nel valore `aws:SourceArn` deve utilizzare lo stesso ID account nella stessa dichiarazione di policy. Utilizzare `aws:SourceArn` se si desidera consentire l'associazione di una sola risorsa all'accesso tra servizi. Utilizzare `aws:SourceAccount` se si desidera consentire l’associazione di qualsiasi risorsa in tale account all’uso tra servizi.

AWS DMS supporta opzioni alternative confuse a partire dalla versione 3.4.7 e successive. Per ulteriori informazioni, consulta [AWS Note di rilascio di Database Migration Service 3.4.7](CHAP_ReleaseNotes.md#CHAP_ReleaseNotes.DMS347). Se l'istanza di replica utilizza AWS DMS 3.4.6 o versione precedente, assicurati di eseguire l'aggiornamento alla versione più recente prima di impostare le opzioni "confused deputy".

Il modo più efficace per proteggersi dal problema “confused deputy” è quello di utilizzare la chiave di contesto della condizione globale `aws:SourceArn` con l’ARN completo della risorsa. Se non si conosce l’ARN completo della risorsa o si scelgono più risorse, utilizzare la chiave di contesto della condizione globale `aws:SourceArn` con caratteri jolly (`*`) per le parti sconosciute dell’ARN. Ad esempio, `arn:aws:dms:*:123456789012:rep:*`. 

**Topics**
+ [Ruoli IAM da utilizzare con l' AWS DMS API per la prevenzione della confusione tra servizi](#cross-service-confused-deputy-prevention-dms-api)
+ [La policy IAM prevede l'archiviazione delle valutazioni preliminari in Amazon S3 per la prevenzione di "confused deputy" tra servizi](#cross-service-confused-deputy-prevention-s3)
+ [Utilizzo di Amazon DynamoDB come endpoint di destinazione per la prevenzione della confusione tra AWS DMS servizi](#cross-service-confused-deputy-prevention-dynamodb)

## Ruoli IAM da utilizzare con l' AWS DMS API per la prevenzione della confusione tra servizi
<a name="cross-service-confused-deputy-prevention-dms-api"></a>

Per utilizzare l'API AWS CLI o l' AWS DMS API per la migrazione del database, devi aggiungere i ruoli `dms-vpc-role` e `dms-cloudwatch-logs-role` IAM al tuo AWS account prima di poter utilizzare le funzionalità di AWS DMS. Per ulteriori informazioni, consulta [Creazione dei ruoli IAM da utilizzare con AWS DMS](security-iam.md#CHAP_Security.APIRole).

L'esempio seguente mostra le policy per l'utilizzo del ruolo `dms-vpc-role` con l'istanza di replica `my-replication-instance`. Usa queste policy per evitare il problema del "confused deputy".

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
        "Sid": "AllowDMSAssumeRole",
        "Effect": "Allow",
        "Action": "sts:AssumeRole",
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "AWS:SourceAccount": "111122223333"
         },
         "ArnLike": {
             "aws:SourceArn": "arn:aws:dms:*:123456789012:*"
         }
      }
    }
  ]
}
```

------

## La policy IAM prevede l'archiviazione delle valutazioni preliminari in Amazon S3 per la prevenzione di "confused deputy" tra servizi
<a name="cross-service-confused-deputy-prevention-s3"></a>

Per archiviare i risultati della valutazione preliminare nel bucket S3, crea una policy IAM che consenta ad AWS DMS di gestire gli oggetti in Amazon S3. Per ulteriori informazioni, consulta [Creazione di risorse IAM](CHAP_Tasks.AssessmentReport.Prerequisites.md#CHAP_Tasks.AssessmentReport.Prerequisites.IAM).

L'esempio seguente mostra una politica di fiducia con condizioni sostitutive confuse impostate su un ruolo IAM che consente di accedere AWS DMS a tutte le attività e le esecuzioni di valutazione con un account utente specifico.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowDMSAssumeRole",
      "Effect": "Allow",
      "Action": "sts:AssumeRole",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "AWS:SourceAccount": "111122223333"
        },
        "ArnLike": {
            "aws:SourceArn": [
                "arn:aws:dms:*:123456789012:assessment-run:*",
                "arn:aws:dms:*:123456789012:task:*"
          ]
        }
      }
    }
  ]
}
```

------

## Utilizzo di Amazon DynamoDB come endpoint di destinazione per la prevenzione della confusione tra AWS DMS servizi
<a name="cross-service-confused-deputy-prevention-dynamodb"></a>

Per utilizzare Amazon DynamoDB come endpoint di destinazione per la migrazione del database, devi creare il ruolo IAM che AWS DMS consenta di assumere e concedere l'accesso alle tabelle DynamoDB. Quindi, usa questo ruolo quando crei l'endpoint DynamoDB di destinazione in AWS DMS. Per ulteriori informazioni, consulta [Utilizzo di Amazon DynamoDB come destinazione](CHAP_Target.DynamoDB.md).

L'esempio seguente mostra una policy di fiducia con condizioni sostitutive confuse impostate su un ruolo IAM che consente a tutti gli AWS DMS endpoint di accedere alle tabelle DynamoDB.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowDMSAssumeRole",
      "Effect": "Allow",
      "Action": "sts:AssumeRole",
      "Resource": "*",
      "Condition": {
      "StringEquals": {
          "AWS:SourceAccount": "111122223333"
        },
        "ArnLike": {
        "aws:SourceArn": [
            "arn:aws:dms:*:123456789012:assessment-run:*",
            "arn:aws:dms:*:123456789012:task:*"
            ]
         }
      }
    }
  ]
}
```

------

# AWS politiche gestite per AWS Database Migration Service
<a name="security-iam-awsmanpol"></a>

**Topics**
+ [AWS politica gestita: Amazon DMSVPCManagement Role](#security-iam-awsmanpol-AmazonDMSVPCManagementRole)
+ [AWS politica gestita: AWSDMSServerless ServiceRolePolicy](#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy)
+ [AWS politica gestita: Amazon DMSCloud WatchLogsRole](#security-iam-awsmanpol-AmazonDMSCloudWatchLogsRole)
+ [AWS politica gestita: AWSDMSFleet AdvisorServiceRolePolicy](#security-iam-awsmanpol-AWSDMSFleetAdvisorServiceRolePolicy)
+ [AWS politica gestita: Amazon DMSRedshift S3Role](#security-iam-awsmanpol-AmazonDMSRedshiftS3Role)
+ [AWS DMS aggiornamenti alle politiche AWS gestite](#security-iam-awsmanpol-updates)

## AWS politica gestita: Amazon DMSVPCManagement Role
<a name="security-iam-awsmanpol-AmazonDMSVPCManagementRole"></a>

Questa politica è allegata al `dms-vpc-role` ruolo, che consente di AWS DMS eseguire azioni per tuo conto.

Questa politica concede le autorizzazioni dei contributori che consentono di gestire le risorse AWS DMS di rete.

**Dettagli delle autorizzazioni**

Questa politica include le seguenti operazioni:
+ `ec2:CreateNetworkInterface`— AWS DMS necessita di questa autorizzazione per creare interfacce di rete. Queste interfacce sono essenziali per consentire all'istanza di AWS DMS replica di connettersi ai database di origine e di destinazione.
+ `ec2:DeleteNetworkInterface`— AWS DMS necessita di questa autorizzazione per ripulire le interfacce di rete create quando non sono più necessarie. Questo aiuta nella gestione delle risorse ed evita costi inutili.
+ `ec2:DescribeAvailabilityZones`— Questa autorizzazione consente di AWS DMS recuperare informazioni sulle zone di disponibilità in una regione. AWS DMS utilizza queste informazioni per garantire la ridondanza e la disponibilità delle risorse nelle zone corrette.
+ `ec2:DescribeDhcpOptions`— AWS DMS recupera i dettagli del set di opzioni DHCP per il VPC specificato. Queste informazioni sono necessarie per configurare correttamente la rete per le istanze di replica.
+ `ec2:DescribeInternetGateways`— AWS DMS potrebbe richiedere questa autorizzazione per comprendere i gateway Internet configurati nel VPC. Queste informazioni sono fondamentali se l'istanza o i database di replica richiedono l'accesso a Internet.
+ `ec2:DescribeNetworkInterfaces`— AWS DMS recupera informazioni sulle interfacce di rete esistenti all'interno del VPC. Queste informazioni sono necessarie AWS DMS per configurare correttamente le interfacce di rete e garantire una connettività di rete adeguata per il processo di migrazione.
+ `ec2:DescribeSecurityGroups`— I gruppi di sicurezza controllano il traffico in entrata e in uscita verso istanze e risorse. AWS DMS deve descrivere i gruppi di sicurezza per configurare correttamente le interfacce di rete e garantire una comunicazione adeguata tra l'istanza di replica e i database.
+ `ec2:DescribeSubnets`— Questa autorizzazione consente di AWS DMS elencare le sottoreti in un VPC. AWS DMS utilizza queste informazioni per avviare le istanze di replica nelle sottoreti appropriate, assicurando che abbiano la connettività di rete necessaria.
+ `ec2:DescribeVpcs`— VPCs La descrizione è essenziale per comprendere l'ambiente di rete AWS DMS in cui risiedono l'istanza di replica e i database. Ciò include la conoscenza dei blocchi CIDR e di altre configurazioni specifiche del VPC.
+ `ec2:ModifyNetworkInterfaceAttribute`— Questa autorizzazione è necessaria per modificare gli attributi delle AWS DMS interfacce di rete che gestisce. Ciò potrebbe includere la regolazione delle impostazioni per garantire la connettività e la sicurezza.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
			"Sid": "Statement1",
			"Effect": "Allow",
			"Action": [
				"ec2:CreateNetworkInterface",
				"ec2:DeleteNetworkInterface",
				"ec2:DescribeAvailabilityZones",
				"ec2:DescribeDhcpOptions",
				"ec2:DescribeInternetGateways",
				"ec2:DescribeNetworkInterfaces",
				"ec2:DescribeSecurityGroups",
				"ec2:DescribeSubnets",
				"ec2:DescribeVpcs",
				"ec2:ModifyNetworkInterfaceAttribute"
			],
			"Resource": "*"
		}
    ]
}
```

------

## AWS politica gestita: AWSDMSServerless ServiceRolePolicy
<a name="security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy"></a>

Questa politica è allegata al `AWSServiceRoleForDMSServerless` ruolo, che consente di AWS DMS eseguire azioni per conto dell'utente. Per ulteriori informazioni, consulta [Ruolo collegato al servizio per AWS DMS](slr-services-sl.md).

Questa politica concede ai collaboratori le autorizzazioni che consentono di gestire le risorse di AWS DMS replica.

**Dettagli delle autorizzazioni**

Questa policy include le seguenti autorizzazioni:
+ **AWS DMS**— Consente ai responsabili di interagire con le risorse. AWS DMS 
+ **Amazon S3**: consente a DMS di creare un bucket S3 per archiviare una valutazione di premigrazione. Il bucket S3 viene creato per un utente per regione e la sua politica sui bucket limita l'accesso solo al ruolo di servizio del servizio. 

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "id0",
            "Effect": "Allow",
            "Action": [
                "dms:CreateReplicationInstance",
                "dms:CreateReplicationTask"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "dms:req-tag/ResourceCreatedBy": "DMSServerless"
                }
            }
        },
        {
            "Sid": "id1",
            "Effect": "Allow",
            "Action": [
                "dms:DescribeReplicationInstances",
                "dms:DescribeReplicationTasks"
            ],
            "Resource": "*"
        },
        {
            "Sid": "id2",
            "Effect": "Allow",
            "Action": [
                "dms:StartReplicationTask",
                "dms:StopReplicationTask",
                "dms:ModifyReplicationTask",
                "dms:DeleteReplicationTask",
                "dms:ModifyReplicationInstance",
                "dms:DeleteReplicationInstance"
            ],
            "Resource": [
                "arn:aws:dms:*:*:rep:*",
                "arn:aws:dms:*:*:task:*"
            ],
            "Condition": {
                "StringEqualsIgnoreCase": {
                    "aws:ResourceTag/ResourceCreatedBy": "DMSServerless"
                }
            }
        },
        {
            "Sid": "id3",
            "Effect": "Allow",
            "Action": [
                "dms:TestConnection",
                "dms:DeleteConnection"
            ],
            "Resource": [
                "arn:aws:dms:*:*:rep:*",
                "arn:aws:dms:*:*:endpoint:*"
            ]
        },
        {
            "Sid": "id4",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:DeleteObject",
                "s3:GetObject",
                "s3:PutObjectTagging"
            ],
            "Resource": [
                "arn:aws:s3:::dms-serverless-premigration-results-*",
                "arn:aws:s3:::dms-premigration-results-*"
            ],
            "Condition": {
                "StringEquals": {
                    "s3:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "id5",
            "Effect": "Allow",
            "Action": [
                "s3:PutBucketPolicy",
                "s3:ListBucket",
                "s3:GetBucketLocation",
                "s3:CreateBucket"
            ],
            "Resource": [
                "arn:aws:s3:::dms-serverless-premigration-results-*",
                "arn:aws:s3:::dms-premigration-results-*"
            ],
            "Condition": {
                "StringEquals": {
                    "s3:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "id6",
            "Effect": "Allow",
            "Action": [
                "dms:StartReplicationTaskAssessmentRun"
            ],
            "Resource": [
                "arn:aws:dms:*:*:task:*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        }
    ]
}
```

## AWS politica gestita: Amazon DMSCloud WatchLogsRole
<a name="security-iam-awsmanpol-AmazonDMSCloudWatchLogsRole"></a>

Questa politica è allegata al `dms-cloudwatch-logs-role` ruolo, che consente di AWS DMS eseguire azioni per tuo conto. Per ulteriori informazioni, consulta [Utilizzo di ruoli collegati ai servizi per AWS DMS](using-service-linked-roles.md).

Questa politica concede le autorizzazioni per i collaboratori che consentono di pubblicare i log AWS DMS di replica nei log. CloudWatch 

**Dettagli delle autorizzazioni**

Questa policy include le seguenti autorizzazioni:




+ `logs`— Consente ai responsabili di pubblicare i log nei Logs. CloudWatch Questa autorizzazione è necessaria per poter AWS DMS essere utilizzata CloudWatch per visualizzare i registri di replica.



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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowDescribeOnAllLogGroups",
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogGroups"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "AllowDescribeOfAllLogStreamsOnDmsTasksLogGroup",
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogStreams"
            ],
            "Resource": [
                "arn:aws:logs:*:*:log-group:dms-tasks-*",
                "arn:aws:logs:*:*:log-group:dms-serverless-replication-*"
            ]
        },
        {
            "Sid": "AllowCreationOfDmsLogGroups",
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogGroup"
            ],
            "Resource": [
                "arn:aws:logs:*:*:log-group:dms-tasks-*",
                "arn:aws:logs:*:*:log-group:dms-serverless-replication-*:log-stream:"
            ]
        },
        {
            "Sid": "AllowCreationOfDmsLogStream",
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogStream"
            ],
            "Resource": [
                "arn:aws:logs:*:*:log-group:dms-tasks-*:log-stream:dms-task-*",
                "arn:aws:logs:*:*:log-group:dms-serverless-replication-*:log-stream:dms-serverless-*"
            ]
        },
        {
            "Sid": "AllowUploadOfLogEventsToDmsLogStream",
            "Effect": "Allow",
            "Action": [
                "logs:PutLogEvents"
            ],
            "Resource": [
                "arn:aws:logs:*:*:log-group:dms-tasks-*:log-stream:dms-task-*",
                "arn:aws:logs:*:*:log-group:dms-serverless-replication-*:log-stream:dms-serverless-*"
            ]
        }
    ]
}
```

------

## AWS politica gestita: AWSDMSFleet AdvisorServiceRolePolicy
<a name="security-iam-awsmanpol-AWSDMSFleetAdvisorServiceRolePolicy"></a>





Non puoi collegarti AWSDMSFleet AdvisorServiceRolePolicy alle tue entità IAM. Questa policy è associata a un ruolo legato al servizio che consente a AWS DMS Fleet Advisor di eseguire azioni per tuo conto. Per ulteriori informazioni, consulta [Utilizzo di ruoli collegati ai servizi per AWS DMS](using-service-linked-roles.md).



Questa politica concede le autorizzazioni per i contributori che consentono a AWS DMS Fleet Advisor di pubblicare le metriche di Amazon. CloudWatch 



**Dettagli delle autorizzazioni**

Questa policy include le seguenti autorizzazioni:




+ `cloudwatch`— Consente ai responsabili di pubblicare punti dati metrici su Amazon. CloudWatch Questa autorizzazione è necessaria per consentire a AWS DMS Fleet Advisor di CloudWatch visualizzare grafici con metriche del database.



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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Resource": "*",
        "Action": "cloudwatch:PutMetricData",
        "Condition": {
            "StringEquals": {
                "cloudwatch:namespace": "AWS/DMS/FleetAdvisor"
            }
        }
    }
}
```

------

## AWS politica gestita: Amazon DMSRedshift S3Role
<a name="security-iam-awsmanpol-AmazonDMSRedshiftS3Role"></a>

Questa policy fornisce autorizzazioni che consentono di gestire le impostazioni S3 AWS DMS per gli endpoint Redshift.

**Dettagli delle autorizzazioni**

Questa politica include le seguenti operazioni:
+ `s3:CreateBucket`- Consente a DMS di creare bucket S3 con il prefisso «dms-»
+ `s3:ListBucket`- Consente a DMS di elencare il contenuto dei bucket S3 con il prefisso «dms-»
+ `s3:DeleteBucket `- Consente a DMS di eliminare i bucket S3 con il prefisso «dms-»
+ `s3:GetBucketLocation`- Consente a DMS di recuperare la regione in cui si trova un bucket S3
+ `s3:GetObject`- Consente a DMS di recuperare oggetti dai bucket S3 con il prefisso «dms-»
+ `s3:PutObject`- Consente a DMS di aggiungere oggetti ai bucket S3 con il prefisso «dms-»
+ `s3:DeleteObject`- Consente a DMS di eliminare oggetti dai bucket S3 con il prefisso «dms-»
+ `s3:GetObjectVersion`- Consente a DMS di recuperare versioni specifiche di oggetti in bucket con versioni
+ `s3:GetBucketPolicy`- Consente a DMS di recuperare le policy dei bucket
+ `s3:PutBucketPolicy`- Consente a DMS di creare o aggiornare le policy dei bucket
+ `s3:GetBucketAcl`- Consente a DMS di recuperare gli elenchi di controllo degli accessi ai bucket () ACLs
+ `s3:PutBucketVersioning`- Consente a DMS di abilitare o sospendere il controllo delle versioni sui bucket
+ `s3:GetBucketVersioning`- Consente a DMS di recuperare lo stato di versione dei bucket
+ `s3:PutLifecycleConfiguration`- Consente a DMS di creare o aggiornare le regole del ciclo di vita per i bucket
+ `s3:GetLifecycleConfiguration`- Consente a DMS di recuperare le regole del ciclo di vita configurate per i bucket
+ `s3:DeleteBucketPolicy`- Consente a DMS di eliminare le policy dei bucket

Tutte queste autorizzazioni si applicano solo alle risorse con pattern ARN: `arn:aws:s3:::dms-*`

**Documento di policy JSON**

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

****  

```
{
  "Version":"2012-10-17",		 	 	  
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:CreateBucket",
        "s3:ListBucket", 
        "s3:DeleteBucket",
        "s3:GetBucketLocation",
        "s3:GetObject",
        "s3:PutObject",
        "s3:DeleteObject",
        "s3:GetObjectVersion",
        "s3:GetBucketPolicy",
        "s3:PutBucketPolicy",
        "s3:GetBucketAcl",
        "s3:PutBucketVersioning",
        "s3:GetBucketVersioning",
        "s3:PutLifecycleConfiguration",
        "s3:GetLifecycleConfiguration",
        "s3:DeleteBucketPolicy"
      ],
      "Resource": "arn:aws:s3:::dms-*"
    }
  ]
}
```

------





## AWS DMS aggiornamenti alle politiche AWS gestite
<a name="security-iam-awsmanpol-updates"></a>



Visualizza i dettagli sugli aggiornamenti delle politiche AWS gestite AWS DMS da quando questo servizio ha iniziato a tenere traccia di queste modifiche. Per ricevere avvisi automatici sulle modifiche a questa pagina, iscriviti al feed RSS nella pagina della cronologia dei AWS DMS documenti.




| Modifica | Descrizione | Data | 
| --- | --- | --- | 
|  [AWSDMSServerlessServiceRolePolicy](#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy)— Modifica  |  AWS DMS aggiornato `AWSDMSServerlessServiceRolePolicy` per consentire a DMS di creare bucket S3 e inserire i risultati della valutazione di premigrazione in tali bucket per attività di replica non correlate a DMS serverless.  | 5 novembre 2025 | 
|  [Ruolo collegato ai servizi per AWS DMS](slr-services-sl.md) Serverless: modifica  |  AWS DMS aggiornato `AWSDMSServerlessServiceRolePolicy` per consentire di supportare l'esecuzione di `dms:StartReplicationTaskAssessmentRun` valutazioni premigratorie. AWS DMS ha inoltre aggiornato il ruolo serverless collegato ai servizi per creare bucket S3 e inserire i risultati della valutazione di premigrazione in tali bucket.  | 14 febbraio 2025 | 
|  [AWSDMSServerlessServiceRolePolicy](#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy)— Modifica  |  AWS DMS aggiunto`dms:ModifyReplicationTask`, richiesto da AWS DMS Serverless per richiamare l'`ModifyReplicationTask`operazione di modifica di un'attività di replica. AWS DMS aggiunto`dms:ModifyReplicationInstance`, richiesto da AWS DMS Serverless per richiamare l'`ModifyReplicationInstance`operazione di modifica di un'istanza di replica.  | 17 gennaio 2025 | 
|  [DMSVPCManagementRuolo di Amazon](#security-iam-awsmanpol-AmazonDMSVPCManagementRole): cambiamento  |  AWS DMS aggiunte `ec2:DescribeDhcpOptions` e `ec2:DescribeNetworkInterfaces` operazioni AWS DMS per consentire la gestione delle impostazioni di rete per tuo conto.  | 17 giugno 2024 | 
|  [AWSDMSServerlessServiceRolePolicy](#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy): nuova policy  |  AWS DMS ha aggiunto il `AWSDMSServerlessServiceRolePolicy` ruolo AWS DMS per consentire la creazione e la gestione di servizi per tuo conto, come la pubblicazione delle CloudWatch metriche di Amazon.  | 22 maggio 2023 | 
|  [Amazon DMSCloud WatchLogsRole](#security-iam-awsmanpol-AmazonDMSCloudWatchLogsRole) — Cambiamento  |  AWS DMS ha aggiunto l'ARN per le risorse serverless a ciascuna delle autorizzazioni concesse, per consentire il caricamento dei log di replica dalle configurazioni di AWS DMS replica serverless a Logs. CloudWatch   | 22 maggio 2023 | 
|  [AWSDMSFleetAdvisorServiceRolePolicy](#security-iam-awsmanpol-AWSDMSFleetAdvisorServiceRolePolicy): nuova policy  |  AWS DMS Fleet Advisor ha aggiunto una nuova politica per consentire la pubblicazione dei punti dati delle metriche su Amazon CloudWatch.  | 6 marzo 2023 | 
|  AWS DMS ha iniziato a tenere traccia delle modifiche  |  AWS DMS ha iniziato a tenere traccia delle modifiche per le sue politiche AWS gestite.  | 6 marzo 2023 | 

# Convalida della conformità per AWS Database Migration Service
<a name="dms-compliance"></a>

I revisori esterni valutano la sicurezza e la conformità nell' AWS Database Migration Service ambito di più programmi di AWS conformità. Sono inclusi i seguenti programmi:
+  SOC
+ PCI
+ ISO
+ FedRAMP
+ DoD CC SRG
+ HIPAA BAA
+ MTCS
+ CS
+ K-ISMS
+ ENS High
+ OSPAR
+ HITRUST CSF

Per un elenco dei AWS servizi che rientrano nell'ambito di specifici programmi di conformità, consulta la sezione [AWS Servizi rientranti nell'ambito dei programmi di conformità](https://aws.amazon.com/compliance/services-in-scope/) (). Per informazioni generali, vedere programmi di [AWS conformità, programmi](https://aws.amazon.com/compliance/programs/) di di .

È possibile scaricare report di audit di terze parti utilizzando AWS Artifact. Per ulteriori informazioni, consulta [Scaricamento dei report in AWS Artifact ](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html).

La vostra responsabilità di conformità durante l'utilizzo AWS DMS è determinata dalla sensibilità dei dati, dagli obiettivi di conformità dell'azienda e dalle leggi e dai regolamenti applicabili. AWS fornisce le seguenti risorse per contribuire alla conformità:
+ [Guide Quick Start per la sicurezza e la conformità](https://aws.amazon.com/quickstart/?awsf.quickstart-homepage-filter=categories%23security-identity-compliance). Queste guide all'implementazione illustrano considerazioni relative all'architettura e forniscono i passaggi per l'implementazione di ambienti di base incentrati sulla sicurezza e sulla conformità su AWS.
+ [Whitepaper sull'architettura per la sicurezza e la conformità HIPAA su Amazon Web Services: questo white paper](https://docs.aws.amazon.com/whitepapers/latest/architecting-hipaa-security-and-compliance-on-aws/architecting-hipaa-security-and-compliance-on-aws.html) descrive in che modo le aziende possono utilizzare per creare applicazioni conformi allo standard HIPAA. AWS 
+ AWS risorse per [la conformità e risorse per la conformità](https://aws.amazon.com/compliance/resources/): questa raccolta di essere valida per il tuo settore e la tua area geografica.
+ [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html)— Questo AWS servizio valuta la conformità delle configurazioni delle risorse alle pratiche interne, alle linee guida del settore e alle normative.
+ [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html)— Questo AWS servizio offre una visione completa dello stato di sicurezza dell'utente e consente AWS di verificare la conformità agli standard e alle best practice del settore della sicurezza.

# Resilienza in AWS Database Migration Service
<a name="disaster-recovery-resiliency"></a>

L'infrastruttura AWS globale è costruita attorno a AWS regioni e zone di disponibilità. AWS Le regioni forniscono più zone di disponibilità fisicamente separate e isolate, collegate con reti a bassa latenza, ad alto throughput e altamente ridondanti. Con le zone di disponibilità, è possibile progettare e gestire applicazioni e database che eseguono il failover automatico tra zone di disponibilità senza interruzioni. Le zone di disponibilità sono più disponibili, tolleranti ai guasti e scalabili rispetto alle infrastrutture tradizionali a data center singolo o multiplo. 

[Per ulteriori informazioni su AWS regioni e zone di disponibilità, consulta infrastruttura globale.AWS](https://aws.amazon.com/about-aws/global-infrastructure/)

**Oltre all'infrastruttura AWS globale, AWS DMS offre elevata disponibilità e supporto di failover per un'istanza di replica utilizzando un'implementazione Multi-AZ quando si sceglie l'opzione Multi-AZ.**

In una distribuzione Multi-AZ, AWS DMS effettua automaticamente il provisioning e mantiene una replica in standby dell'istanza di replica in una zona di disponibilità diversa. L'istanza di replica primaria viene replicata in modo sincrono nella replica di standby. Se l'istanza di replica primaria incorre in un guasto o non risponde, l'istanza di standby riprende tutte le attività in esecuzione con un'interruzione minima. Poiché l'istanza primaria replica costantemente il suo stato sull'istanza di standby, un'implementazione Multi-AZ riscontra una certa riduzione delle prestazioni.

Per ulteriori informazioni sull'utilizzo delle implementazioni Multi-AZ, consulta [Utilizzo di un'istanza di AWS DMS replica](CHAP_ReplicationInstance.md).

# Sicurezza dell'infrastruttura in AWS Database Migration Service
<a name="infrastructure-security"></a>

In quanto servizio gestito, AWS Database Migration Service è protetto dalla sicurezza di rete AWS globale. Per informazioni sui servizi AWS di sicurezza e su come AWS protegge l'infrastruttura, consulta [AWS Cloud Security](https://aws.amazon.com/security/). Per progettare il tuo AWS ambiente utilizzando le migliori pratiche per la sicurezza dell'infrastruttura, vedi [Infrastructure Protection](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html) in *Security Pillar AWS Well‐Architected* Framework.

Utilizzate chiamate API AWS pubblicate per accedere AWS DMS attraverso la rete. I client devono supportare quanto segue:
+ Transport Layer Security (TLS). È richiesto TLS 1.2 ed è consigliato TLS 1.3.
+ Suite di cifratura con Perfect Forward Secrecy (PFS), ad esempio Ephemeral Diffie-Hellman (DHE) o Elliptic Curve Ephemeral Diffie-Hellman (ECDHE). La maggior parte dei sistemi moderni, come Java 7 e versioni successive, supporta tali modalità.

Puoi richiamare queste operazioni API da qualsiasi posizione di rete. AWS DMS supporta anche politiche di accesso basate sulle risorse, che possono specificare restrizioni su azioni e risorse, ad esempio, in base all'indirizzo IP di origine. Inoltre, puoi utilizzare AWS DMS le policy per controllare l'accesso da endpoint Amazon VPC specifici o cloud privati virtuali specifici (). VPCs In effetti, questo isola l'accesso alla rete a una determinata AWS DMS risorsa solo dal VPC specifico all'interno AWS della rete. Per ulteriori informazioni sull'utilizzo delle politiche di accesso basate sulle risorse, inclusi alcuni esempi AWS DMS, vedere. [Controllo granulare degli accessi tramite i nomi e i tag delle risorse](CHAP_Security.FineGrainedAccess.md)

Per limitare le comunicazioni all' AWS DMS interno di un singolo VPC, puoi creare un endpoint di interfaccia VPC che ti consenta di connetterti tramite. AWS DMS AWS PrivateLink AWS PrivateLink aiuta a garantire che qualsiasi chiamata AWS DMS e i relativi risultati associati rimangano confinati al VPC specifico per il quale è stato creato l'endpoint di interfaccia. È quindi possibile specificare l'URL per questo endpoint di interfaccia come opzione con ogni AWS DMS comando eseguito utilizzando o un SDK. AWS CLI In questo modo è possibile garantire che tutte le comunicazioni AWS DMS rimangano confinate nel VPC e siano altrimenti invisibili sulla rete Internet pubblica.

**Per creare un endpoint di interfaccia per accedere a DMS in un singolo VPC**

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

1. Nel riquadro di navigazione scegli **Endpoint**. Si apre la pagina **Crea endpoint**, in cui è possibile creare l'endpoint di interfaccia da un VPC a. AWS DMS

1. Scegli **AWS i servizi**, quindi cerca e scegli un valore per **Service Name**, in questo caso AWS DMS nel seguente modulo.

   ```
   com.amazonaws.region.dms
   ```

   Qui, *`region`* specifica la AWS regione in cui AWS DMS viene eseguita, ad esempio`com.amazonaws.us-west-2.dms`.

1. Per **VPC** scegli il VPC da cui creare l'endpoint di interfaccia, ad esempio `vpc-12abcd34`.

1. Scegli un valore per **Zona di disponibilità** e **ID sottorete**. Questi valori devono indicare una posizione in cui l'endpoint AWS DMS scelto può essere eseguito, ad esempio `us-west-2a (usw2-az1)` e `subnet-ab123cd4`.

1. Scegli **Abilita nome DNS** per creare l'endpoint con un nome DNS. Questo nome DNS è composto dall'ID dell'endpoint (`vpce-12abcd34efg567hij`) seguito da un trattino e da una stringa casuale (`ab12dc34`). Questi elementi sono separati dal nome del servizio tramite un punto in ordine inverso separato da punti, con `vpce` aggiunto (`dms.us-west-2.vpce.amazonaws.com`). 

   Un esempio è `vpce-12abcd34efg567hij-ab12dc34.dms.us-west-2.vpce.amazonaws.com`.

1. Per **Gruppo di sicurezza** scegli un gruppo da usare per l'endpoint.

   Quando configuri il gruppo di sicurezza, assicurati di consentire le chiamate HTTPS in uscita. Per ulteriori informazioni, consulta [Creazione dei gruppi di sicurezza](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#CreatingSecurityGroups) nella *Guida per l'utente di Amazon VPC*. 

1. Scegli **Accesso completo** o un valore personalizzato per **Policy**. Ad esempio, puoi scegliere una policy personalizzata simile alla seguente che limiti l'accesso dell'endpoint a determinate azioni e risorse.

   ```
   {
     "Statement": [
       {
         "Action": "dms:*",
         "Effect": "Allow",
         "Resource": "*",
         "Principal": "*"
       },
       {
         "Action": [
           "dms:ModifyReplicationInstance",
           "dms:DeleteReplicationInstance"
         ],
         "Effect": "Deny",
         "Resource": "arn:aws:dms:us-west-2:<account-id>:rep:<replication-instance-id>",
         "Principal": "*"
       }
     ]
   }
   ```

   Qui, la policy di esempio consente qualsiasi chiamata AWS DMS API, ad eccezione dell'eliminazione o della modifica di un'istanza di replica specifica.

A questo punto puoi specificare l'opzione di un URL formato utilizzando il nome DNS creato nella fase 6. Lo si specifica per ogni comando AWS DMS CLI o operazione API per accedere all'istanza del servizio utilizzando l'endpoint di interfaccia creato. Ad esempio, potrebbe essere necessario eseguire il comando `DescribeEndpoints` della CLI DMS in questo VPC come mostrato di seguito.

```
$ aws dms describe-endpoints --endpoint-url https://vpce-12abcd34efg567hij-ab12dc34.dms.us-west-2.vpce.amazonaws.com
```

Se abiliti l'opzione DNS privato, non occorre specificare l'URL dell'endpoint nella richiesta.

*Per ulteriori informazioni sulla creazione e l'utilizzo di endpoint di interfaccia VPC (inclusa l'attivazione dell'opzione DNS privato), consulta Interface [VPC endpoint ()AWS PrivateLink nella Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html) User Guide.*

# Controllo granulare degli accessi tramite i nomi e i tag delle risorse
<a name="CHAP_Security.FineGrainedAccess"></a>

Puoi utilizzare nomi e tag di risorse basati su Amazon Resource Names (ARNs) per gestire l'accesso alle AWS DMS risorse. Per farlo, occorre definire l'operazione consentita o includere istruzioni condizionali nelle policy IAM. 

## Utilizzo dei nomi delle risorse per il controllo dell'accesso
<a name="CHAP_Security.FineGrainedAccess.ResourceName"></a>

È possibile creare un account utente IAM e assegnare una policy in base all'ARN della risorsa AWS DMS .

La seguente policy nega l'accesso all'istanza di AWS DMS replica con l'ARN *ARN: aws:dms:us-east- 1:152683116:rep*: ZTOXGLIXMIHKITV: DOH67

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "arn:aws:dms:us-east-1:111122223333:rep:DOH67ZTOXGLIXMIHKITV"
        }
    ]
}
```

------

Ad esempio, i seguenti comandi hanno esito negativo se la policy è attiva.

```
$ aws dms delete-replication-instance 
   --replication-instance-arn "arn:aws:dms:us-east-1:152683116:rep:DOH67ZTOXGLIXMIHKITV"

A client error (AccessDeniedException) occurred when calling the DeleteReplicationInstance 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:DeleteReplicationInstance on resource: arn:aws:dms:us-east-1:152683116:rep:DOH67ZTOXGLIXMIHKITV

$ aws dms modify-replication-instance 
   --replication-instance-arn "arn:aws:dms:us-east-1:152683116:rep:DOH67ZTOXGLIXMIHKITV"

A client error (AccessDeniedException) occurred when calling the ModifyReplicationInstance 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:ModifyReplicationInstance on resource: arn:aws:dms:us-east-1:152683116:rep:DOH67ZTOXGLIXMIHKITV
```

Puoi anche specificare policy IAM che AWS DMS limitano l'accesso agli endpoint e alle attività di replica.

La seguente policy limita l'accesso a un AWS DMS endpoint utilizzando l'ARN dell'endpoint.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "arn:aws:dms:us-east-1:111122223333:endpoint:D6E37YBXTNHOA6XRQSZCUGX"
        }
    ]
}
```

------

Ad esempio, i seguenti comandi hanno esito negativo se la policy che usa l'ARN dell'endpoint è attiva.

```
$ aws dms delete-endpoint 
   --endpoint-arn "arn:aws:dms:us-east-1:152683116:endpoint:D6E37YBXTNHOA6XRQSZCUGX"

A client error (AccessDeniedException) occurred when calling the DeleteEndpoint operation: 
User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: dms:DeleteEndpoint 
on resource: arn:aws:dms:us-east-1:152683116:endpoint:D6E37YBXTNHOA6XRQSZCUGX

$ aws dms modify-endpoint 
   --endpoint-arn "arn:aws:dms:us-east-1:152683116:endpoint:D6E37YBXTNHOA6XRQSZCUGX"     

A client error (AccessDeniedException) occurred when calling the ModifyEndpoint operation: 
User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: dms:ModifyEndpoint 
on resource: arn:aws:dms:us-east-1:152683116:endpoint:D6E37YBXTNHOA6XRQSZCUGX
```

La seguente politica limita l'accesso a un' AWS DMS attività utilizzando l'ARN dell'attività.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "arn:aws:dms:us-east-1:111122223333:task:UO3YR4N47DXH3ATT4YMWOIT"
        }
    ]
}
```

------

Ad esempio, i seguenti comandi hanno esito negativo se la policy che usa l'ARN dell'attività è attiva.

```
$ aws dms delete-replication-task 
   --replication-task-arn "arn:aws:dms:us-east-1:152683116:task:UO3YR4N47DXH3ATT4YMWOIT"

A client error (AccessDeniedException) occurred when calling the DeleteReplicationTask operation: 
User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: dms:DeleteReplicationTask 
on resource: arn:aws:dms:us-east-1:152683116:task:UO3YR4N47DXH3ATT4YMWOIT
```

## Utilizzo dei tag per controllare l'accesso
<a name="CHAP_Security.FineGrainedAccess.Tags"></a>

AWS DMS definisce una serie di coppie chiave-valore comuni che sono disponibili per l'uso nelle politiche definite dal cliente senza requisiti di etichettatura aggiuntivi. Per ulteriori informazioni sull'etichettatura AWS DMS delle risorse, vedere. [Etichettatura delle risorse in AWS Database Migration Service](CHAP_Tagging.md) 

Di seguito sono elencati i tag standard disponibili per l'uso con AWS DMS: 
+  aws: CurrentTime — Rappresenta la data e l'ora della richiesta, permettendo la limitazione dell'accesso in base a criteri temporali. 
+  aws: EpochTime — Questo tag è simile al CurrentTime tag aws: precedente, tranne per il fatto che l'ora corrente è rappresentata come il numero di secondi trascorsi dall'epoca Unix. 
+  aws: MultiFactorAuthPresent — Questo è un tag booleano che indica se la richiesta è stata firmata o meno tramite l'autenticazione a più fattori. 
+  aws: MultiFactorAuthAge — Fornisce l'accesso all'era del token di autenticazione a più fattori (in secondi). 
+  aws:principaltype: fornisce accesso al tipo di principale (utente, account, utente federato, ecc.) per la richiesta corrente. 
+  aws: SourceIp — Rappresenta l'indirizzo IP di origine dell'utente che emette la richiesta. 
+  aws: UserAgent — Fornisce informazioni sull'applicazione client che richiede una risorsa. 
+  aws:userid: fornisce accesso all'ID dell'utente che invia la richiesta. 
+  aws:username: fornisce accesso al nome dell'utente che invia la richiesta. 
+  dms: InstanceClass — Fornisce l'accesso alle dimensioni di calcolo degli host delle istanze di replica. 
+  dms: StorageSize — Fornisce l'accesso alla dimensione del volume di archiviazione (in GB). 

Inoltre, è possibile definire tag personalizzati. I tag definiti dal cliente sono semplici coppie chiave-valore che vengono mantenute nel servizio di tagging. AWS È possibile aggiungerle alle risorse AWS DMS , incluse le istanze di replica, gli endpoint e le attività. Questi tag sono abbinati mediante istruzioni "condizionali" IAM nelle policy e vengono indicati tramite un tag condizionale specifico. Le chiavi dei tag hanno come prefisso "dms", il tipo di risorsa e il prefisso "tag". Di seguito è illustrato il formato del tag.

```
dms:{resource type}-tag/{tag key}={tag value}
```

Ad esempio, supponi di voler definire una policy che consente solo una chiamata API per un'istanza di replica che contiene il tag "stage=production". La seguente istruzione condizionale corrisponde a una risorsa con un determinato tag.

```
"Condition":
{
    "streq":
        {
            "dms:rep-tag/stage":"production"
        }
}
```

Aggiungi il tag seguente a un'istanza di replica che corrisponde alla condizione di questa policy. 

```
stage production
```

Oltre ai tag già assegnati alle AWS DMS risorse, è possibile scrivere anche politiche per limitare le chiavi e i valori dei tag che possono essere applicati a una determinata risorsa. In questo caso, il prefisso del tag è "req". 

Ad esempio, la seguente istruzione di policy limita i tag che un utente può assegnare a una determinata risorsa a un elenco specifico di valori consentiti.

```
 "Condition":
{
    "streq":
        {
            "dms:rep-tag/stage": [ "production", "development", "testing" ]
        }
}
```

I seguenti esempi di policy limitano l'accesso a una AWS DMS risorsa in base ai tag delle risorse.

La seguente policy limita l'accesso a un'istanza di replica in cui il valore di tag è "Desktop" e la chiave di tag è "Env":

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "dms:rep-tag/Env": [
                        "Desktop"
                    ]
                }
            }
        }
    ]
}
```

------

I seguenti comandi hanno esito positivo o negativo in base alla policy IAM che limita l'accesso quando il valore di tag è "Desktop" e la chiave di tag è "Env".

```
$ aws dms list-tags-for-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN 
   --endpoint-url http://localhost:8000                                   
{
    "TagList": [
        {
            "Value": "Desktop", 
            "Key": "Env"
        }
    ]
}

$ aws dms delete-replication-instance 
   --replication-instance-arn "arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN"
A client error (AccessDeniedException) occurred when calling the DeleteReplicationInstance 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:DeleteReplicationInstance on resource: arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN

$ aws dms modify-replication-instance 
   --replication-instance-arn "arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN" 

A client error (AccessDeniedException) occurred when calling the ModifyReplicationInstance 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:ModifyReplicationInstance on resource: arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN

$ aws dms add-tags-to-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN 
   --tags Key=CostCenter,Value=1234 

A client error (AccessDeniedException) occurred when calling the AddTagsToResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:AddTagsToResource on resource: arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN

$ aws dms remove-tags-from-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN 
   --tag-keys Env             

A client error (AccessDeniedException) occurred when calling the RemoveTagsFromResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:RemoveTagsFromResource on resource: arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN
```

La seguente policy limita l'accesso a un AWS DMS endpoint in cui il valore del tag è «Desktop» e la chiave del tag è «Env».

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "dms:endpoint-tag/Env": [
                        "Desktop"
                    ]
                }
            }
        }
    ]
}
```

------

I seguenti comandi hanno esito positivo o negativo in base alla policy IAM che limita l'accesso quando il valore di tag è "Desktop" e la chiave di tag è "Env".

```
$ aws dms list-tags-for-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I
{
    "TagList": [
        {
            "Value": "Desktop", 
            "Key": "Env"
        }
    ]
}

$ aws dms delete-endpoint 
   --endpoint-arn "arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I"

A client error (AccessDeniedException) occurred when calling the DeleteEndpoint 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:DeleteEndpoint on resource: arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I

$ aws dms modify-endpoint 
   --endpoint-arn "arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I"    

A client error (AccessDeniedException) occurred when calling the ModifyEndpoint 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:ModifyEndpoint on resource: arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I

$ aws dms add-tags-to-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I 
   --tags Key=CostCenter,Value=1234

A client error (AccessDeniedException) occurred when calling the AddTagsToResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:AddTagsToResource on resource: arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I

$ aws dms remove-tags-from-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I 
   --tag-keys Env

A client error (AccessDeniedException) occurred when calling the RemoveTagsFromResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:RemoveTagsFromResource on resource: arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I
```

La seguente policy limita l'accesso a un'attività di replica in cui il valore di tag è "Desktop" e la chiave di tag è "Env".

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "dms:task-tag/Env": [
                        "Desktop"
                    ]
                }
            }
        }
    ]
}
```

------

I seguenti comandi hanno esito positivo o negativo in base alla policy IAM che limita l'accesso quando il valore di tag è "Desktop" e la chiave di tag è "Env".

```
$ aws dms list-tags-for-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3
{
    "TagList": [
        {
            "Value": "Desktop", 
            "Key": "Env"
        }
    ]
}

$ aws dms delete-replication-task 
   --replication-task-arn "arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3"

A client error (AccessDeniedException) occurred when calling the DeleteReplicationTask 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:DeleteReplicationTask on resource: arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3

$ aws dms add-tags-to-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3 
   --tags Key=CostCenter,Value=1234

A client error (AccessDeniedException) occurred when calling the AddTagsToResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:AddTagsToResource on resource: arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3

$ aws dms remove-tags-from-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3 
   --tag-keys Env

A client error (AccessDeniedException) occurred when calling the RemoveTagsFromResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:RemoveTagsFromResource on resource: arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3
```

## Crittografia per migrazioni omogenee AWS DMS
<a name="CHAP_Security.Migrations"></a>

AWS DMS le migrazioni omogenee crittografano anche le risorse utilizzate per le migrazioni dei dati, incluso lo storage e altri componenti. Se non specifichi una chiave gestita dal cliente, le migrazioni AWS DMS omogenee utilizzano automaticamente una chiave AWS proprietaria per crittografare le risorse.

Quando si utilizza una chiave gestita dal cliente, le migrazioni AWS DMS omogenee creano concessioni sulla chiave per consentire al servizio di crittografare e decrittografare le risorse in base alle esigenze. Queste sovvenzioni vengono gestite automaticamente come parte del ciclo di vita della migrazione.

**Utilizzo di una chiave gestita dal cliente con migrazioni omogenee**

Per utilizzare una chiave gestita dal cliente per la migrazione omogenea, aggiungi le seguenti autorizzazioni alle autorizzazioni IAM che devi concedere all'account utente IAM per utilizzare migrazioni omogenee: AWS DMS 

```
{
    "Effect": "Allow",
    "Action": [
        "kms:CreateGrant",
        "kms:DescribeKey",
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:GenerateDataKeyWithoutPlaintext"
    ],
    "Resource": "*",
    "Condition": {
        "StringEquals": {
            "kms:ViaService": [
                "dms.us-west-2.amazonaws.com", 
                "elasticfilesystem.us-west-2.amazonaws.com"
            ]
        }
    }
}
```

DMS creerà una concessione interna per l'accesso e la gestione delle chiavi di crittografia durante il processo di migrazione. Per definire ulteriormente l' CreateGrant operazione, è possibile applicare le seguenti limitazioni alla politica relativa alle chiavi gestite dai clienti:

```
{
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::111122223333:role/ExampleRole"
  },
  "Action": "kms:CreateGrant",
  "Resource": "*",
  "Condition": {
    "ForAllValues:StringEquals": {
      "kms:GrantOperations": [
        "CreateGrant",
        "DescribeKey",
        "Encrypt",
        "Decrypt",
        "RetireGrant",
        "GenerateDataKeyWithoutPlaintext"
      ]
    },
    "StringEquals": {
      "kms:ViaService": [
            "dms.us-west-2.amazonaws.com", 
            "elasticfilesystem.us-west-2.amazonaws.com"
      ]
    }
  }
}
```

**Importante**  
Al momento non sono supportati ulteriori vincoli relativi al contesto di crittografia. L'inclusione di tali vincoli causerà il fallimento della migrazione.

## Impostazione di una chiave di crittografia e specificazione delle autorizzazioni AWS KMS
<a name="CHAP_Security.EncryptionKey"></a>

AWS DMS crittografa lo storage utilizzato da un'istanza di replica e le informazioni di connessione all'endpoint. Per crittografare lo storage utilizzato da un'istanza di replica, AWS DMS utilizza una chiave AWS Key Management Service (AWS KMS) univoca per l'account. AWS È possibile visualizzare e gestire questa chiave con. AWS KMS Puoi utilizzare la chiave KMS predefinita nel tuo account (`aws/dms`) o puoi creare una chiave KMS personalizzata. Per la crittografia, puoi anche utilizzare un'eventuale chiave KMS esistente.

**Nota**  
Qualsiasi chiave personalizzata o esistente utilizzata come AWS KMS chiave di crittografia deve essere una chiave simmetrica. AWS DMS non supporta l'uso di chiavi di crittografia asimmetriche. Per ulteriori informazioni sulle chiavi di crittografia simmetriche e asimmetriche, consulta [https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) nella *Guida per gli sviluppatori di AWS Key Management Service *.

La chiave KMS predefinita (`aws/dms`) viene creata quando avvii per la prima volta un'istanza di replica se non hai selezionato una chiave KMS personalizzata nella sezione **Avanzato** della pagina **Crea istanza di replica**. Se utilizzi la chiave KMS predefinita, le sole autorizzazioni da concedere all'account utente IAM utilizzato per la migrazione sono `kms:ListAliases` e `kms:DescribeKey`. Per ulteriori informazioni su come utilizzare la chiave KMS predefinita, consulta [Autorizzazioni IAM necessarie per l'uso AWS DMS](security-iam.md#CHAP_Security.IAMPermissions). 

Per usare una chiave KMS personalizzata, assegna le autorizzazioni per la chiave KMS personalizzata utilizzando una delle opzioni riportate di seguito:
+ Aggiungi l'account utente IAM utilizzato per la migrazione come amministratore chiave o utente chiave per la AWS KMS chiave personalizzata. Ciò assicura che le necessarie autorizzazioni AWS KMS vengano concesse all'account utente IAM. Questa operazione si aggiunge alle autorizzazioni IAM che devi concedere all'account utente IAM per l'utilizzo di AWS DMS. Per ulteriori informazioni sull'assegnazione delle autorizzazioni all'utente di una chiave, consulta [Consente agli utenti della chiave di utilizzare la chiave KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-users) nella *Guida per gli sviluppatori di AWS Key Management Service .*
+ Se non desideri aggiungere l'account utente IAM come amministratore della chiave o utente della chiave per la chiave KMS personalizzata, aggiungi le seguenti autorizzazioni aggiuntive alle autorizzazioni IAM che devi concedere all'account utente IAM per l'utilizzo di AWS DMS. 

  ```
  {
              "Effect": "Allow",
              "Action": [
                  "kms:ListAliases",
                  "kms:DescribeKey",
                  "kms:CreateGrant",
                  "kms:Encrypt",
                  "kms:ReEncrypt*"
              ],
              "Resource": "*"
          },
  ```

AWS DMS funziona anche con gli alias delle chiavi KMS. Per ulteriori informazioni sulla creazione delle chiavi AWS KMS e sull'assegnazione agli utenti dell'accesso a una chiave KMS, consulta la *[Guida per gli sviluppatori di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)*. 

Se non specifichi un identificatore di chiave KMS, AWS DMS utilizza la chiave di crittografia predefinita. AWS KMS crea la chiave di crittografia predefinita AWS DMS per il tuo AWS account. Il tuo AWS account ha una chiave di crittografia predefinita diversa per ogni AWS regione. 

Per gestire le AWS KMS chiavi utilizzate per crittografare le AWS DMS risorse, utilizza il AWS Key Management Service. AWS KMS combina hardware e software sicuri e ad alta disponibilità per fornire un sistema di gestione delle chiavi scalabile per il cloud. Utilizzando AWS KMS, è possibile creare chiavi di crittografia e definire le politiche che controllano il modo in cui tali chiavi possono essere utilizzate.

**Puoi trovare AWS KMS nel Console di gestione AWS**

1. Accedi a Console di gestione AWS e apri la console AWS Key Management Service (AWS KMS) in [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms).

1. Per modificare il Regione AWS, usa il selettore della regione nell'angolo in alto a destra della pagina.

1. Scegliete una delle seguenti opzioni per lavorare con i tasti: AWS KMS 
   + Per visualizzare le chiavi dell'account che AWS crea e gestisce per te, nel riquadro di navigazione, scegli **chiavi AWS gestite**.
   + Per visualizzare le chiavi nell'account creato e gestito dall'utente, nel riquadro di navigazione, seleziona **Chiavi gestite dal cliente**.

AWS KMS supporta AWS CloudTrail, in modo da poter controllare l'utilizzo delle chiavi per verificare che le chiavi vengano utilizzate in modo appropriato. AWS KMS Le tue chiavi possono essere utilizzate in combinazione con AWS DMS AWS servizi supportati come Amazon RDS, Amazon S3, Amazon Redshift e Amazon EBS. 

Puoi anche creare AWS KMS chiavi personalizzate specificamente per crittografare i dati di destinazione per i seguenti endpoint: AWS DMS 
+ Amazon Redshift: per ulteriori informazioni, consulta [Creazione e utilizzo di AWS KMS chiavi per crittografare i dati di destinazione di Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys).
+ Amazon S3: per ulteriori informazioni, consulta [Creazione di AWS KMS chiavi per crittografare gli oggetti di destinazione di Amazon S3](CHAP_Target.S3.md#CHAP_Target.S3.KMSKeys).

Dopo aver creato le AWS DMS risorse con una chiave KMS, non puoi modificare la chiave di crittografia per tali risorse. Assicurati di determinare i requisiti della chiave di crittografia prima di creare AWS DMS le tue risorse. 

## Sicurezza di rete per AWS Database Migration Service
<a name="CHAP_Security.Network"></a>

I requisiti di sicurezza per la rete che crei durante l'utilizzo AWS Database Migration Service dipendono da come configuri la rete. Le regole generali per la sicurezza della rete per AWS DMS sono le seguenti: 
+ L'istanza di replica deve avere accesso agli endpoint di origine e di destinazione. Il gruppo di sicurezza per l'istanza di replica deve disporre di una rete ACLs o di regole che consentano l'uscita dall'istanza dalla porta del database verso gli endpoint del database.
+ Gli endpoint del database devono includere regole di rete ACLs e di gruppo di sicurezza che consentano l'accesso in entrata dall'istanza di replica. Puoi ottenere tutto questo utilizzando il gruppo di sicurezza dell'istanza di replica, l'indirizzo IP privato, l'indirizzo IP pubblico o l'indirizzo pubblico del gateway NAT, a seconda della configurazione. 
+ Se la rete utilizza un tunnel VPN, l'istanza Amazon EC2 che agisce come gateway NAT deve utilizzare un gruppo di sicurezza con regole che consentono all'istanza di replica di inviare il traffico attraverso tale tunnel.

Per impostazione predefinita, il gruppo di sicurezza VPC utilizzato dall'istanza di AWS DMS replica dispone di regole che consentono l'uscita a 0.0.0.0/0 su tutte le porte. Se modifichi il gruppo di sicurezza o utilizzi il tuo gruppo di sicurezza, l'uscita deve quantomeno essere consentita verso gli endpoint di origine e di destinazione sulle rispettive porte del database.

Ogni configurazione di rete che puoi utilizzare per la migrazione del database richiede considerazioni di sicurezza specifiche:
+  [Configurazione con tutti i componenti di migrazione del database in un VPC](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ScenarioAllVPC): il gruppo di sicurezza utilizzato dagli endpoint deve consentire l'ingresso sulla porta del database dall'istanza di replica. Assicurati che il gruppo di sicurezza utilizzato dall'istanza di replica abbia ingresso agli endpoint; in caso contrario, puoi creare una regola nel gruppo di sicurezza utilizzato dagli endpoint, che autorizzi l'indirizzo IP privato dell'accesso all'istanza di replica. 
+  [Configurazione con più VPCs](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ScenarioVPCPeer): il gruppo di sicurezza utilizzato dall'istanza di replica deve avere una regola per l'intervallo VPC e la porta sul database. 
+  [Configurazione per una rete verso un VPC utilizzando Direct Connect o una VPN](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ScenarioDirect): un tunnel VPN che consente il tunneling del traffico dal VPC a una VPN on-premise. In questa configurazione, il VPC include una regola di routing che invia il traffico destinato a un determinato indirizzo IP o intervallo a un host che può eseguire il bridging del traffico dal VPC al VPN locale. In questo caso, l'host NAT include le proprie impostazioni del gruppo di sicurezza che devono consentire il traffico dall'indirizzo IP privato o dal gruppo di sicurezza dell'istanza di replica all'istanza NAT. 
+  [Configurazione di una rete per un VPC mediante Internet](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ScenarioInternet): il gruppo di sicurezza VPC deve includere regole di instradamento che inviano al gateway Internet il traffico non destinato al VPC. In questa configurazione, la connessione all'endpoint viene eseguita dall'indirizzo IP pubblico sull'istanza di replica. 
+  [Configurazione con un'istanza DB RDS non in un VPC su un'istanza DB in un VPC utilizzando ClassicLink](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ClassicLink)— Quando l'istanza database Amazon RDS di origine o di destinazione non si trova in un VPC e non condivide un gruppo di sicurezza con il VPC in cui si trova l'istanza di replica, è possibile configurare un server proxy e ClassicLink utilizzarlo per connettere i database di origine e di destinazione. 
+  **L'endpoint di origine si trova all'esterno del VPC utilizzato dall'istanza di replica e usa un gateway NAT**: puoi configurare un gateway Network Address Translation (NAT) utilizzando un singolo indirizzo IP elastico associato a un'unica interfaccia di rete elastica. Questa interfaccia di rete elastica, riceve quindi un identificatore NAT (nat-\$1\$1\$1\$1\$1). Se il VPC include una route predefinita a quel gateway NAT anziché al gateway Internet, l'istanza di replica viene invece visualizzata per contattare l'endpoint del database utilizzando l'indirizzo IP pubblico del gateway Internet. In questo caso, l'ingresso all'endpoint del database all'esterno del VPC deve consentire l'ingresso dall'indirizzo NAT anziché dall'indirizzo IP pubblico dell'istanza di replica. 
+ **Endpoint VPC per motori non RDBMS**: AWS DMS non supporta endpoint VPC per motori non RDBMS.

# Utilizzo di SSL con AWS Database Migration Service
<a name="CHAP_Security.SSL"></a>

È possibile crittografare le connessioni per gli endpoint di origine e di destinazione utilizzando il protocollo Secure Sockets Layer (SSL). A tale scopo, puoi utilizzare la console di AWS DMS gestione o l' AWS DMS API per assegnare un certificato a un endpoint. Puoi anche utilizzare la AWS DMS console per gestire i tuoi certificati. 

Non tutti i database utilizzano SSL allo stesso modo. L'edizione compatibile con MySQL di Amazon Aurora usa il nome del server, l'endpoint dell'istanza primaria nel cluster, come endpoint per SSL. Un endpoint Amazon Redshift utilizza già una connessione SSL e non richiede la configurazione di tale connessione da parte di AWS DMS. Un endpoint Oracle richiede altri passaggi; per ulteriori informazioni, consulta [Supporto SSL per un endpoint Oracle](CHAP_Source.Oracle.md#CHAP_Security.SSL.Oracle).

**Topics**
+ [Limitazioni all'uso di SSL con AWS DMS](#CHAP_Security.SSL.Limitations)
+ [Gestione dei certificati](#CHAP_Security.SSL.ManagingCerts)
+ [Abilitazione di SSL per un endpoint compatibile con MySQL, PostgreSQL o SQL Server](#CHAP_Security.SSL.Procedure)

Per stabilire una connessione sicura, fornisci il certificato radice o la catena di certificati CA intermedi che conduce alla radice (come pacchetto di certificati) utilizzata per firmare il certificato SSL del server sull'endpoint. I certificati vengono accettati solo come file X509 in formato PEM. Quando si importa un certificato, si riceve un Amazon Resource Name (ARN) da utilizzare per specificare quel certificato per un endpoint. Se si utilizza Amazon RDS, è possibile scaricare l'autorità di certificazione (CA) root e il bundle di certificati forniti nel file `rds-combined-ca-bundle.pem` ospitato da Amazon RDS. Per ulteriori informazioni sul download di questo file, consulta [Using SSL/TLS to encrypt a connection to a DB nella Amazon](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html) *RDS User* Guide.

È possibile scegliere tra diverse modalità SSL per l'utilizzo della verifica del certificato SSL. 
+ **Nessuno**: la connessione non è crittografata. Questa opzione non è sicura, ma richiede un overhead minore.
+ **Richiedi**: la connessione è crittografata tramite SSL (TLS) ma non viene effettuata alcuna verifica CA. Questa opzione è più sicura e richiede un overhead maggiore. 
+ **Verifica CA**: la connessione è crittografata. Questa opzione è più sicura e richiede un overhead maggiore. Questa opzione verifica il certificato del server. 
+ **Verifica completa**: la connessione è crittografata. Questa opzione è più sicura e richiede un overhead maggiore. Questa opzione verifica il certificato del server e verifica che il nome host del server corrisponda all'attributo del nome host del certificato. 

Non tutte le modalità SSL sono adatte a tutti gli endpoint del database. La tabella seguente mostra quali modalità SSL sono supportate per ogni motore di database.


|  Motore database  |  **nessuno**  |  **require**  |  **verify-ca**  |  **verify-full**  | 
| --- | --- | --- | --- | --- | 
|  MySQL/MariaDB/AmazonAurora MySQL  | Predefinita | Non supportata | Supportato | Supportata | 
|  Microsoft SQL Server  | Predefinita | Supportata | Non supportato | Supportata | 
|  PostgreSQL  | Predefinita | Supportata | Supportato | Supportata | 
|  Amazon Redshift  | Predefinita | SSL non abilitato | SSL non abilitato | SSL non abilitato | 
|  Oracle  | Predefinita | Non supportata | Supportata | Non supportato | 
|  SAP ASE  | Predefinita | SSL non abilitato | SSL non abilitato | Supportata | 
|  MongoDB  | Predefinita | Supportata | Non supportato | Supportata | 
|  Db2 LUW  | Predefinita | Non supportato | Supportata | Non supportato | 
|  Db2 per z/OS  | Predefinita | Non supportato | Supportata | Non supportato | 

**Nota**  
L'opzione Modalità SSL della console DMS o dell'API non si applica ad alcuni servizi di flusso di dati e NoSQL, come Kinesis e DynamoDB. Tali servizi sono sicuri per impostazione predefinita, quindi DMS mostra che la modalità SSL non è impostata (**Modalità SSL=Nessuno**). Per utilizzare SSL non è necessario eseguire alcuna configurazione aggiuntiva per l'endpoint. Ad esempio, l'utilizzo di Kinesis come endpoint di destinazione è sicuro per impostazione predefinita. Tutte le chiamate API a Kinesis utilizzano SSL, quindi non è necessaria un'opzione SSL aggiuntiva nell'endpoint DMS. È possibile inserire dati e recuperarli in modo sicuro tramite gli endpoint SSL utilizzando il protocollo HTTPS, usato da DMS per impostazione predefinita per la connessione a un flusso di dati Kinesis.

## Limitazioni all'uso di SSL con AWS DMS
<a name="CHAP_Security.SSL.Limitations"></a>

Di seguito sono riportate le limitazioni relative all'uso di SSL con: AWS DMS
+ Le connessioni SSL agli endpoint di destinazione di Amazon Redshift non sono supportate. AWS DMS utilizza un bucket Amazon S3 per trasferire dati al database Amazon Redshift. Questa trasmissione è crittografata da Amazon Redshift per impostazione predefinita. 
+ Possono verificarsi timeout SQL durante l'esecuzione di attività Change Data Capture (CDC) con gli endpoint Oracle abilitati per SSL. Se riscontri questo problema, per cui i contatori CDC non riflettono i numeri attesi, imposta il parametro `MinimumTransactionSize` nella sezione `ChangeProcessingTuning` delle impostazioni delle attività su un valore più basso. Puoi iniziare con un valore minimo di 100. Per ulteriori informazioni sul parametro `MinimumTransactionSize`, vedi [Impostazioni di ottimizzazione dell'elaborazione delle modifiche](CHAP_Tasks.CustomizingTasks.TaskSettings.ChangeProcessingTuning.md).
+ I certificati possono essere importati solo nei formati .pem e .sso (wallet Oracle).
+ In alcuni casi, il certificato SSL del server può essere firmato da un'autorità di certificazione intermedia (CA). In tal caso, verifica che l'intera catena di certificati che porta dalla CA intermedia fino alla CA root venga importata come un singolo file .pem.
+ Se utilizzi certificati autofirmati sul tuo server, scegli **require** come modalità SSL. La modalità SSL **require** ritiene implicitamente attendibile il certificato SSL del server e non tenta di convalidare che il certificato è stato firmato da una CA. 
+ AWS DMS non supporta la versione TLS 1.3 per MySQL MariaDb ed endpoint.

## Gestione dei certificati
<a name="CHAP_Security.SSL.ManagingCerts"></a>

Puoi utilizzare la console DMS per visualizzare e gestire i certificati SSL. La console DMS può essere utilizzata anche per importare i certificati.

![\[AWS Database Migration Service Gestione dei certificati SSL\]](http://docs.aws.amazon.com/it_it/dms/latest/userguide/images/datarep-certificatemgr.png)


## Abilitazione di SSL per un endpoint compatibile con MySQL, PostgreSQL o SQL Server
<a name="CHAP_Security.SSL.Procedure"></a>

È possibile aggiungere una connessione SSL a un endpoint appena creato o a un endpoint esistente.

**Per creare un AWS DMS endpoint con SSL**

1. [Accedi a Console di gestione AWS e apri la AWS DMS console su https://console.aws.amazon.com/dms/ v2/.](https://console.aws.amazon.com/dms/v2/) 

   Se hai effettuato l'accesso come utente AWS Identity and Access Management (IAM), assicurati di disporre delle autorizzazioni di accesso appropriate. AWS DMS Per ulteriori informazioni sulle autorizzazioni necessarie per la migrazione del database, consulta [Autorizzazioni IAM necessarie per l'uso AWS DMS](security-iam.md#CHAP_Security.IAMPermissions).

1. Nel riquadro di navigazione, scegliere **Certificates (Certificati)**.

1. Scegliere **Import Certificate (Importa certificato)**.

1. Caricare il certificato da utilizzare per la crittografia della connessione a un endpoint.
**Nota**  
Puoi anche caricare un certificato utilizzando la AWS DMS console quando crei o modifichi un endpoint selezionando **Aggiungi nuovo certificato CA** nella pagina **Crea endpoint del database**.  
Per Aurora Serverless come destinazione, ottieni il certificato indicato in Utilizzo [con TLS/SSL Aurora](https://docs.aws.amazon.com//AmazonRDS/latest/AuroraUserGuide/aurora-serverless.html#aurora-serverless.tls) Serverless.

1. Creare un endpoint come descritto in [Fase 2: specificazione degli endpoint di origine e di destinazione](CHAP_GettingStarted.Replication.md#CHAP_GettingStarted.Replication.Endpoints)

**Per modificare un endpoint esistente AWS DMS per utilizzare SSL**

1. [Accedi a Console di gestione AWS e apri la AWS DMS console alla https://console.aws.amazon.com/dms/ v2/.](https://console.aws.amazon.com/dms/v2/) 

   Se hai eseguito l'accesso come utente IAM, verifica di disporre delle autorizzazioni appropriate per accedere a AWS DMS. Per ulteriori informazioni sulle autorizzazioni necessarie per la migrazione del database, consulta [Autorizzazioni IAM necessarie per l'uso AWS DMS](security-iam.md#CHAP_Security.IAMPermissions).

1. Nel riquadro di navigazione, scegliere **Certificates (Certificati)**.

1. Scegliere **Import Certificate (Importa certificato)**.

1. Caricare il certificato da utilizzare per la crittografia della connessione a un endpoint.
**Nota**  
Puoi anche caricare un certificato utilizzando la AWS DMS console quando crei o modifichi un endpoint selezionando **Aggiungi nuovo certificato CA** nella pagina **Crea endpoint del database**.

1. Nel riquadro di navigazione, scegliere **Endpoints (Endpoint)**, selezionare l'endpoint modificare, quindi scegliere **Modify (Modifica)**.

1. Scegliere un valore per **SSL mode (Modalità SSL)**.

   Se si sceglie la modalità **verify-ca** o **verify-full**, specificare il certificato che si desidera utilizzare per **certificato emesso da una CA**, come illustrato di seguito.   
![\[AWS Database Migration Service Gestione dei certificati SSL\]](http://docs.aws.amazon.com/it_it/dms/latest/userguide/images/datarep-certificate2.png)

   

1. Scegli **Modifica**.

1. Quando l'endpoint è stato modificato, scegliere l'endpoint e scegliere **Test connection (Testa la connessione)** per verificare che la connessione SSL funzioni.

Dopo aver creato gli endpoint di origine e di destinazione, creare un'attività che utilizza questi endpoint. Per ulteriori informazioni sulla creazione di un'attività, consulta [Fase 3: creazione di un'attività e migrazione dei dati](CHAP_GettingStarted.Replication.md#CHAP_GettingStarted.Replication.Tasks). 

## Modifica della password del database
<a name="CHAP_Security.ChangingDBPassword"></a>

Nella maggior parte dei casi, la modifica della password del database per l'endpoint di origine o di destinazione è semplice. Se è necessario modificare la password del database per un endpoint che si sta attualmente utilizzando per un'attività di migrazione o replica, il processo richiede alcuni passaggi aggiuntivi. La procedura seguente descrive come farlo.

**Per modificare la password del database per un endpoint in un'attività di migrazione o replica**

1. [Accedi a Console di gestione AWS e apri la AWS DMS console alla https://console.aws.amazon.com/dms/ versione v2/.](https://console.aws.amazon.com/dms/v2/) 

   Se hai eseguito l'accesso come utente IAM, verifica di disporre delle autorizzazioni appropriate per accedere a AWS DMS. Per ulteriori informazioni sulle autorizzazioni richieste, consulta [Autorizzazioni IAM necessarie per l'uso AWS DMS](security-iam.md#CHAP_Security.IAMPermissions).

1. Dal riquadro di navigazione, scegli **Attività di migrazione del database**.

1. Scegliere l'attività che utilizza l'endpoint di cui modificare la password, quindi scegliere **Stop (Interrompi)**.

1. Mentre l'attività è interrotta, è possibile modificare la password del database dell'endpoint utilizzando gli strumenti nativi utilizzati per gestire il database.

1. Tornare alla console di gestione DMS e scegliere **Endpoints (Endpoint)** dal riquadro di navigazione.

1. Scegliere l'endpoint del database di cui è stata modificata la password, quindi scegliere **Modify (Modifica)**.

1. Digita la nuova password nel riquadro **Password**, quindi scegli **Salva**.

1. Dal riquadro di navigazione, scegli **Attività di migrazione del database**.

1. Scegli l'attività precedentemente interrotta, quindi seleziona **Riavvia/Riprendi**.

1. Scegli **Riavvia** o **Riprendi**, a seconda di come vuoi continuare l'attività, quindi seleziona **Avvia attività**.

# Utilizzo dell'autenticazione Kerberos con AWS Database Migration Service
<a name="CHAP_Security.Kerberos"></a>

A partire da DMS v3.5.3, è possibile configurare l'endpoint di origine Oracle o SQL Server per connettersi all'istanza del database utilizzando l'autenticazione Kerberos. DMS supporta l'autenticazione Directory Service Microsoft Active Directory e Kerberos. Per ulteriori informazioni sull'accesso AWS gestito a Microsoft Active Directory Services, vedere [Cos'è Directory Service?](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/what_is.html) .

## AWS DMS Panoramica dell'architettura di autenticazione Kerberos
<a name="CHAP_Security.Kerberos.architecture"></a>

Il diagramma seguente fornisce una panoramica di alto livello del flusso di lavoro di autenticazione AWS DMS Kerberos. 

![\[Architettura di autenticazione Kerberos\]](http://docs.aws.amazon.com/it_it/dms/latest/userguide/images/datarep-kerberos-architecture.jpg)


## Limitazioni all'utilizzo dell'autenticazione Kerberos con AWS DMS
<a name="CHAP_Security.Kerberos.limitations"></a>

Le seguenti limitazioni si applicano quando si utilizza l'autenticazione Kerberos con: AWS DMS
+ Le istanze di replica DMS supportano un file Kerberos e un file keycache`krb5.conf`.
+ È necessario aggiornare il file keycache Kerberos in Secrets Manager almeno 30 minuti prima della scadenza del ticket.
+ Un endpoint DMS abilitato per Kerberos funziona solo con un'istanza di replica DMS abilitata per Kerberos.

## Prerequisiti
<a name="CHAP_Security.Kerberos.prerequisites"></a>

Per iniziare, è necessario completare i seguenti prerequisiti da un host autenticato con Active Directory o Kerberos esistente: 
+ Stabilisci una relazione di fiducia in Active Directory con il tuo AD locale. Per ulteriori informazioni, vedi [Tutorial: Creare una relazione di trust tra il tuo Microsoft AD AWS gestito e il tuo dominio Active Directory autogestito](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_tutorial_setup_trust.html).
+ Prepara una versione semplificata del file di configurazione Kerberos`krb5.conf`. Includi informazioni sul realm, sulla posizione dei server di amministrazione del dominio e sulla mappatura dei nomi host su un realm Kerberos. È necessario verificare che il `krb5.conf` contenuto sia formattato con l'involucro misto corretto per i nomi dei realm e dei nomi di dominio. Esempio:

  ```
  [libdefaults] 
   dns_lookup_realm = true 
   dns_lookup_kdc = true 
   forwardable = true 
   default_realm = MYDOMAIN.ORG 
  [realms] 
  MYDOMAIN.ORG = { 
  kdc = mydomain.org 
  admin_server = mydomain.org 
  } 
  [domain_realm] 
  .mydomain.org = MYDOMAIN.ORG 
  mydomain.org = MYDOMAIN.ORG
  ```
+ Preparare un file keycache Kerberos. Il file contiene una credenziale Kerberos temporanea contenente le informazioni principali del client. Il file non memorizza la password del client. L'attività DMS utilizza queste informazioni del ticket di cache per ottenere credenziali aggiuntive senza password. Esegui i passaggi seguenti su un host esistente con Active Directory o Kerberos per generare un file keycache. 
  + Crea un file keytab Kerberos. **È possibile generare un file keytab utilizzando l'utilità **kutil** o ktpass.** 

    Per ulteriori informazioni sull'utilità Microsoft **ktpass**, vedere [ktpass nella documentazione](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/ktpass) di *Windows Server*. 

    *Per ulteriori informazioni sull'utilità MIT **kutil, vedere [kutil](https://web.mit.edu/kerberos/krb5-1.12/doc/admin/admin_commands/ktutil.html)** nella documentazione MIT Kerberos.*
  + **Crea un file keycache Kerberos dal file keytab usando l'utilità kinit.** *Per ulteriori informazioni sull'utilità kinit, consulta **[kinit](https://web.mit.edu/kerberos/krb5-1.12/doc/user/user_commands/kinit.html)** nella documentazione MIT Kerberos.*
+ Memorizzate il file keycache Kerberos in Secrets Manager utilizzando il parametro. `SecretBinary` Quando caricate il file keycache su Secrets Manager, DMS lo recupera e quindi aggiorna il file della cache locale ogni 30 minuti circa. Quando il file keycache locale supera il timestamp di scadenza predefinito, DMS interrompe correttamente l'operazione. Per evitare errori di autenticazione durante un'attività di replica in corso, aggiorna il file keycache in Secrets Manager almeno 30 minuti prima della scadenza del ticket. Per ulteriori informazioni, consulta [createsecret](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html) nella Guida di riferimento all'*API Secrets Manager*. L' AWS CLI esempio seguente mostra come archiviare il file keycache in formato binario in Secrets Manager:

  ```
  aws secretsmanager create-secret —name keycache —secret-binary fileb://keycachefile
  ```
+ Concedi a un ruolo IAM `GetSecretValue` e le `DescribeSecret` autorizzazioni per ottenere il file keycache da Secrets Manager. Assicurati che il ruolo IAM includa la policy di `dms-vpc-role` fiducia. Per ulteriori informazioni sulla politica di `dms-vpc-role` fiducia, consulta[Creazione dei ruoli IAM da utilizzare con AWS DMS](security-iam.md#CHAP_Security.APIRole).

L'esempio seguente mostra una politica di ruolo IAM con Secrets Manager `GetSecretValue` e `DescribeSecret` autorizzazioni. Il *<keycache\$1secretsmanager\$1arn>* valore è l'ARN di Keycache Secrets Manager creato nel passaggio precedente.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "secretsmanager:GetSecretValue",
        "secretsmanager:DescribeSecret"
      ],
      "Resource": "*"
    }
  ]
}
```

------

## Abilitazione del supporto Kerberos su un'istanza di replica DMS AWS
<a name="CHAP_Security.Kerberos.enable.instance"></a>

I realm Kerberos sono identici ai domini di Windows. Per risolvere un dominio principale, Kerberos si affida a un Domain Name Service (DNS). Quando imposti il `dns-name-servers` parametro, l'istanza di replica utilizzerà il set personalizzato predefinito di server DNS per risolvere i realm di dominio Kerberos. Un'altra opzione alternativa per risolvere le query Kerberos realm consiste nel configurare Amazon Route 53 sul cloud privato virtuale (VPC) dell'istanza di replica. [Per ulteriori informazioni, consulta Route 53.](https://docs.aws.amazon.com/route53/) 

### Abilitazione del supporto Kerberos su un'istanza di replica DMS utilizzando Console di gestione AWS
<a name="CHAP_Security.Kerberos.enable.instance.console"></a>

**Per abilitare il supporto Kerberos tramite la console, inserisci le seguenti informazioni nella sezione di **autenticazione Kerberos della pagina **Crea** istanza di replica o Modifica** istanza di replica:**
+ `krb5.conf`Il contenuto del tuo file
+ L'ARN del segreto di Secrets Manager che contiene il file keycache
+ L'ARN del ruolo IAM che ha accesso all'ARN del gestore segreto e le autorizzazioni per recuperare il file keycache

### Abilitazione del supporto Kerberos su un'istanza di replica DMS utilizzando AWS CLI
<a name="CHAP_Security.Kerberos.enable.instance.cli"></a>

La seguente chiamata di AWS CLI esempio crea un'istanza di replica DMS privata con supporto Kerberos. L'istanza di replica utilizza un DNS personalizzato per risolvere il realm Kerberos. Per ulteriori informazioni, consulta [create-replication-instance](https://docs.aws.amazon.com/cli/latest/reference/dms/create-replication-instance.html).

```
aws dms create-replication-instance 
--replication-instance-identifier my-replication-instance 
--replication-instance-class dms.t2.micro 
--allocated-storage 50 
--vpc-security-group-ids sg-12345678 
--engine-version 3.5.4 
--no-auto-minor-version-upgrade 
--kerberos-authentication-settings'{"KeyCacheSecretId":<secret-id>,"KeyCacheSecretIamArn":<secret-iam-role-arn>,"Krb5FileContents":<krb5.conf file contents>}'
--dns-name-servers <custom dns server>
--no-publicly-accessible
```

## Abilitazione del supporto Kerberos su un endpoint di origine
<a name="CHAP_Security.Kerberos.enable.endpoint"></a>

Prima di abilitare l'autenticazione Kerberos su un endpoint di origine DMS Oracle o SQL Server, assicurati di poter autenticarti sul database di origine utilizzando il protocollo Kerberos da un computer client. Puoi utilizzare l'AMI di AWS DMS diagnostica per avviare un'istanza Amazon EC2 sullo stesso VPC dell'istanza di replica e quindi testare l'autenticazione Kerberos. Per ulteriori informazioni sull'AMI, vedere[Utilizzo dell'AMI di supporto AWS DMS diagnostico](CHAP_SupportAmi.md).

### Utilizzo della console AWS DMS
<a name="CHAP_Security.Kerberos.enable.endpoint.console"></a>

In **Accesso al database degli endpoint**, scegli l'autenticazione **Kerberos**. 

### Usando il AWS CLI
<a name="CHAP_Security.Kerberos.enable.endpoint.cli"></a>

Specificate il parametro di impostazione dell'endpoint e impostate `AuthenticationMethod` l'opzione come kerberos. Esempio:

**Oracle**

```
aws dms create-endpoint 
--endpoint-identifier my-endpoint 
--endpoint-type source 
--engine-name oracle 
--username dmsuser@MYDOMAIN.ORG 
--server-name mydatabaseserver 
--port 1521 
--database-name mydatabase  
--oracle-settings "{\"AuthenticationMethod\": \"kerberos\"}"
```

**SQL Server**

```
aws dms create-endpoint 
--endpoint-identifier my-endpoint 
--endpoint-type source 
--engine-name sqlserver 
--username dmsuser@MYDOMAIN.ORG 
--server-name mydatabaseserver 
--port 1433
--database-name mydatabase  
--microsoft-sql-server-settings "{\"AuthenticationMethod\": \"kerberos\"}"
```

## Test di un endpoint di origine
<a name="CHAP_Security.Kerberos.test"></a>

È necessario testare l'endpoint abilitato per Kerberos rispetto a un'istanza di replica abilitata per Kerberos. Se non si configura correttamente l'istanza di replica o l'endpoint di origine per l'autenticazione Kerberos, l'azione dell'endpoint avrà esito negativo e potrebbe restituire errori relativi a Kerberos. `test-connection` Per [ulteriori informazioni, consulta](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/dms/test-connection.html) test-connection.