Creazione di un IAM ruolo per la macchina a stati in Step Functions - AWS Step Functions

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

Creazione di un IAM ruolo per la macchina a stati in Step Functions

AWS Step Functions può eseguire codice e accedere AWS risorse (come invocare un AWS Lambda funzione). Per mantenere la sicurezza, è necessario concedere a Step Functions l'accesso a tali risorse utilizzando un IAM ruolo.

I Tutorial per imparare Step Functions contenuti di questa guida consentono di sfruttare IAM i ruoli generati automaticamente validi per AWS Regione in cui si crea la macchina a stati. Tuttavia, è possibile creare il proprio IAM ruolo per una macchina a stati.

Quando si crea una IAM politica da utilizzare per le macchine a stati, la politica deve includere le autorizzazioni che si desidera vengano concesse alle macchine a stati. È possibile utilizzare un file esistente AWS una politica gestita come esempio oppure puoi creare una politica personalizzata partendo da zero che soddisfi le tue esigenze specifiche. Per ulteriori informazioni, vedere Creazione IAM di politiche nella Guida IAM per l'utente

Per creare il tuo IAM ruolo per una macchina a stati, segui i passaggi in questa sezione.

In questo esempio, crei un IAM ruolo con il permesso di richiamare una funzione Lambda.

Creare un ruolo per Step Functions

  1. Accedi alla IAMconsole, quindi scegli Ruoli, Crea ruolo.

  2. Nella pagina Seleziona entità attendibile, sotto AWS servizio, seleziona Step Functions dall'elenco, quindi scegli Avanti: Autorizzazioni.

  3. Nella pagina Attached permissions policy (Policy autorizzazioni collegate) scegliere Next: Review (Successivo: Esamina).

  4. Nella pagina Review (Esamina), immettere StepFunctionsLambdaRole in Role Name (Nome ruolo), quindi scegliere Create role (Crea ruolo).

    Il IAM ruolo viene visualizzato nell'elenco dei ruoli.

Per ulteriori informazioni su IAM autorizzazioni e politiche, vedere Gestione degli accessi nella Guida per l'IAMutente.

Evita la confusione tra i vari servizi

Con "confused deputy" si intende un problema di sicurezza in cui un'entità che non dispone dell'autorizzazione per eseguire una certa operazione può costringere un'entità con più privilegi a eseguire tale operazione. In AWS, l'impersonificazione tra diversi servizi può portare alla confusione del problema del vicesceriffo. La rappresentazione tra servizi può verificarsi quando un servizio (il servizio chiamante) effettua una chiamata a un altro servizio (il servizio chiamato). Questo tipo di impersonificazione può avvenire tra diversi account e tra diversi servizi. 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 la confusione dei deputati, AWS fornisce strumenti che vi aiutano a proteggere i vostri dati per tutti i servizi con responsabili del servizio a cui è stato dato accesso alle risorse del vostro account. Questa sezione si concentra sulla prevenzione intersettoriale dei deputati confusi, specifica per AWS Step Functions; tuttavia, è possibile trovare ulteriori informazioni su questo argomento nella sezione dedicata ai problemi dei deputati confusi della Guida per l'IAMutente.

Si consiglia di utilizzare le chiavi di contesto aws:SourceArne di condizione aws:SourceAccountglobale nelle politiche delle risorse per limitare le autorizzazioni Step Functions offre un altro servizio per accedere alle tue risorse. Utilizza aws:SourceArn se desideri consentire l'associazione di una sola risorsa all'accesso tra servizi. Utilizza aws:SourceAccount se desideri consentire l'associazione di qualsiasi risorsa in tale account all'uso tra servizi.

Il modo più efficace per proteggersi dal confuso problema del vicesceriffo consiste nell'utilizzare la chiave del contesto ARN della condizione aws:SourceArn globale con tutte le risorse a disposizione. Se non conosci la dimensione completa ARN della risorsa o se stai specificando più risorse, usa la chiave aws:SourceArn global context condition con caratteri jolly (*) per le parti sconosciute di. ARN Ad esempio arn:aws:states:*:111122223333:*.

Ecco un esempio di policy affidabile che mostra come utilizzare aws:SourceArn e aws:SourceAccount con Step Functions per prevenire la confusa questione del vice.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":[ "states.amazonaws.com" ] }, "Action":"sts:AssumeRole", "Condition":{ "ArnLike":{ "aws:SourceArn":"arn:aws:states:us-east-1:111122223333:stateMachine:*" }, "StringEquals":{ "aws:SourceAccount":"111122223333" } } } ] }

Collegamento di una policy inline

Step Functions può controllare altri servizi direttamente in uno Task stato. Allega policy in linea per consentire a Step Functions di accedere alle API azioni dei servizi che devi controllare.

  1. Apri la IAMconsole, scegli Ruoli, cerca il tuo ruolo Step Functions e seleziona quel ruolo.

  2. Selezionare Add inline policy (Aggiungi policy inline).

  3. Usa l'editor visivo o la JSONscheda per creare politiche per il tuo ruolo.

Per ulteriori informazioni su come AWS Step Functions può controllarne altri AWS servizi, vediIntegrazione dei servizi con Step Functions.

Nota

Per esempi di IAM policy create dalla console Step Functions, vedereIn che modo Step Functions genera IAM politiche per servizi integrati.