

 Amazon Redshift ne prendra plus en charge la création de nouveaux Python à UDFs partir du patch 198. UDFs Le Python existant continuera de fonctionner jusqu'au 30 juin 2026. Pour plus d’informations, consultez le [ billet de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Paramètres d’autorisation
<a name="copy-parameters-authorization"></a>

La commande COPY nécessite une autorisation pour accéder aux données d'une autre AWS ressource, notamment Amazon S3, Amazon EMR, Amazon DynamoDB et Amazon EC2. Vous fournissez cette autorisation en référençant un [rôle Gestion des identités et des accès AWS (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) qui est attaché à votre cluster (*contrôle d’accès basé sur le rôle*). Vous pouvez chiffrer vos données de chargement sur Amazon S3. 

Les rubriques suivantes fournissent plus de détails et des exemples d’options d’authentification:
+ [Autorisations IAM pour les commandes COPY, UNLOAD et CREATE LIBRARY](copy-usage_notes-access-permissions.md#copy-usage_notes-iam-permissions)
+ [Contrôle d’accès basé sur les rôles](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based)
+ [Contrôle d’accès basé sur les clés](copy-usage_notes-access-permissions.md#copy-usage_notes-access-key-based)

Utilisez l’un des paramètres suivants pour autoriser la commande COPY : 
+ [Utilisation du paramètre IAM\$1ROLE](#copy-iam-role) paramètre
+ Paramètres dans l’[Utilisation des paramètres ACCESS\$1KEY\$1ID et SECRET\$1ACCESS\$1KEY](#copy-access-key-id)
+ [Utilisation du paramètre CREDENTIALS](#copy-credentials)Clause 

## Utilisation du paramètre IAM\$1ROLE
<a name="copy-iam-role"></a>

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

Utilisez le mot clé par défaut pour qu’Amazon Redshift utilise le rôle IAM défini par défaut et associé au cluster lorsque la commande COPY s’exécute. 

Utilisez l’Amazon Resource Name (ARN) d’un rôle IAM que votre cluster utilise pour l’authentification et l’autorisation. Si vous spécifiez IAM\$1ROLE, vous ne pouvez pas utiliser ACCESS\$1KEY\$1ID et SECRET\$1ACCESS\$1KEY, SESSION\$1TOKEN ni CREDENTIALS.

L’exemple suivant montre la syntaxe du paramètre IAM\$1ROLE. 

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

Pour plus d’informations, consultez [Contrôle d’accès basé sur les rôles](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based). 

## Utilisation des paramètres ACCESS\$1KEY\$1ID et SECRET\$1ACCESS\$1KEY
<a name="copy-access-key-id"></a>

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

Cette méthode d’autorisation n’est pas recommandée. 

**Note**  
Plutôt que de fournir des informations d’identification d’accès sous forme de texte brut, nous vous recommandons vivement d’utiliser l’authentification basée sur les rôles en spécifiant le paramètre IAM\$1ROLE. Pour plus d’informations, consultez [Contrôle d’accès basé sur les rôles](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based). 

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

Le jeton de séance à utiliser avec les informations d’identification d’accès temporaires. Lorsque SESSION\$1TOKEN est spécifié, vous devez également utiliser ACCESS\$1KEY\$1ID et SECRET\$1ACCESS\$1KEY afin de fournir des informations d’identification de clé d’accès temporaire. Si vous spécifiez SESSION\$1TOKEN, vous ne pouvez utiliser ni IAM\$1ROLE, ni CREDENTIALS. Pour plus d’informations, consultez [informations d’identification de sécurité temporaires](copy-usage_notes-access-permissions.md#r_copy-temporary-security-credentials) dans le Guide de l’utilisateur IAM.

**Note**  
Plutôt que de créer des informations d’identification de sécurité temporaires, nous vous recommandons vivement d’utiliser l’authentification basée sur les rôles. Lorsque vous autorisez l’accès à l’aide d’un rôle IAM, Amazon Redshift crée automatiquement des informations d’identification utilisateur temporaires à chaque séance. Pour plus d'informations, consultez [Contrôle d’accès basé sur les rôles](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based). 

L’exemple suivant illustre la syntaxe du paramètre SESSION\$1TOKEN avec les paramètres ACCESS\$1KEY\$1ID et SECRET\$1ACCESS\$1KEY. 

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

Si vous spécifiez SESSION\$1TOKEN, vous ne pouvez utiliser ni IAM\$1ROLE, ni CREDENTIALS. 

## Utilisation du paramètre CREDENTIALS
<a name="copy-credentials"></a>

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

Clause qui indique la méthode que votre cluster utilisera pour accéder à d'autres AWS ressources contenant des fichiers de données ou des fichiers manifestes. Vous ne pouvez pas utiliser le paramètre CREDENTIALS avec IAM\$1ROLE ou ACCESS\$1KEY\$1ID et SECRET\$1ACCESS\$1KEY.

L’exemple suivant montre la syntaxe du paramètre CREDENTIALS.

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

**Note**  
Pour une meilleure flexibilité, nous vous recommandons d’utiliser le paramètre [IAM\$1ROLE](#copy-iam-role-iam) plutôt que le paramètre CREDENTIALS.

Le cas échéant, si le paramètre [ENCRYPTED](copy-parameters-data-source-s3.md#copy-encrypted) est utilisé, la chaîne *credentials-args* fournit également la clé de chiffrement.

La chaîne *credentials-args* est sensible à la casse et ne doit pas contenir d’espaces.

Les mots-clés WITH et AS sont facultatifs, et ils sont ignorés.

Vous pouvez spécifier [role-based access control](copy-usage_notes-access-permissions.md#copy-usage_notes-access-role-based.phrase) ou [key-based access control](copy-usage_notes-access-permissions.md#copy-usage_notes-access-key-based.phrase). Dans les deux cas, le rôle IAM ou l’utilisateur doit avoir les autorisations nécessaires pour accéder aux ressources AWS spécifiées. Pour de plus amples informations, veuillez consulter [Autorisations IAM pour les commandes COPY, UNLOAD et CREATE LIBRARY](copy-usage_notes-access-permissions.md#copy-usage_notes-iam-permissions). 

**Note**  
Pour protéger vos AWS informations d'identification et protéger les données sensibles, nous vous recommandons vivement d'utiliser un contrôle d'accès basé sur les rôles. 

Pour spécifier un contrôle d’accès basé sur les rôles, fournissez la chaîne *credentials-args* au format suivant :

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

Pour utiliser les informations d’identification de jeton temporaires, vous devez fournir l’ID de clé d’accès temporaire, la clé d’accès secrète temporaire et le jeton temporaire. La chaîne *credentials-args* doit être au format suivant. 

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

Une commande COPY utilisant le contrôle d’accès basé sur les rôles avec des informations d’identification temporaires ressemblerait à l’exemple suivant : 

```
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>'
```

 Pour de plus amples informations, veuillez consulter [informations d’identification de sécurité temporaires](copy-usage_notes-access-permissions.md#r_copy-temporary-security-credentials).

Si le [ENCRYPTED](copy-parameters-data-source-s3.md#copy-encrypted) paramètre est utilisé, la chaîne *credentials-args* est au format suivant, où *<root-key>* est la valeur de la clé racine utilisée pour chiffrer les fichiers.

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

Une commande COPY utilisant le contrôle d’accès basé sur les rôles avec une clé de chiffrement ressemblerait à l’exemple suivant :

```
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>'
```