Come posso richiamare una funzione Lambda tramite un flusso Kinesis multi-account?

3 minuti di lettura
0

Desidero richiamare una funzione AWS Lambda tramite un flusso Amazon Kinesis presente in un altro account AWS.

Soluzione

Il flusso di dati Amazon Kinesis supporta policy basate sulle risorse. Ciò consente di elaborare i dati inseriti in un flusso in un account con una funzione AWS Lambda in un altro account.

Attieniti ai seguenti passaggi per creare la funzione Lambda e configurarla per accedere al tuo flusso di dati Kinesis.

Crea un ruolo di esecuzione Lambda

  1. Accedi alla console IAM e scegli la scheda Ruoli.
  2. Scegli Crea ruolo.
  3. Per Servizio AWS, scegli Tipo di entità attendibile. Per Servizio, scegli Lambda.
  4. Nella tabella Policy di autorizzazione, seleziona la policy IAM gestita AWSLambdaKinesisExecutionRole.
  5. Fornisci un nome per il ruolo e scegli Crea ruolo.

Nota: la policy IAM gestita AWSLambdaKinesisExecutionRole dispone delle autorizzazioni di invocazione del flusso di dati Kinesis e Lambda richieste. Consente inoltre l'accesso a tutte le potenziali risorse del flusso di dati Kinesis a cui è possibile avere accesso.

Crea la funzione Lambda

Crea una funzione AWS Lambda in grado di elaborare i record in un flusso di dati Amazon Kinesis.

Per Ruolo di esecuzione, scegli il ruolo che hai creato.

Nota: questa policy dispone delle autorizzazioni di invocazione del flusso di dati Kinesis e Lambda richieste. Consente inoltre l'accesso a tutte le potenziali risorse Flusso di dati Kinesis a cui è possibile accedere.
Aggiungi il ruolo di esecuzione al proprietario della risorsa Flusso di dati Kinesis per configurare la policy delle risorse.

Configurazione del flusso di dati Kinesis

  1. Accedi alla console Flusso di dati Amazon Kinesis, quindi scegli il tuo flusso di dati.
  2. Scegli la scheda Condivisione del flusso di dati.
  3. Scegli il pulsante Crea policy per avviare l'editor visuale delle policy.
  4. Scegli l’utente nella scheda Fan-out avanzato per condividere un utente registrato all'interno di un flusso di dati.
  5. Scegli Crea policy. È possibile anche scrivere direttamente la policy JSON.
  6. Per Principale, inserisci il ruolo di esecuzione Lambda multi-account che hai creato. Assicurati di includere l'azione kinesis:DescribeStream.
    Per ulteriori informazioni sugli esempi di policy relative alle risorse per Flusso di dati Kinesis, consulta la sezione Example resource-based policies for Kinesis Data Streams.
  7. Scegli Crea policy. In alternativa, usa PutResourcePolicy per allegare la policy alla tua risorsa.

Se utilizzi la crittografia lato server con una chiave gestita da AWS e desideri condividere l'accesso tramite una policy delle risorse, è necessario utilizzare una chiave gestita dal cliente (chiave AWS KMS). Per ulteriori informazioni, consulta la sezione What is server-side Encryption for Kinesis Data Streams?Inoltre, devi consentire alle entità principali di condivisione di accedere alla tua chiave KMS tramite l'accesso multi-account KMS. Per ulteriori informazioni, consulta Allowing users in other accounts to use a KMS key.

AWS UFFICIALE
AWS UFFICIALEAggiornata 8 mesi fa