View a markdown version of this page

Amazon ECS CodeDeploy Ruolo IAM - Amazon Elastic Container Service

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

Amazon ECS CodeDeploy Ruolo IAM

Prima di poter utilizzare CodeDeploy blue/green tipo di distribuzione con Amazon ECS, CodeDeploy il servizio necessita delle autorizzazioni per aggiornare il servizio Amazon ECS per tuo conto. Queste autorizzazioni sono fornite da CodeDeploy Ruolo IAM (ecsCodeDeployRole).

Nota

Gli utenti richiedono inoltre le autorizzazioni per l'utilizzo CodeDeploy; queste autorizzazioni sono descritte in Autorizzazioni IAM richieste.

Sono disponibili due policy gestite. Per ulteriori informazioni, consulta una delle seguenti voci nella Guida di riferimento alle policy gestite da AWS :

Creando il CodeDeploy ruolo

È possibile utilizzare le seguenti procedure per creare un CodeDeploy ruolo per Amazon ECS

Console di gestione AWS
Per creare il ruolo di servizio per CodeDeploy (console IAM)
  1. Accedere al Console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione della console IAM, scegliere Ruoli e quindi Crea ruolo.

  3. Per Tipo di entità attendibile, seleziona Servizio AWS.

  4. Per Servizio o caso d'uso, scegli CodeDeploy, quindi scegli CodeDeploy - ECS caso d'uso.

  5. Scegli Avanti.

  6. Nel Allega la politica delle autorizzazioni sezione, assicurati che AWSCodeDeployRoleForECS la politica è selezionata.

  7. Scegli Avanti.

  8. Per Nome del ruolo, inserisci ecsCodeDeployRole.

  9. Verificare il ruolo e quindi scegliere Create role (Crea ruolo).

AWS CLI

Sostituisci tutto user input con le tue informazioni.

  1. Crea un file denominato codedeploy-trust-policy.json che contiene la politica di fiducia da utilizzare per CodeDeploy Ruolo IAM.

    JSON
    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": ["codedeploy.amazonaws.com"] }, "Action": "sts:AssumeRole" } ] }
  2. Crea un ruolo IAM denominato ecsCodedeployRole utilizzando la policy di attendibilità creata nel passaggio precedente.

    aws iam create-role \ --role-name ecsCodedeployRole \ --assume-role-policy-document file://codedeploy-trust-policy.json
  3. Collega la policy gestita da AWSCodeDeployRoleForECS o da AWSCodeDeployRoleForECSLimited al ruolo ecsTaskRole.

    aws iam attach-role-policy \ --role-name ecsCodedeployRole \ --policy-arn arn:aws:iam::aws:policy/AWSCodeDeployRoleForECS
    aws iam attach-role-policy \ --role-name ecsCodedeployRole \ --policy-arn arn:aws:iam::aws:policy/AWSCodeDeployRoleForECSLimited

Quando le attività del servizio richiedono un ruolo di esecuzione delle attività, è necessario aggiungere il iam:PassRole l'autorizzazione per ogni ruolo di esecuzione dell'attività o ruolo dell'attività viene sostituita da CodeDeploy ruolo come politica.

Autorizzazioni del ruolo di esecuzione dell'attività

Quando le attività del servizio richiedono un ruolo di esecuzione delle attività, è necessario aggiungere iam:PassRole l'autorizzazione per ogni ruolo di esecuzione dell'attività o ruolo dell'attività viene sostituita da CodeDeploy ruolo come politica. Per ulteriori informazioni, consulta Ruolo IAM di esecuzione di attività Amazon ECS e Ruolo IAM dell'attività Amazon ECS. Quindi, alleghi quella politica al CodeDeploy ruolo

Creare la policy

Console di gestione AWS
Come utilizzare l'editor di policy JSON per creare una policy
  1. Accedere al Console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel riquadro di navigazione a sinistra, seleziona Policies (Policy).

    Se è la prima volta che selezioni Policy, verrà visualizzata la pagina Benvenuto nelle policy gestite. Seleziona Inizia.

  3. Nella parte superiore della pagina, scegli Crea policy.

  4. Nella sezione Editor di policy, scegli l'opzione JSON.

  5. Inserisci il documento di policy JSON seguente:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["arn:aws:iam::<aws_account_id>:role/<ecsCodeDeployRole>"] } ] }
  6. Scegli Avanti.

    Nota

    È possibile alternare le opzioni dell'editor Visivo e JSON in qualsiasi momento. Se tuttavia si apportano modifiche o si seleziona Successivo nell'editor Visivo, IAM potrebbe ristrutturare la policy in modo da ottimizzarla per l'editor visivo. Per ulteriori informazioni, consulta Modifica della struttura delle policy nella Guida per l'utente di IAM.

  7. Nella pagina Rivedi e crea, inserisci un valore in Nome policy e Descrizione (facoltativo) per la policy in fase di creazione. Rivedi Autorizzazioni definite in questa policy per visualizzare le autorizzazioni concesse dalla policy.

  8. Seleziona Crea policy per salvare la nuova policy.

Dopo aver creato il criterio, allegare il criterio al CodeDeploy ruolo. Per informazioni su come associare la policy al ruolo, consulta Aggiorna autorizzazioni per un ruolo nella Guida per l'utente di AWS Identity and Access Management

AWS CLI

Sostituisci tutto user input con le tue informazioni.

  1. Crea un file denominato blue-green-iam-passrole.json, con il seguente contenuto:

    JSON
    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["arn:aws:iam::*:role/code-deploy-role"], "Condition": { "StringEquals": {"iam:PassedToService": "ecs.amazonaws.com"} } } ] }
  2. Usa il seguente comando per creare la policy IAM utilizzando il file del documento della policy JSON.

    aws iam create-policy \ --policy-name cdTaskExecutionPolicy \ --policy-document file://blue-green-iam-passrole.json
  3. Recupera l'ARN della policy IAM che hai creato usando il seguente comando.

    aws iam list-policies --scope Local --query 'Policies[?PolicyName==`cdTaskExecutionPolicy`].Arn'
  4. Utilizzate il seguente comando per allegare la policy al CodeDeploy Ruolo IAM.

    aws iam attach-role-policy \ --role-name ecsCodedeployRole \ --policy-arn arn:aws:iam:111122223333:aws:policy/cdTaskExecutionPolicy