Come AWS CodeDeploy funziona con IAM - 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à.

Come AWS CodeDeploy funziona con IAM

Prima di utilizzare IAM per gestire l'accesso a CodeDeploy, è necessario comprendere con quali funzionalità IAM è disponibile l'uso CodeDeploy. Per ulteriori informazioni, consulta AWS i servizi che funzionano con IAM nella IAM User Guide.

Policy CodeDeploy basate su identità

Con le policy IAM basate su identità, puoi specificare operazioni e risorse consentite o rifiutate, nonché le condizioni in base alle quali le operazioni sono consentite o rifiutate. CodeDeploy supporta azioni, risorse e chiavi di condizione. Per informazioni sugli elementi utilizzati in una policy JSON, consulta il riferimento agli elementi della policy JSON di IAM nella IAM User Guide.

Azioni

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. Cioè, quale principale può eseguire azioni su quali risorse, e in quali condizioni.

L'elemento Actiondi una policy JSON descrive le azioni che è possibile utilizzare per consentire o negare l'accesso a un criterio. Le azioni politiche in genere hanno lo stesso nome dell'operazione AWS API associata. Ci sono alcune eccezioni, ad esempio le azioni di sola autorizzazione che non hanno un'operazione API corrispondente. Esistono anche alcune operazioni che richiedono più operazioni in una policy. Queste operazioni aggiuntive sono denominate operazioni dipendenti.

Includi le operazioni in una policy per concedere le autorizzazioni a eseguire l'operazione associata.

Le azioni politiche in CodeDeploy uso utilizzano il codedeploy: prefisso che precede l'azione. Ad esempio, l'autorizzazione codedeploy:GetApplication fornisce all'utente le autorizzazioni per eseguire l'operazione GetApplication. Le dichiarazioni politiche devono includere un NotAction elemento Action or. CodeDeploy definisce il proprio set di azioni che descrivono le attività che è possibile eseguire con questo servizio.

Per specificare più azioni in una sola istruzione, separa ciascuna di esse con una virgola come mostrato di seguito:

