

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

# Panoramica della gestione delle autorizzazioni di accesso alle risorse AWS CodeBuild
<a name="auth-and-access-control-iam-access-control-identity-based"></a>

Ogni AWS risorsa è di proprietà di un AWS account e le autorizzazioni per creare o accedere a una risorsa sono regolate dalle politiche di autorizzazione. Un amministratore dell'account è in grado di collegare le policy relative alle autorizzazioni alle identità IAM (ovvero utenti, gruppi e ruoli). 

**Nota**  
Un amministratore account (o un utente amministratore) è un utente con privilegi di amministratore. Per ulteriori informazioni, consulta [Best practice IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) nella *Guida per l'utente di IAM*.

Quando concedi le autorizzazioni, devi specificare gli utenti che le riceveranno, le risorse a cui potranno accedere e le operazioni consentite su tali risorse.

**Topics**
+ [AWS CodeBuild risorse e operazioni](#arn-formats)
+ [Informazioni sulla proprietà delle risorse](#understanding-resource-ownership)
+ [Gestione dell'accesso alle risorse](#managing-access-resources)
+ [Specifica degli elementi delle policy: operazioni, effetti e principali](#actions-effects-principals)

## AWS CodeBuild risorse e operazioni
<a name="arn-formats"></a>

Nel AWS CodeBuild, la risorsa principale è un progetto di compilazione. In una policy, devi utilizzare un Amazon Resource Name (ARN) per identificare la risorsa a cui si applica la policy. Le compilazioni sono anche risorse e con ARN associati. Per ulteriori informazioni, consulta [Amazon Resource Names (ARN) e AWS Service Namespaces](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) nel. *Riferimenti generali di Amazon Web Services*


| Tipo di risorsa | Formato ARN | 
| --- | --- | 
| Progetto di compilazione | `arn:aws:codebuild:{{region-ID}}:{{account-ID}}:project/{{project-name}}` | 
| Creazione | `arn:aws:codebuild:{{region-ID}}:{{account-ID}}:build/{{build-ID}}` | 
| Gruppo di report | arn:aws:codebuild:{{region-ID}}:{{account-ID}}:report-group/{{report-group-name}} | 
| Report | arn:aws:codebuild:{{region-ID}}:{{account-ID}}:report/{{report-ID}} | 
| Parco istanze | `arn:aws:codebuild:{{region-ID}}:{{account-ID}}:fleet/{{fleet-ID}}` | 
| Tutte le risorse CodeBuild  | `arn:aws:codebuild:*` | 
| Tutte CodeBuild le risorse di proprietà dell'account specificato nella AWS regione specificata | `arn:aws:codebuild:{{region-ID}}:{{account-ID}}:*` | 

**Importante**  
Quando si utilizza la funzionalità di capacità riservata, i dati memorizzati nella cache delle istanze del parco istanze, inclusi i file di origine, i layer Docker e le directory memorizzate nella cache specificate nella buildspec, possono essere accessibili ad altri progetti all'interno dello stesso account. Questa funzionalità è preimpostata e consente ai progetti all'interno dello stesso account di condividere le istanze del parco istanze.

**Nota**  
La maggior parte dei AWS servizi considera i due punti (:) o una barra (/) come lo stesso carattere negli ARN. Tuttavia, CodeBuild 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.

Ad esempio, puoi indicare uno specifico progetto di build ({{myBuildProject}}) nella tua dichiarazione utilizzando il relativo ARN come segue:

```
"Resource": "arn:aws:codebuild:{{us-east-2}}:{{123456789012}}:project/{{myBuildProject}}"
```

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 CodeBuild API accettano più risorse (ad esempio,`BatchGetProjects`). Per specificare più risorse in una sola dichiarazione, separa i relativi ARN con una virgola come mostrato di seguito:

```
"Resource": [
  "arn:aws:codebuild:{{us-east-2}}:{{123456789012}}:project/{{myBuildProject}}",
  "arn:aws:codebuild:{{us-east-2}}:{{123456789012}}:project/{{myOtherBuildProject}}"
]
```

CodeBuild fornisce una serie di operazioni per lavorare con le CodeBuild risorse. Per un elenco, consulta [AWS CodeBuild riferimento alle autorizzazioni](auth-and-access-control-permissions-reference.md).

## Informazioni sulla proprietà delle risorse
<a name="understanding-resource-ownership"></a>

L' AWS account possiede le risorse create nell'account, indipendentemente da chi ha creato le risorse. In particolare, il proprietario della risorsa è l' AWS account dell'[entità principale](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) (ovvero l'account root, un utente o un ruolo IAM) che autentica la richiesta di creazione delle risorse. Negli esempi seguenti viene illustrato il funzionamento:
+ Se utilizzi le credenziali dell'account root del tuo AWS account per creare una regola, quest'ultimo AWS è il proprietario della risorsa. CodeBuild 
+ Se crei un utente nel tuo AWS account e concedi le autorizzazioni per creare CodeBuild risorse a quell'utente, l'utente può creare CodeBuild risorse. Tuttavia, il tuo AWS account, a cui appartiene l'utente, possiede le CodeBuild risorse.
+ Se crei un ruolo IAM nel tuo AWS account con le autorizzazioni per creare CodeBuild risorse, chiunque possa assumere il ruolo può creare CodeBuild risorse. Il tuo AWS account, a cui appartiene il ruolo, possiede le CodeBuild risorse.

## Gestione dell'accesso alle risorse
<a name="managing-access-resources"></a>

La policy delle autorizzazioni descrive chi ha accesso a quali risorse. 

**Nota**  
In questa sezione si esamina l'utilizzo di IAM in AWS CodeBuild. Non vengono fornite informazioni dettagliate sul servizio IAM. Per la documentazione di IAM completa, consulta [Che cos'è IAM?](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) nella *Guida per l'utente di IAM*. Per informazioni sulla sintassi delle policy IAM e le rispettive descrizioni, consulta [Riferimento alle policy IAM di AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html) nella *Guida per l'utente di IAM*.

Le policy collegate a un'identità IAM vengono definite policy basate su identità (policy IAM). Le politiche associate a una risorsa vengono chiamate politiche basate sulle risorse. CodeBuild supporta politiche basate sull'identità e politiche basate sulle risorse per determinate API di sola lettura ai fini della condivisione delle risorse tra account.

### Accesso sicuro ai bucket S3
<a name="secure-s3-buckets"></a>

Ti consigliamo vivamente di includere le seguenti autorizzazioni nel tuo ruolo IAM per verificare che il bucket S3 associato al tuo progetto sia di tua proprietà o di qualcuno di cui ti fidi. CodeBuild Queste autorizzazioni non sono incluse nelle politiche e nei ruoli AWS gestiti. Devi aggiungerle da solo. 
+  `s3:GetBucketAcl` 
+  `s3:GetBucketLocation` 

Se il proprietario di un bucket S3 utilizzato dal tuo progetto cambia, devi verificare di essere ancora proprietario del bucket e, in caso contrario, aggiornare le autorizzazioni nel tuo ruolo IAM. Per ulteriori informazioni, consultare [Consenti agli utenti di interagire con CodeBuild](setting-up-service-permissions-group.md) e [Consenti CodeBuild di interagire con altri servizi AWS](setting-up-service-role.md). 

## Specifica degli elementi delle policy: operazioni, effetti e principali
<a name="actions-effects-principals"></a>

Per ogni AWS CodeBuild risorsa, il servizio definisce un set di operazioni API. Per concedere le autorizzazioni per queste operazioni API, CodeBuild definisce una serie di azioni che è possibile specificare in una politica. Alcune operazioni API possono richiedere le autorizzazioni per più di un'azione al fine di eseguire l'operazione API. Per ulteriori informazioni, consultare [AWS CodeBuild risorse e operazioni](#arn-formats) e [AWS CodeBuild riferimento alle autorizzazioni](auth-and-access-control-permissions-reference.md).

Di seguito sono elencati gli elementi di base di una policy:
+ **Risorsa** - Usa un Amazon Resource Name (ARN) per identificare la risorsa a cui si applica la policy.
+ **Azione**: si utilizzano parole chiave di azione per identificare le operazioni sulle risorse che si desidera consentire o negare. Ad esempio, l'autorizzazione `codebuild:CreateProject` fornisce all'utente le autorizzazioni per eseguire l'operazione `CreateProject`.
+ **Effetto**: si specifica l'effetto, che può essere consentito o negato, quando l'utente richiede l'azione. USe non concedi esplicitamente (consenti) l'accesso a una risorsa, l'accesso viene implicitamente rifiutato. È anche possibile negare esplicitamente l'accesso a una risorsa. È possibile eseguire questa operazione per assicurarsi che un utente non possa accedere alla risorsa, anche se l'accesso viene concesso da un'altra policy.
+ **Principio**: nelle politiche basate sull'identità (politiche IAM), l'utente a cui è associata la policy è il principale implicito. Per le policy basate sulle risorse, devi specificare utente, account, servizio o altre entità che desideri ricevano le autorizzazioni.

Per ulteriori informazioni sulla sintassi e le descrizioni delle policy IAM, consulta [AWS Riferimento alle policy IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html) nella *Guida per l'utente di IAM*.

Per una tabella che mostra tutte le azioni CodeBuild API e le risorse a cui si applicano, consulta la. [AWS CodeBuild riferimento alle autorizzazioni](auth-and-access-control-permissions-reference.md)