Esempi di policy di AWS CodeDeploy basate su identità - AWS CodeDeploy

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

Esempi di policy di AWS CodeDeploy basate su identità

Per impostazione predefinita, gli utenti non sono autorizzati a creare o modificare CodeDeploy risorse. Inoltre, non possono eseguire attività utilizzando l' AWS API AWS Management Console AWS CLI, o. È necessario creare policy IAM che concedano ai ruoli IAM l'autorizzazione a eseguire operazioni API sulle risorse specificate di cui hanno bisogno. È quindi necessario collegare tali ruoli IAM a utenti o gruppi 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 nella Guida per l'utente IAM.

Nel CodeDeploy, le politiche basate sull'identità vengono utilizzate per gestire le autorizzazioni alle varie risorse relative al processo di distribuzione. È possibile controllare l'accesso a tutti i seguenti tipi di risorse:

  • Applicazioni e revisioni dell'applicazione.

  • Distribuzioni.

  • Configurazioni delle distribuzioni.

  • Istanze e istanze locali.

Le funzionalità controllate dalle policy delle risorse variano a seconda del tipo di risorsa, come illustrato nella seguente tabella:

Tipi di risorsa

Funzionalità

Tutti

Aprire ed elencare i dettagli sulle risorse

Applicazioni

Configurazioni della distribuzione

Gruppi di distribuzione

Creare risorse

Delete resources (Elimina risorse)

Distribuzioni

Creare distribuzione

Arrestare distribuzione

Revisioni dell'applicazione​

Registrare le revisioni dell'applicazione

Applicazioni

Gruppi di distribuzione

Aggiornare le risorse

Istanze locali

Aggiungere tag alle istanze

Rimuovere tag dalle istanze

Registrare istanze

Annullare registrazione delle istanze

Il seguente esempio mostra una policy di autorizzazioni che consente a un utente di eliminare il gruppo di distribuzione denominato WordPress_DepGroup associato con l'applicazione denominata WordPress_App nella regione us-west-2.

{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "codedeploy:DeleteDeploymentGroup" ], "Resource" : [ "arn:aws:codedeploy:us-west-2:444455556666:deploymentgroup:WordPress_App/WordPress_DepGroup" ] } ] }

Esempi di policy gestite dal cliente

In questa sezione, puoi trovare esempi di politiche che concedono autorizzazioni per varie azioni. CodeDeploy Queste politiche funzionano quando utilizzi l' CodeDeploy API, gli AWS SDK o il. AWS CLIÈ necessario concedere autorizzazioni aggiuntive per le operazioni eseguite nella console. Per ulteriori informazioni sulla concessione delle autorizzazioni della console, consultare Utilizzo della console di CodeDeploy.

Nota

Tutti gli esempi utilizzano la regione Stati Uniti occidentali (Oregon) (us-west-2) e contengono ID account fittizi.

Examples (Esempi)

Esempio 1: consenti l'autorizzazione a eseguire CodeDeploy operazioni in una singola regione

L'esempio seguente concede le autorizzazioni per eseguire CodeDeploy operazioni solo nella us-west-2 regione:

{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "codedeploy:*" ], "Resource" : [ "arn:aws:codedeploy:us-west-2:444455556666:*" ] } ] }

Esempio 2: consenti l'autorizzazione a registrare le revisioni per una singola applicazione

Nell'esempio seguente vengono concesse autorizzazioni per registrare le revisioni dell'applicazione per tutte le applicazioni che iniziano con Test nella regione us-west-2:

{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "codedeploy:RegisterApplicationRevision" ], "Resource" : [ "arn:aws:codedeploy:us-west-2:444455556666:application:Test*" ] } ] }

Esempio 3: consentire l'autorizzazione a creare distribuzioni per un singolo gruppo di distribuzione

L'esempio seguente consente l'autorizzazione a creare distribuzioni per il gruppo di distribuzione denominato WordPress_DepGroup associato all'applicazione denominataWordPress_App, la configurazione di distribuzione personalizzata denominata ThreeQuartersHealthy e qualsiasi revisione dell'applicazione associata all'applicazione denominata. WordPress_App Tutte queste risorse sono nella regione us-west-2.

