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
La COPY commande a besoin d'une autorisation pour accéder aux données d'une autre AWS ressource, notamment Amazon S3, AmazonEMR, Amazon DynamoDB et Amazon. EC2 Vous pouvez fournir cette autorisation en référençant un rôle AWS Identity and Access Management (IAM) attaché à votre cluster (contrôle d'accès basé sur les rôles). 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:
Utilisez l'une des méthodes suivantes pour autoriser la COPY commande :
-
IAM_ROLE paramètre
-
ACCESS_KEY_ID and SECRET_ACCESS_KEY paramètres
-
CREDENTIALSClause
- IAM_ ROLE {par défaut | 'arn:aws:iam : :
<Compte AWS-id>
:rôle/<role-name>
' } -
Utilisez le mot clé par défaut pour qu'Amazon Redshift utilise le IAM rôle défini par défaut et associé au cluster lors de l'exécution de la COPY commande.
Utilisez le nom de ressource Amazon (ARN) pour un IAM rôle que votre cluster utilise pour l'authentification et l'autorisation. Si vous spécifiez IAM _ROLE, vous ne pouvez pas utiliser ACCESS _ KEY _ID et SECRET _ ACCESS _ KEYTOKEN, SESSION _ ouCREDENTIALS.
Voici la syntaxe du ROLE paramètre IAM _.
IAM_ROLE { default | 'arn:aws:iam::
<Compte AWS-id>
:role/<role-name>
' }Pour de plus amples informations, veuillez consulter Contrôle d’accès basé sur les rôles.
- ACCESS_ KEY _ID 'access-key-id ' SECRET _ ACCESS _ KEY 'secret-access-key
-
Cette méthode d’autorisation n’est pas recommandée.
Note
Au lieu de fournir les informations 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 _ROLE. Pour de plus amples informations, veuillez consulter Contrôle d’accès basé sur les rôles.
- SESSION_ TOKEN « jeton temporaire »
-
Le jeton de séance à utiliser avec les informations d’identification d’accès temporaires. Lorsque SESSION _ TOKEN est spécifié, vous devez également utiliser ACCESS _ KEY _ID et _ SECRET ACCESS _ KEY pour fournir des informations d'identification de clé d'accès temporaires. Si vous spécifiez SESSION _, TOKEN vous ne pouvez pas utiliser IAM _ ROLE ouCREDENTIALS. Pour plus d'informations, consultez informations d’identification de sécurité temporaires le guide de IAM l'utilisateur.
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'utilisation d'un IAM rôle, Amazon Redshift crée automatiquement des informations d'identification utilisateur temporaires pour chaque session. Pour de plus amples informations, veuillez consulter Contrôle d’accès basé sur les rôles.
Ce qui suit montre la syntaxe du TOKEN paramètre SESSION _ avec les KEY paramètres ACCESS _ KEY _ID et SECRET _ ACCESS _.
ACCESS_KEY_ID '
<access-key-id>
' SECRET_ACCESS_KEY '<secret-access-key>
' SESSION_TOKEN '<temporary-token>
';Si vous spécifiez SESSION _, TOKEN vous ne pouvez pas utiliser CREDENTIALS ou IAM _ROLE.
- [WITH] CREDENTIALS [AS] 'credentials-args'
-
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 CREDENTIALS paramètre avec IAM _ ROLE ou ACCESS _ KEY _ID et SECRET _ ACCESS _KEY.
Note
Pour une flexibilité accrue, nous recommandons d'utiliser le IAM_ROLE paramètre au lieu du CREDENTIALS paramètre.
Le cas échéant, si le paramètre 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 ne sont pas pris en compte.
Vous pouvez spécifier role-based access control ou key-based access control. Dans les deux cas, le IAM rôle ou l'utilisateur doit disposer des autorisations requises pour accéder aux AWS ressources spécifiées. Pour de plus amples informations, veuillez consulter IAMautorisations pour COPYUNLOAD, et CREATE LIBRARY.
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>
'Pour de plus amples informations, veuillez consulter informations d’identification de sécurité temporaires.
Si le ENCRYPTED paramètre est utilisé, la chaîne credentials-args est au format suivant, où
<root-key>
est la valeur de la clé racine qui a été utilisée pour chiffrer les fichiers.CREDENTIALS '
<credentials-args>
;master_symmetric_key=<root-key>
'Par exemple, la COPY commande suivante utilise un contrôle d'accès basé sur les rôles avec une clé de chiffrement.
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>
'La COPY commande suivante illustre le contrôle d'accès basé sur les rôles à l'aide d'une clé de chiffrement.
copy customer from 's3://amzn-s3-demo-bucket/mydata' credentials 'aws_iam_role=arn:aws:iam::
<aws-account-id>
:role/<role-name>
;master_symmetric_key=<root-key>
'