View a markdown version of this page

Cross-account accesso con policy basate sulle risorse in DynamoDB - Amazon DynamoDB

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

Cross-account accesso con policy basate sulle risorse in DynamoDB

Utilizzando una policy basata su risorse, è possibile fornire l’accesso multi-account a risorse disponibili in diversi Account AWS. Tutti gli accessi tra account consentiti dalle policy basate sulle risorse verranno segnalati tramite i risultati di accesso esterni di IAM Access Analyzer se nella stessa risorsa è presente un analizzatore. Regione AWS IAM Access Analyzer esegue controlli sulle policy per convalidare le policy rispetto alla grammatica delle policy IAM e alle best practice. Questi controlli generano risultati e forniscono raccomandazioni attuabili per aiutarti a creare policy funzionali e conformi alle best practice di sicurezza. È possibile visualizzare i risultati attivi dello strumento di analisi degli accessi IAM nella scheda Autorizzazioni della console DynamoDB.

Per ulteriori informazioni sulla convalida delle policy tramite lo strumento di analisi degli accessi IAM, consulta Convalida delle policy di Sistema di analisi degli accessi AWS IAM nella Guida per l’utente di IAM. Per visualizzare un elenco delle avvertenze, degli errori e dei suggerimenti restituiti da IAM Access Analyzer, consulta il Riferimento al controllo delle policy di IAM Access Analyzer.

Per concedere GetItem l'autorizzazione a un utente A nell'account A per accedere a una tabella B nell'account B, procedi nel seguente modo:

  1. Collega alla tabella B una policy basata su risorse che conceda l’autorizzazione all’utente A per eseguire l’azione GetItem.

  2. Collega una policy basata sull’identità all’utente A che gli conceda l’autorizzazione per eseguire l’azione GetItem sulla tabella B.

Utilizzando l’opzione Anteprima dell’accesso esterno disponibile nella console DynamoDB, è possibile visualizzare in anteprima in che modo la nuova policy influisce sull’accesso pubblico e multi-account alla risorsa. Prima di salvare la policy, puoi verificare se introduce nuovi risultati di IAM Access Analyzer o risolve i risultati esistenti. Se non è presente uno strumento di analisi attivo, scegli Go to Access Analyzer (Passa a strumento analisi accessi) per creare uno strumento di analisi degli account in IAM Access Analyzer. Per ulteriori informazioni, consulta Preview access.

Il parametro relativo al nome della tabella nelle API del piano dati e del piano di controllo (control-plane) di DynamoDB accetta il nome della risorsa Amazon (ARN) completo della tabella per supportare le operazioni multi-account. Se si fornisce solo il parametro relativo al nome della tabella anziché un ARN completo, l’operazione API verrà eseguita sulla tabella dell’account a cui appartiene il richiedente. Per un esempio di una policy che utilizza l’accesso multi-account, consulta Resource-based politica per l'accesso tra account.

L’account del proprietario della risorsa subirà un addebito anche quando un principale di un altro account sta leggendo o scrivendo sulla tabella DynamoDB nell’account del proprietario. Se la tabella ha una velocità effettiva prevista, la somma di tutte le richieste provenienti dagli account proprietari e dai richiedenti degli altri account determinerà se la richiesta verrà limitata (se la scalabilità automatica è disattivata) o ridimensionata se la scalabilità automatica è abilitata. up/down

Le richieste verranno registrate nei CloudTrail registri degli account del proprietario e del richiedente in modo che ciascuno dei due account possa tenere traccia dell'account che ha effettuato l'accesso a determinati dati.

Condividi l'accesso con più account AWS Funzioni Lambda

Funzioni Lambda nell'account A

  1. Vai alla console IAM per creare un ruolo IAM che verrà utilizzato come ruolo di esecuzione Lambda per la tua funzione Lambda nell'account A. Aggiungi la policy IAM gestita AWSLambdaDynamoDBExecutionRole che dispone delle autorizzazioni di chiamata DynamoDB Streams e AWS Lambda richieste. Questa policy garantisce inoltre l'accesso a tutte le potenziali risorse DynamoDB Streams a cui potresti avere accesso nell'account A.

  2. Nella console Lambda, crea una funzione AWS Lambda per elaborare i record in uno stream DynamoDB e durante la configurazione del ruolo di esecuzione, scegli il ruolo che hai creato nel passaggio precedente.

  3. Fornisci il ruolo di esecuzione della funzione Lambda al proprietario dell'account B di DynamoDB Streams per configurare la policy basata sulle risorse per l'accesso in lettura tra account.

  4. Completa la configurazione della funzione Lambda.

DynamoDB Stream nell'account B

  1. Ottieni il ruolo di esecuzione Lambda su più account dall'account A che richiamerà la funzione Lambda.

  2. Nella console Amazon DynamoDB nell'account B, scegli la tabella per il trigger tra account Lambda. Nella scheda Esportazioni e stream, individua l'ARN del tuo stream DynamoDB. Assicurati che lo stato di DynamoDB Stream sia Attivo e annota l'ARN completo dello stream in quanto ti servirà per la policy delle risorse.

  3. Nella scheda Autorizzazioni, fai clic sul pulsante Crea policy di streaming per avviare l'editor visuale delle policy. Fai clic sul pulsante Aggiungi nuova dichiarazione o modifica la policy se ne esiste già una.

  4. Crea una policy che specifichi il ruolo di esecuzione di Lambda nell'account A come principale e concedi le azioni DynamoDB Streams richieste. Assicurati di includere le azioni,, e. dynamodb:DescribeStream dynamodb:GetRecords dynamodb:GetShardIterator Per ulteriori informazioni sugli esempi di policy relative alle risorse per DynamoDB Streams, consulta Esempi di policy basate sulle risorse di DynamoDB.

Nota

L’accesso multi-account delle API del piano di controllo (control-plane) prevede un limite inferiore di transazioni al secondo (TPS, Transactions Per Second) di 500 richieste.