"Action": [ "codedeploy:action1", "codedeploy:action2"

È possibile specificare più azioni tramite caratteri jolly (*). Ad esempio, includi la seguente operazione per specificare tutte le operazioni che iniziano con la parola Describe:

"Action": "ec2:Describe*"

Per un elenco di CodeDeploy azioni, consulta Actions Defined by AWS CodeDeploy nella IAM User Guide.

Per una tabella che elenca tutte le azioni CodeDeploy API e le risorse a cui si applicano, consultaRiferimento per le autorizzazioni CodeDeploy.

Risorse

Gli amministratori possono utilizzare le policy AWS JSON per specificare chi ha accesso a cosa. Cioè, quale principale può eseguire operazioni su quali risorse, e in quali condizioni.

L'elemento JSON Resourcedella policy specifica l'oggetto o gli oggetti ai quali si applica l'operazione. Le istruzioni devono includere un elemento Resourceo un elemento NotResource. Come best practice, specifica una risorsa utilizzando il suo nome della risorsa Amazon (ARN). Puoi eseguire questa operazione per azioni che supportano un tipo di risorsa specifico, note come autorizzazioni a livello di risorsa.

Per le azioni che non supportano le autorizzazioni a livello di risorsa, ad esempio le operazioni di elenco, utilizza un carattere jolly (*) per indicare che l'istruzione si applica a tutte le risorse.

"Resource": "*"

Ad esempio, puoi indicare un gruppo di distribuzione (myDeploymentGroup) nella tua dichiarazione utilizzando il relativo ARN come segue:

"Resource": "arn:aws:codedeploy:us-west-2:123456789012:deploymentgroup:myApplication/myDeploymentGroup"

È inoltre possibile specificare tutti i gruppi di distribuzione che appartengono a un account utilizzando il carattere jolly (*) come segue:

"Resource": "arn:aws:codedeploy:us-west-2:123456789012:deploymentgroup:*"

Per specificare tutte le risorse o se un'operazione API non supporta gli ARN, utilizza il carattere jolly (*) nell'elemento Resource come segue:

"Resource": "*"

Alcune azioni CodeDeploy API accettano più risorse (ad esempio,BatchGetDeploymentGroups). Per specificare più risorse in una sola dichiarazione, separa i relativi ARN con una virgola come mostrato di seguito:

"Resource": ["arn1", "arn2"]

CodeDeploy fornisce una serie di operazioni per lavorare con le CodeDeploy risorse. Per un elenco di operazioni disponibili, consulta la sezione Riferimento per le autorizzazioni CodeDeploy.

Per un elenco dei tipi di CodeDeploy risorse e dei relativi ARN, consulta Resources Defined by AWS CodeDeploy nella IAM User Guide. Per informazioni sulle azioni in cui è possibile specificare l'ARN di ogni risorsa, vedere Azioni definite da. AWS CodeDeploy

CodeDeploy risorse e operazioni

In CodeDeploy, la risorsa principale è un gruppo di distribuzione. In una policy, devi utilizzare un Amazon Resource Name (ARN) per identificare la risorsa a cui si applica la policy stessa. CodeDeploy supporta altre risorse che possono essere utilizzate con i gruppi di distribuzione, tra cui applicazioni, configurazioni di distribuzione e istanze. e vi si può fare riferimento come risorse secondarie. Queste risorse e risorse secondarie hanno ARN univoci associati. Per ulteriori informazioni, consulta Amazon Resource Names (ARN) nel Riferimenti generali di Amazon Web Services.

Tipo di risorsa Formato ARN
Gruppo di distribuzione

arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name

Applicazione

arn:aws:codedeploy:region:account-id:application:application-name

Configurazione dell'implementazione

arn:aws:codedeploy:region:account-id:deploymentconfig:deployment-configuration-name

Istanza

arn:aws:codedeploy:region:account-id:instance/instance-ID

Tutte le risorse CodeDeploy

arn:aws:codedeploy:*

Tutte CodeDeploy le risorse di proprietà dell'account specificato nella regione specificata

arn:aws:codedeploy:region:account-id:*

Nota

La maggior parte dei servizi in uso AWS considera i due punti (:) o una barra (/) come lo stesso carattere negli ARN. Tuttavia, CodeDeploy utilizza una corrispondenza esatta nei modelli e nelle regole delle risorse. Assicurati di utilizzare i caratteri ARN corretti durante la creazione di modelli di eventi, facendo in modo che corrispondano alla sintassi ARN nella risorsa.

Chiavi di condizione

CodeDeploy non fornisce chiavi di condizione specifiche del servizio, ma supporta l'uso di alcune chiavi di condizione globali. Per ulteriori informazioni, consultare Chiavi di contesto delle condizioni globali AWS nella Guida per l'utente IAM.

Esempi

Per visualizzare esempi di politiche basate sull' CodeDeploy identità, vedere. Esempi di policy di AWS CodeDeploy basate su identità

CodeDeploy politiche basate sulle risorse

CodeDeploy non supporta politiche basate sulle risorse. Per visualizzare un esempio di una pagina dettagliata delle politiche basate sulle risorse, vedere Utilizzo delle politiche basate sulle risorse per. AWS Lambda

Autorizzazione basata su tag CodeDeploy

CodeDeploy non supporta l'etichettatura delle risorse o il controllo dell'accesso in base ai tag.

CodeDeploy ruoli IAM

Un ruolo IAM è un'entità nel tuo AWS account che dispone di autorizzazioni specifiche.

Utilizzo di credenziali temporanee con CodeDeploy

È possibile utilizzare credenziali temporanee per effettuare l'accesso con la federazione, assumere un ruolo IAM o un ruolo multi-account. È possibile ottenere credenziali di sicurezza temporanee chiamando operazioni AWS STS API come AssumeRoleo. GetFederationToken

CodeDeploy supporta l'uso di credenziali temporanee.

Ruoli collegati ai servizi

CodeDeploy non supporta ruoli collegati ai servizi.

Ruoli dei servizi

Questa caratteristica consente a un servizio di assumere un ruolo di servizio per conto dell'utente. Questo ruolo consente al servizio di accedere alle risorse in altri servizi per completare un'azione per conto dell'utente. I ruoli di servizio vengono visualizzati nell' AWS account e sono di proprietà dell'account. Ciò significa che un utente può modificare le autorizzazioni per questo ruolo. Tuttavia, il farlo potrebbe pregiudicare la funzionalità del servizio.

CodeDeploy supporta i ruoli di servizio.

Scelta di un ruolo IAM in CodeDeploy

Quando crei una risorsa del gruppo di distribuzione in CodeDeploy, devi scegliere un ruolo per consentire l'accesso CodeDeploy ad Amazon EC2 per tuo conto. Se in precedenza hai creato un ruolo di servizio o un ruolo collegato al servizio, ti CodeDeploy fornisce un elenco di ruoli tra cui scegliere. È importante scegliere un ruolo che consenta l'accesso per avviare e arrestare le istanze EC2.