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à.
Utilizzo di politiche basate sull'identità per AWS CodeBuild
Questo argomento fornisce esempi di policy basate su identità che illustrano come un amministratore account può associare policy di autorizzazione a identità IAM (ovvero utenti, gruppi e ruoli) e quindi concedere autorizzazioni per eseguire operazioni su risorse di AWS CodeBuild .
Importante
Ti consigliamo di esaminare innanzitutto gli argomenti introduttivi che spiegano i concetti e le opzioni di base disponibili per gestire l'accesso alle tue risorse. CodeBuild Per ulteriori informazioni, consulta Panoramica sulla gestione delle autorizzazioni di accesso al tuo AWS CodeBuild risorse.
Argomenti
Segue un esempio di una policy di autorizzazioni che permette all'utente di ottenere informazioni sui progetti di compilazione solo nella regione us-east-2 per l'account 123456789012 per qualsiasi progetto di compilazione che inizia con il nome my:
Autorizzazioni necessarie per utilizzare il AWS CodeBuild console
Un utente che utilizza la AWS CodeBuild console deve disporre di un set minimo di autorizzazioni che gli consenta di descrivere altre AWS risorse per l' AWS account. Deve possedere le autorizzazioni dai seguenti servizi:
-
AWS CodeBuild
-
Amazon CloudWatch
-
CodeCommit (se stai archiviando il codice sorgente in un AWS CodeCommit repository)
-
Amazon Elastic Container Registry (Amazon ECR) (se utilizzi un ambiente di compilazione che si basa su un'immagine Docker in un repository Amazon ECR)
Nota
A partire dal 26 luglio 2022, la policy IAM predefinita è stata aggiornata. Per ulteriori informazioni, consulta Autorizzazioni richieste per AWS CodeBuild per connettersi ad Amazon Elastic Container Registry.
-
Amazon Elastic Container Service (Amazon ECS) (se utilizzi un ambiente di compilazione che si basa su un'immagine Docker in un repository Amazon ECR)
-
AWS Identity and Access Management (IAM)
-
AWS Key Management Service (AWS KMS)
-
Amazon Simple Storage Service (Amazon S3)
Se crei una policy IAM più restrittiva rispetto alle autorizzazioni minime richieste, la console non funzionerà come previsto.
Autorizzazioni richieste per AWS CodeBuild per connettersi ad Amazon Elastic Container Registry
A partire dal 26 luglio 2022, AWS CodeBuild ha aggiornato la sua politica IAM predefinita per le autorizzazioni Amazon ECR. Le seguenti autorizzazioni sono state rimosse dalla policy predefinita:
"ecr:PutImage", "ecr:InitiateLayerUpload", "ecr:UploadLayerPart", "ecr:CompleteLayerUpload"
Per CodeBuild i progetti creati prima del 26 luglio 2022, ti consigliamo di aggiornare la tua politica con la seguente politica Amazon ECR:
"Action": [ "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage" ]
Per ulteriori informazioni sull'aggiornamento della tua politica, consultaConsenti agli utenti di interagire con CodeBuild.
Autorizzazioni richieste per AWS CodeBuild console per connettersi ai provider di origine
La AWS CodeBuild console utilizza le seguenti azioni API per connettersi ai provider di origine (ad esempio, i GitHub repository).
-
codebuild:ListConnectedOAuthAccounts -
codebuild:ListRepositories -
codebuild:PersistOAuthToken -
codebuild:ImportSourceCredentials
Puoi associare i provider di origine (come i GitHub repository) ai tuoi progetti di compilazione utilizzando la AWS CodeBuild console. Per fare ciò, devi prima aggiungere le azioni API precedenti alle policy di accesso IAM associate all'utente che utilizzi per accedere alla AWS CodeBuild console.
Le operazioni API ListConnectedOAuthAccounts, ListRepositories e PersistOAuthToken non devono essere chiamate dal codice. Pertanto, queste azioni API non sono incluse negli AWS
SDK AWS CLI e.
AWS politiche gestite (predefinite) per AWS CodeBuild
AWS risolve molti casi d'uso comuni fornendo policy IAM autonome create e amministrate da. AWS Queste policy AWS gestite concedono le autorizzazioni necessarie per i casi d'uso comuni, in modo da evitare di dover verificare quali autorizzazioni sono necessarie. Le policy gestite forniscono CodeBuild anche le autorizzazioni per eseguire operazioni in altri servizi, come IAM, Amazon EC2 AWS CodeCommit, Amazon ECR, Amazon SNS e Amazon CloudWatch Events, come richiesto per le responsabilità degli utenti a cui è stata concessa la policy in questione. Ad esempio, la AWSCodeBuildAdminAccess policy è una policy utente di livello amministrativo che consente agli utenti con questa policy di creare e gestire regole CloudWatch Events per la compilazione dei progetti e argomenti Amazon SNS per le notifiche sugli eventi relativi al progetto (argomenti i cui nomi sono preceduti daarn:aws:codebuild:), nonché di amministrare progetti e gruppi di report in CodeBuild. Per ulteriori informazioni, consulta Policy gestite da AWS nella Guida per l'utente di IAM.
Le seguenti policy AWS gestite, che puoi allegare agli utenti del tuo account, sono specifiche per. AWS CodeBuild
- AWSCodeBuildAdminAccess
-
Fornisce l'accesso completo all' CodeBuild inclusione delle autorizzazioni per amministrare i progetti di CodeBuild compilazione.
- AWSCodeBuildDeveloperAccess
-
Fornisce l'accesso CodeBuild , ma non consente, l'amministrazione del progetto di compilazione.
- AWSCodeBuildReadOnlyAccess
-
Fornisce accesso in sola lettura a. CodeBuild
Per accedere agli artefatti di output della build CodeBuild creati, è inoltre necessario allegare la policy gestita denominata AWS . AmazonS3ReadOnlyAccess
Per creare e gestire i ruoli CodeBuild di servizio, è necessario allegare anche la policy AWS gestita denominata. IAMFullAccess
È inoltre possibile creare policy IAM personalizzate per concedere le autorizzazioni per operazioni e risorse CodeBuild. Puoi collegare queste policy personalizzate agli utenti o ai gruppi che richiedono le autorizzazioni.
AWSCodeBuildAdminAccess
La AWSCodeBuildAdminAccess policy fornisce l'accesso completo CodeBuild, comprese le autorizzazioni per amministrare i progetti di CodeBuild compilazione. Applica questa politica solo agli utenti di livello amministrativo per concedere loro il pieno controllo su CodeBuild progetti, gruppi di report e risorse correlate nel tuo AWS account, inclusa la possibilità di eliminare progetti e gruppi di report.
Per la policy gestita completa, consulta AWSCodeBuildAdminAccess il riferimento alla policy gestita IAM.
AWSCodeBuildDeveloperAccess
La AWSCodeBuildDeveloperAccess policy consente l'accesso a tutte le funzionalità e alle risorse relative ai progetti CodeBuild e ai gruppi di report. Questa politica non consente agli utenti di eliminare CodeBuild progetti o gruppi di report o risorse correlate in altri AWS servizi, come CloudWatch Events. È consigliabile applicare questa policy alla maggior parte degli utenti.
Per la policy gestita completa, consulta AWSCodeBuildDeveloperAccess il riferimento alla policy gestita IAM.
AWSCodeBuildReadOnlyAccess
La AWSCodeBuildReadOnlyAccess policy garantisce l'accesso in sola lettura CodeBuild e le relative risorse in altri servizi. AWS Applicare questo criterio agli utenti che possono visualizzare ed eseguire build, visualizzare progetti e visualizzare gruppi di report, ma non possono apportare modifiche.
Per la policy gestita completa, consulta AWSCodeBuildReadOnlyAccess il riferimento alla policy gestita IAM.
CodeBuild politiche e notifiche gestite
CodeBuild supporta le notifiche, che possono notificare agli utenti importanti modifiche alla creazione di progetti. Policy gestite per CodeBuild includere dichiarazioni politiche per la funzionalità di notifica. Per ulteriori informazioni, vedere Cosa sono le notifiche?.
Autorizzazioni correlate alle notifiche nelle policy gestite di sola lettura
Le policy gestite AWSCodeBuildReadOnlyAccess includono le seguenti dichiarazioni per consentire l'accesso in sola lettura alle notifiche. Gli utenti con questa policy gestita applicata possono visualizzare le notifiche per le risorse, ma non possono crearle, gestirle o sottoscriverle.
{ "Sid": "CodeStarNotificationsPowerUserAccess", "Effect": "Allow", "Action": [ "codestar-notifications:DescribeNotificationRule" ], "Resource": "*", "Condition" : { "ArnLike" : {"codestar-notifications:NotificationsForResource" : "arn:aws:codebuild:*:*:project/*"} } }, { "Sid": "CodeStarNotificationsListAccess", "Effect": "Allow", "Action": [ "codestar-notifications:ListNotificationRules", "codestar-notifications:ListEventTypes", "codestar-notifications:ListTargets" ], "Resource": "*" }
Autorizzazioni correlate alle notifiche in altre policy gestite
La policy gestita AWSCodeBuildDeveloperAccess include le seguenti istruzioni per consentire agli utenti di creare, modificare e sottoscrivere le notifiche. Gli utenti non possono eliminare le regole di notifica o gestire i tag per le risorse.
{ "Sid": "CodeStarNotificationsReadWriteAccess", "Effect": "Allow", "Action": [ "codestar-notifications:CreateNotificationRule", "codestar-notifications:DescribeNotificationRule", "codestar-notifications:UpdateNotificationRule", "codestar-notifications:Subscribe", "codestar-notifications:Unsubscribe" ], "Resource": "*", "Condition" : { "ArnLike" : {"codestar-notifications:NotificationsForResource" : "arn:aws:codebuild:*:*:project/*"} } }, { "Sid": "CodeStarNotificationsListAccess", "Effect": "Allow", "Action": [ "codestar-notifications:ListNotificationRules", "codestar-notifications:ListTargets", "codestar-notifications:ListTagsforResource", "codestar-notifications:ListEventTypes" ], "Resource": "*" }, { "Sid": "SNSTopicListAccess", "Effect": "Allow", "Action": [ "sns:ListTopics" ], "Resource": "*" }, { "Sid": "CodeStarNotificationsChatbotAccess", "Effect": "Allow", "Action": [ "chatbot:DescribeSlackChannelConfigurations", "chatbot:ListMicrosoftTeamsChannelConfigurations" ], "Resource": "*" }
Per ulteriori informazioni su IAM e sulle notifiche, consulta Identity and Access ManagementAWS CodeStar Notifiche.
CodeBuild aggiornamenti a AWS policy gestite
Visualizza i dettagli sugli aggiornamenti alle policy AWS gestite da CodeBuild quando questo servizio ha iniziato a tracciare queste modifiche. Per ricevere avvisi automatici sulle modifiche a questa pagina, iscriviti al feed RSS su. AWS CodeBuild Cronologia dei documenti della Guida dell'utente
| Modifica | Descrizione | Data |
|---|---|---|
|
|
CodeBuild ha aggiunto l' Le |
1 dicembre 2025 |
|
|
CodeBuild ha aggiornato una risorsa su queste politiche. Le |
15 novembre 2024 |
|
|
CodeBuild ha aggiunto una risorsa a queste politiche per supportare il AWS CodeConnections rebranding. Le |
18 aprile 2024 |
|
|
CodeBuild ha aggiunto un'autorizzazione a queste politiche per supportare un tipo di notifica aggiuntivo utilizzando Amazon Q Developer nelle applicazioni di chat. Le |
16 maggio 2023 |
|
CodeBuild ha iniziato a tenere traccia delle modifiche |
CodeBuild ha iniziato a tenere traccia delle modifiche relative alle politiche AWS gestite. |
16 maggio 2021 |
Customer-managed esempi di politiche
Questa sezione include policy utente di esempio che concedono autorizzazioni per operazioni AWS CodeBuild . Queste politiche funzionano quando si utilizzano l' CodeBuild API, gli AWS SDK o. AWS CLI Quando si utilizza la console, devi concedere autorizzazioni specifiche aggiuntive alla console. Per informazioni, consulta Autorizzazioni necessarie per utilizzare il AWS CodeBuild console.
Puoi utilizzare i seguenti esempi di policy IAM per limitare CodeBuild l'accesso per utenti e ruoli.
Argomenti
Concessione a un utente di ottenere informazioni sui progetti di compilazione
Concessione a un utente di ottenere informazioni sui gruppi di report
Concessione a un utente di eliminare progetti di compilazione
Concessione a un utente di ottenere un elenco di nomi di progetti di compilazione
Concessione a un utente di modificare informazioni sui progetti di compilazione
Concessione a un utente di ottenere informazioni sulle compilazioni
Concessione a un utente di ottenere un elenco di ID di compilazione per un progetto di compilazione
Concessione a un utente di ottenere un elenco degli ID di compilazione
Concessione a un utente di ottenere un elenco dei gruppi di report
Concessione a un utente di ottenere un elenco dei report riferiti a un gruppo di report
Concessione a un utente di ottenere un elenco dei casi di test riferiti a un report
Concessione a un utente di avviare l'esecuzione di compilazioni
Concessione a un utente di tentare di interrompere le compilazioni
Concessione a un utente di tentare di eliminare le compilazioni
Consenti a un utente di ottenere informazioni sulle immagini Docker gestite da CodeBuild
Consenti a un utente di aggiungere una politica di autorizzazione per un ruolo di Fleet Service
Consenti CodeBuild l'accesso a AWS servizi necessari per creare un'interfaccia di rete VPC
Concessione a un utente di ottenere informazioni sui progetti di compilazione
La seguente istruzione di policy di esempio permette all'utente di ottenere informazioni sui progetti di compilazione, nella regione us-east-2 per l'account 123456789012, che iniziano con il nome my:
Consenti a un utente di ottenere informazioni sulle flotte
Il seguente esempio di dichiarazione politica consente a un utente di ottenere informazioni sulle flotte nella us-east-2 regione per conto dell'account: 123456789012
Concessione a un utente di ottenere informazioni sui gruppi di report
La seguente istruzione di policy esemplificativa permette all'utente di ottenere informazioni sui gruppi di report nella regione us-east-2 per l'account 123456789012:
Concessione a un utente di ottenere informazioni sui report
La seguente istruzione di policy esemplificativa permette all'utente di ottenere informazioni sui report nella regione us-east-2 per l'account 123456789012:
Concessione a un utente di creare progetti di compilazione
Il seguente esempio di dichiarazione politica consente a un utente di creare progetti di compilazione con qualsiasi nome, ma solo nella us-east-2 regione per account 123456789012 e utilizzando solo il ruolo di CodeBuild servizio specificato:
La seguente dichiarazione politica di esempio consente a un utente di creare progetti di compilazione con qualsiasi nome, ma solo nella us-east-2 regione per account 123456789012 e utilizzando solo il ruolo di CodeBuild servizio specificato. Impone inoltre che l'utente possa utilizzare il ruolo di servizio specificato solo con altri servizi AWS CodeBuild e non con altri AWS servizi.
Consenti a un utente di creare una flotta
Il seguente esempio di dichiarazione politica consente a un utente di creare una flotta nella us-east-2 regione per account123456789012:
Concessione a un utente di creare un gruppo di report
La seguente istruzione di policy di esempio permette all'utente di creare un gruppo di report nella regione us-east-2 per l'account 123456789012:
Consenti a un utente di eliminare una flotta
Il seguente esempio di dichiarazione politica consente a un utente di eliminare una flotta nella us-east-2 regione per account123456789012:
Concessione a un utente di eliminare un gruppo di report
La seguente istruzione di policy esemplificativa permette all'utente di eliminare un gruppo di report nella regione us-east-2 per l'account 123456789012:
Concessione a un utente di eliminare un report
La seguente istruzione di policy esemplificativa permette all'utente di eliminare un report nella regione us-east-2 per l'account 123456789012:
Concessione a un utente di eliminare progetti di compilazione
La seguente istruzione di policy esemplificativa permette all'utente di eliminare i progetti di compilazione nella regione us-east-2 per l'account 123456789012 che iniziano con il nome my:
Concessione a un utente di ottenere un elenco di nomi di progetti di compilazione
La seguente istruzione di policy di esempio permette all'utente di ottenere un elenco dei nomi di progetti di compilazione per lo stesso account.
Concessione a un utente di modificare informazioni sui progetti di compilazione
La seguente istruzione di policy esemplificativa permette all'utente di modificare informazioni sui progetti di compilazione con qualsiasi nome solo nella regione us-east-2 per l'account 123456789012 e di utilizzare unicamente il ruolo del servizio AWS CodeBuild specificato:
Consenti a un utente di modificare una flotta
Il seguente esempio di dichiarazione politica consente a un utente di modificare un parco veicoli nella us-east-2 regione per account123456789012:
Concessione a un utente di modificare un gruppo di report
La seguente istruzione di policy esemplificativa permette all'utente di modificare un gruppo di report nella regione us-east-2 per l'account 123456789012:
Concessione a un utente di ottenere informazioni sulle compilazioni
La seguente istruzione di policy esemplificativa permette all'utente di ottenere informazioni sulla compilazione nella regione us-east-2 per l'account 123456789012, per i progetti di compilazione denominati my-build-project e my-other-build-project:
Concessione a un utente di ottenere un elenco di ID di compilazione per un progetto di compilazione
La seguente istruzione di policy esemplificativa permette all'utente di ottenere un elenco di ID di compilazione nella regione us-east-2 per l'account 123456789012, per i progetti di compilazione denominati my-build-project e my-other-build-project:
Concessione a un utente di ottenere un elenco degli ID di compilazione
La seguente istruzione di policy di esempio permette all'utente di ottenere un elenco di tutti gli ID di compilazione per lo stesso account.
Consenti a un utente di ottenere un elenco di flotte
Il seguente esempio di dichiarazione politica consente a un utente di ottenere un elenco di flotte nella us-east-2 regione per account: 123456789012
Concessione a un utente di ottenere un elenco dei gruppi di report
La seguente istruzione di policy esemplificativa permette all'utente di ottenere un elenco dei gruppi di report nella regione us-east-2 per l'account 123456789012:
Concessione a un utente di ottenere un elenco dei report
La seguente istruzione di policy esemplificativa permette all'utente di ottenere un elenco dei report nella regione us-east-2 per l'account 123456789012:
Concessione a un utente di ottenere un elenco dei report riferiti a un gruppo di report
La seguente istruzione di policy esemplificativa permette all'utente di ottenere un elenco dei report riferiti a un gruppo di report nella regione us-east-2 per l'account 123456789012:
Concessione a un utente di ottenere un elenco dei casi di test riferiti a un report
La seguente istruzione di policy esemplificativa permette all'utente di ottenere un elenco dei casi di test riferiti a un report nella regione us-east-2 per l'account 123456789012:
Concessione a un utente di avviare l'esecuzione di compilazioni
La seguente istruzione di policy esemplificativa permette all'utente di eseguire compilazioni nella regione us-east-2 per l'account 123456789012, per qualsiasi progetto di compilazione che inizia con il nome my:
Concessione a un utente di tentare di interrompere le compilazioni
La seguente istruzione di policy di esempio permette a un utente di tentare di interrompere le compilazioni di esecuzione solo nella regione us-east-2 per l'account 123456789012 per qualsiasi progetto di compilazione che inizia con il nome my:
Concessione a un utente di tentare di eliminare le compilazioni
La seguente istruzione di policy di esempio permette all'utente di tentare di eliminare le compilazioni solo nella regione us-east-2 per l'account 123456789012 per qualsiasi progetto di compilazione che inizia con il nome my:
Consenti a un utente di ottenere informazioni sulle immagini Docker gestite da CodeBuild
Il seguente un esempio di un'istruzione di policy che permette all'utente di ottenere informazioni su tutte le immagini Docker gestite da CodeBuild.
Consenti a un utente di aggiungere una politica di autorizzazione per un ruolo di Fleet Service
Il seguente esempio di dichiarazione sulla politica delle risorse consente a un utente di aggiungere una politica di autorizzazione VPC per un ruolo di fleet service:
Il seguente esempio di dichiarazione sulla politica delle risorse consente a un utente di aggiungere una politica di autorizzazione Amazon Managed Image (AMI) personalizzata per un ruolo di servizio di flotta:
Il seguente esempio di dichiarazione sulla politica di fiducia consente a un utente di aggiungere una politica di autorizzazione per un ruolo di Fleet Service:
Consenti CodeBuild l'accesso a AWS servizi necessari per creare un'interfaccia di rete VPC
La seguente dichiarazione politica di esempio concede AWS CodeBuild l'autorizzazione a creare un'interfaccia di rete in un VPC con due sottoreti:
Usa una dichiarazione di rifiuto per prevenire AWS CodeBuild dalla disconnessione dai provider di origine
Il seguente esempio di istruzione della policy utilizza un'istruzione di rifiuto per impedire a AWS CodeBuild di disconnettersi dai provider di origine. Utilizza codebuild:DeleteOAuthToken, che è l'inverso di codebuild:PersistOAuthToken e codebuild:ImportSourceCredentials, per connettersi ai provider di origine. Per ulteriori informazioni, consulta Autorizzazioni richieste per AWS CodeBuild console per connettersi ai provider di origine.