

 Amazon Redshift non supporterà più la creazione di nuovi Python UDFs a partire dalla Patch 198. Python esistente UDFs continuerà a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il [post del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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

# Parametri di autorizzazione
<a name="copy-parameters-authorization"></a>

Il comando COPY richiede l'autorizzazione per accedere ai dati in un'altra AWS risorsa, tra cui Amazon S3, Amazon EMR, Amazon DynamoDB e Amazon EC2. Per concedere questa autorizzazione, è necessario fare riferimento a un [ruolo (IAM)AWS Identity and Access Management](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) associato al cluster (*controllo degli accessi basato sul ruolo*). Puoi crittografare i dati di caricamento su Amazon S3. 

I seguenti argomenti forniscono ulteriori dettagli ed esempi di opzioni di autenticazione:
+ [Autorizzazioni IAM per COPY, UNLOAD e CREATE LIBRARY](copy-usage_notes-access-permissions.md#copy-usage_notes-iam-permissions)
+ [Controllo degli accessi basato sui ruoli](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based)
+ [Controllo degli accessi basato su chiave](copy-usage_notes-access-permissions.md#copy-usage_notes-access-key-based)

Utilizza una delle seguenti opzioni per fornire l'autorizzazione per il comando COPY: 
+ Parametro [Utilizzo del parametro IAM\$1ROLE](#copy-iam-role)
+ Parametri di [Utilizzo dei parametri ACCESS\$1KEY\$1ID e SECRET\$1ACCESS\$1KEY](#copy-access-key-id)
+ [Utilizzo del parametro CREDENTIALS](#copy-credentials)Clausola 

## Utilizzo del parametro IAM\$1ROLE
<a name="copy-iam-role"></a>

### IAM\$1ROLE
<a name="copy-iam-role-iam"></a>

Utilizzare la parola chiave predefinita per fare in modo che Amazon Redshift utilizzi il ruolo IAM impostato come predefinito e associato al cluster quando viene eseguito il comando COPY. 

L'Amazon Resource Name (ARN) per un ruolo IAM utilizzato dal cluster per l'autenticazione e l'autorizzazione. Se specifichi IAM\$1ROLE, non è possibile utilizzare ACCESS\$1KEY\$1ID e SECRET\$1ACCESS\$1KEY, SESSION\$1TOKEN o CREDENTIALS.

Di seguito è mostrata la sintassi del parametro IAM\$1ROLE. 

```
IAM_ROLE { default | 'arn:aws:iam::<Account AWS-id>:role/<role-name>' }
```

Per ulteriori informazioni, consulta [Controllo degli accessi basato sui ruoli](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based). 

## Utilizzo dei parametri ACCESS\$1KEY\$1ID e SECRET\$1ACCESS\$1KEY
<a name="copy-access-key-id"></a>

### ACCESS\$1KEY\$1ID, SECRET\$1ACCESS\$1KEY
<a name="copy-access-key-id-access"></a>

Questo metodo di autorizzazione non è raccomandato. 

**Nota**  
Invece di fornire le credenziali di accesso come testo in chiaro, consigliamo vivamente di utilizzare l'autenticazione basata sui ruoli specificando il parametro IAM\$1ROLE. Per ulteriori informazioni, consulta [Controllo degli accessi basato sui ruoli](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based). 

### SESSION\$1TOKEN
<a name="copy-token"></a>

Il token di sessione da utilizzare con le credenziali di accesso temporaneo. Quando è specificato SESSION\$1TOKEN, devi utilizzare anche ACCESS\$1KEY\$1ID e SECRET\$1ACCESS\$1KEY per fornire credenziali di chiave di accesso temporanee. Se specifichi SESSION\$1TOKEN, non è possibile utilizzare IAM\$1ROLE o CREDENTIALS. Per ulteriori informazioni, consultare [Credenziali di sicurezza temporanee](copy-usage_notes-access-permissions.md#r_copy-temporary-security-credentials) nella Guida per l'utente di IAM.

**Nota**  
Invece di creare credenziali di sicurezza temporanee, consigliamo vivamente di utilizzare l'autenticazione basata su ruoli. Quando si autorizza l'uso di un ruolo IAM, Amazon Redshift crea automaticamente credenziali utente temporanee per ogni sessione. Per ulteriori informazioni, consulta [Controllo degli accessi basato sui ruoli](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based). 

Di seguito è riportata la sintassi del parametro SESSION\$1TOKEN con i parametri ACCESS\$1KEY\$1ID e SECRET\$1ACCESS\$1KEY. 

```
ACCESS_KEY_ID '<access-key-id>'
SECRET_ACCESS_KEY '<secret-access-key>'
SESSION_TOKEN '<temporary-token>';
```

Se specifichi SESSION\$1TOKEN, non è possibile utilizzare CREDENTIALS o IAM\$1ROLE. 

## Utilizzo del parametro CREDENTIALS
<a name="copy-credentials"></a>

### CREDENTIALS
<a name="copy-credentials-cred"></a>

Una clausola che indica il metodo utilizzato dal cluster per accedere ad altre AWS risorse che contengono file di dati o file manifest. Non è possibile utilizzare il parametro CREDENTIALS con IAM\$1ROLE o ACCESS\$1KEY\$1ID e SECRET\$1ACCESS\$1KEY.

Di seguito è mostrata la sintassi del parametro CREDENTIALS.

```
[WITH] CREDENTIALS [AS] 'credentials-args'
```

**Nota**  
Per una maggiore flessibilità, consigliamo di utilizzare il parametro [IAM\$1ROLE](#copy-iam-role-iam) invece del parametro CREDENTIALS.

Facoltativamente, se utilizzi il parametro [ENCRYPTED](copy-parameters-data-source-s3.md#copy-encrypted), la stringa *credentials-args* fornisce anche la chiave di crittografia.

La stringa *credentials-args* prevede la distinzione tra maiuscole e minuscole e non deve contenere spazi.

Le parole chiave WITH e AS sono opzionali e vengono ignorate.

È possibile specificare [role-based access control](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based.phrase) o [key-based access control](copy-usage_notes-access-permissions.md#copy-usage_notes-access-key-based.phrase). In entrambi i casi, l'utente o il ruolo IAM deve disporre delle autorizzazioni necessarie per accedere alle risorse AWS specificate. Per ulteriori informazioni, consulta [Autorizzazioni IAM per COPY, UNLOAD e CREATE LIBRARY](copy-usage_notes-access-permissions.md#copy-usage_notes-iam-permissions). 

**Nota**  
Per salvaguardare le AWS credenziali e proteggere i dati sensibili, consigliamo vivamente di utilizzare il controllo degli accessi basato sui ruoli. 

Per specificare il controllo degli accessi basato su ruoli, fornisci la stringa *credentials-args* nel seguente formato.

```
'aws_iam_role=arn:aws:iam::<aws-account-id>:role/<role-name>'
```

Per utilizzare le credenziali del token temporanee, devi fornire l'ID chiave di accesso, la chiave di accesso segreta e il token temporanei. La stringa *credentials-args* è nel seguente formato. 

```
CREDENTIALS
'aws_access_key_id=<temporary-access-key-id>;aws_secret_access_key=<temporary-secret-access-key>;token=<temporary-token>'
```

Un comando COPY che utilizza il controllo degli accessi basato su ruoli con credenziali temporanee sarebbe simile all’istruzione di esempio seguente: 

```
COPY customer FROM 's3://amzn-s3-demo-bucket/mydata' 
CREDENTIALS
'aws_access_key_id=<temporary-access-key-id>;aws_secret_access_key=<temporary-secret-access-key-id>;token=<temporary-token>'
```

 Per ulteriori informazioni, consulta [Credenziali di sicurezza temporanee](copy-usage_notes-access-permissions.md#r_copy-temporary-security-credentials).

Se viene utilizzato il [ENCRYPTED](copy-parameters-data-source-s3.md#copy-encrypted) parametro, la stringa *credentials-args* ha il seguente formato, dove *<root-key>* è il valore della chiave principale utilizzata per crittografare i file.

```
CREDENTIALS
'<credentials-args>;master_symmetric_key=<root-key>'
```

Un comando COPY che utilizza il controllo degli accessi basato su ruoli con una chiave di crittografia sarebbe simile al comando di esempio seguente:

```
COPY customer FROM 's3://amzn-s3-demo-bucket/mydata' 
CREDENTIALS 
'aws_iam_role=arn:aws:iam::<account-id>:role/<role-name>;master_symmetric_key=<root-key>'
```