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 IAM funzionalità è possibile utilizzare CodeDeploy. Per ulteriori informazioni, consulta AWS i servizi compatibili IAM nella Guida per l'IAMutente.

Policy CodeDeploy basate su identità

Con le politiche IAM basate sull'identità, è possibile specificare azioni e risorse consentite o negate e le condizioni in base alle quali le azioni sono consentite o negate. CodeDeploy supporta azioni, risorse e chiavi di condizione. Per informazioni sugli elementi utilizzati in una JSON policy, consulta il riferimento agli elementi IAM JSON della policy nella Guida per l'IAMutente.

Azioni

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

L'Actionelemento di una JSON policy descrive le azioni che è possibile utilizzare per consentire o negare l'accesso a una policy. Le azioni politiche in genere hanno lo stesso nome dell' AWS APIoperazione associata. Esistono alcune eccezioni, come le azioni basate solo sulle autorizzazioni che non hanno un'operazione corrispondente. API 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 delle CodeDeploy azioni, vedere Azioni definite da AWS CodeDeploy nella Guida per l'IAMutente.

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

Risorse

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

L'elemento Resource JSON policy specifica l'oggetto o gli oggetti a cui si applica l'azione. Le istruzioni devono includere un elemento Resourceo un elemento NotResource. Come best practice, specifica una risorsa utilizzando il relativo Amazon Resource Name (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 utilizzandolo ARN come segue:

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

Puoi anche 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'APIazione non supportaARNs, utilizzate il carattere jolly (*) nell'Resourceelemento come segue:

"Resource": "*"

Alcune CodeDeploy API azioni accettano più risorse (ad esempio,BatchGetDeploymentGroups). Per specificare più risorse in un'unica istruzione, separale ARNs con virgole, come segue:

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

CodeDeploy fornisce una serie di operazioni per utilizzare 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 relativiARNs, vedere Resources Defined by AWS CodeDeploy nella Guida per l'IAMutente. Per informazioni sulle azioni in cui è possibile specificare il valore ARN di ciascuna risorsa, vedere Azioni definite da AWS CodeDeploy.

CodeDeploy risorse e operazioni

In CodeDeploy, la risorsa principale è un gruppo di distribuzione. In una policy, utilizzi un Amazon Resource Name (ARN) per identificare la risorsa a cui si applica la policy. CodeDeploy supporta altre risorse che possono essere utilizzate con gruppi di distribuzione, tra cui applicazioni, configurazioni di distribuzione e istanze. e vi si può fare riferimento come risorse secondarie. A queste risorse e sottorisorse sono ARNs associate risorse uniche. Per ulteriori informazioni, consulta Amazon resource names (ARNs) nel Riferimenti generali di Amazon Web Services.

Tipo di risorsa ARNformato
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 CodeDeploy risorse

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 inARNs. Tuttavia, CodeDeploy utilizza una corrispondenza esatta nei modelli e nelle regole delle risorse. Assicurati di utilizzare i ARN caratteri corretti quando crei modelli di eventi in modo che corrispondano alla ARN sintassi della 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, consulta le chiavi di contesto delle condizioni AWS globali nella Guida per l'IAMutente.

Esempi

Per visualizzare esempi di politiche CodeDeploy basate sull'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 dei criteri basati 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 IAMruoli

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

Utilizzo di credenziali temporanee con CodeDeploy

Puoi utilizzare credenziali temporanee per accedere con la federazione, assumere un IAM ruolo o assumere un ruolo tra account. È possibile ottenere credenziali di sicurezza temporanee chiamando AWS STS API operazioni come o. AssumeRoleGetFederationToken

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 IAM ruolo in CodeDeploy

Quando crei una risorsa del gruppo di distribuzione in CodeDeploy, devi scegliere un ruolo per consentire l'accesso CodeDeploy ad Amazon per tuo EC2 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 all'avvio e all'arresto EC2 delle istanze.