{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "codedeploy:CreateDeployment" ], "Resource" : [ "arn:aws:codedeploy:us-west-2:444455556666:deploymentgroup:WordPress_App/WordPress_DepGroup" ] }, { "Effect" : "Allow", "Action" : [ "codedeploy:GetDeploymentConfig" ], "Resource" : [ "arn:aws:codedeploy:us-west-2:444455556666:deploymentconfig:ThreeQuartersHealthy" ] }, { "Effect" : "Allow", "Action" : [ "codedeploy:GetApplicationRevision" ], "Resource" : [ "arn:aws:codedeploy:us-west-2:444455556666:application:WordPress_App" ] } ] }

Best practice per le policy

Le politiche basate sull'identità determinano se qualcuno può creare, accedere o eliminare risorse nel tuo account. CodeDeploy Queste azioni possono comportare costi aggiuntivi per l' Account AWS. Quando crei o modifichi policy basate su identità, segui 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 ulteriori informazioni, consulta Policy gestite da AWSo Policy gestite da AWS per le funzioni dei processi nella Guida per l'utente IAM.

  • Applica le autorizzazioni con privilegio minimo: quando imposti le autorizzazioni con le policy IAM, concedi solo le autorizzazioni richieste per eseguire un'attività. Puoi farlo definendo le azioni che possono essere intraprese su risorse specifiche in condizioni specifiche, note anche come autorizzazioni con privilegi minimi. Per ulteriori informazioni sull'utilizzo di IAM per applicare le autorizzazioni, consulta Policy e autorizzazioni in IAM nella Guida per l'utente IAM.

  • Condizioni d'uso nelle policy IAM per limitare ulteriormente l'accesso: per limitare l'accesso a operazioni e risorse puoi aggiungere una condizione alle tue 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 AWS CloudFormation. Per ulteriori informazioni, consulta la sezione Elementi delle policy JSON di IAM: condizione nella Guida per l'utente IAM.

  • Utilizzo di IAM Access Analyzer per convalidare le policy IAM e garantire autorizzazioni sicure e funzionali: IAM Access Analyzer convalida le policy nuove ed esistenti in modo che aderiscano alla sintassi della policy IAM (JSON) e alle best practice di IAM. IAM Access Analyzer offre oltre 100 controlli delle policy e consigli utili per creare policy sicure e funzionali. Per ulteriori informazioni, consulta Convalida delle policy per IAM Access Analyzer nella Guida per l'utente 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, aggiungi le condizioni MFA alle policy. Per ulteriori informazioni, consulta Configurazione dell'accesso alle API protetto con MFA nella Guida per l'utente IAM.

Per maggiori informazioni sulle best practice in IAM, consulta Best practice di sicurezza in IAM nella Guida per l'utente di IAM.

Utilizzo della console di CodeDeploy

Se utilizzi la CodeDeploy console, devi disporre di un set minimo di autorizzazioni che ti consenta di descrivere altre AWS risorse per il tuo account. AWS Per CodeDeploy utilizzarla nella CodeDeploy console, è necessario disporre delle autorizzazioni dei seguenti servizi:

  • Dimensionamento automatico Amazon EC2

  • AWS CodeDeploy

  • Amazon Elastic Compute Cloud

  • Sistema di bilanciamento del carico elastico

  • AWS Identity and Access Management

  • Amazon Simple Storage Service

  • Amazon Simple Notification Service

  • Amazon CloudWatch

Se crei una policy IAM più restrittiva delle autorizzazioni minime richieste, la console non funzionerà come previsto per gli utenti che hanno un ruolo in quella policy IAM. Per garantire che tali utenti possano continuare a utilizzare la CodeDeploy console, collega anche la policy AWSCodeDeployReadOnlyAccess gestita al ruolo assegnato all'utente, come descritto in. AWS politiche gestite (predefinite) per CodeDeploy

Non è necessario consentire autorizzazioni minime per la console per gli utenti che effettuano chiamate solo verso AWS CLI o l' CodeDeploy API.

Consentire agli utenti di visualizzare le loro autorizzazioni

Questo esempio mostra in che modo è possibile creare una policy che consente agli utenti IAM di visualizzare le policy inline e gestite che sono cpllegate 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": "*" } ] }