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.
Étape 1. Création d'un IAM rôle pour Amazon Redshift
Votre cluster a besoin d'une autorisation pour accéder à votre catalogue de données externe dans AWS Glue Amazon Athena et à vos fichiers de données dans Amazon S3. Pour fournir cette autorisation, vous faites référence à un rôle AWS Identity and Access Management (IAM) attaché à votre cluster. Pour plus d'informations sur l'utilisation des rôles avec Amazon Redshift, consultez Autorisation COPY et UNLOAD opérations à l'aide de rôles. IAM
Note
Dans certains cas, vous pouvez migrer votre catalogue de données Athena vers un catalogue de AWS Glue données. Vous pouvez le faire si votre cluster se trouve dans une AWS région prise en charge et si le catalogue de données Athena contient des tables externes Redshift Spectrum. AWS Glue Pour utiliser le catalogue de AWS Glue données avec Redshift Spectrum, vous devrez peut-être modifier vos IAM politiques. Pour plus d’informations, consultez Mise à niveau vers le catalogue de données AWS Glue dans le Guide de l’utilisateur Athena.
Lorsque vous créez un rôle pour Amazon Redshift, choisissez une des approches suivantes :
Si vous utilisez Redshift Spectrum avec un catalogue de données Athena ou AWS Glue un catalogue de données, suivez les étapes décrites dans. Pour créer un IAM rôle pour Amazon Redshift
Si vous utilisez Redshift Spectrum avec un AWS Glue Data Catalog qui est activé pour AWS Lake Formation, suivez les étapes décrites dans les procédures suivantes :
Pour créer un IAM rôle pour Amazon Redshift
-
Ouvrez la IAMconsole
. -
Dans le panneau de navigation, choisissez Roles (Rôles).
-
Sélectionnez Create role (Créer un rôle).
-
Choisissez Service AWS comme entité de confiance, puis choisissez Redshift comme cas d’utilisation.
-
Sous Cas d'utilisation pour les autres AWS services, choisissez Redshift - Personnalisable, puis cliquez sur Suivant.
-
La page Add permissions policy (Ajouter une politique d’autorisations) s’affiche. Choisissez
AmazonS3ReadOnlyAccess
etAWSGlueConsoleFullAccess
, si vous utilisez le catalogue AWS Glue de données. Ou choisissezAmazonAthenaFullAccess
si vous utilisez le catalogue de données Athena. Choisissez Suivant.Note
La politique
AmazonS3ReadOnlyAccess
accorde à votre cluster un accès en lecture seule à tous les compartiments Amazon S3. Pour accorder l'accès uniquement à l' AWS exemple de compartiment de données, créez une nouvelle politique et ajoutez les autorisations suivantes.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": "arn:aws:s3:::redshift-downloads/*" } ] }
-
Pour Nom du rôle, indiquez le nom de votre rôle, par exemple
myspectrum_role
. -
Passez en revue les informations, puis choisissez Créer un rôle.
-
Dans le panneau de navigation, choisissez Roles (Rôles). Choisissez le nom de votre nouveau rôle pour afficher le résumé, puis copiez le rôle dans ARN votre presse-papiers. Cette valeur est le nom de ressource Amazon (ARN) du rôle que vous venez de créer. Vous utilisez cette valeur lorsque vous créez des tables externes pour référencer vos fichiers de données sur Amazon S3.
Pour créer un IAM rôle pour Amazon Redshift à l'aide d'un AWS Glue Data CatalogAWS Lake Formation
-
Ouvrez la IAM console à l'adresse https://console.aws.amazon.com/iam/
. -
Dans le panneau de navigation, choisissez Politiques.
Si vous sélectionnez Politiques pour la première fois, la page Bienvenue dans les politiques gérées s’affiche. Sélectionnez Get started (Mise en route).
-
Choisissez Create Policy (Créer une politique).
-
Choisissez de créer la politique dans l'JSONonglet.
-
Collez le document de JSON politique suivant, qui donne accès au catalogue de données mais refuse les autorisations d'administrateur pour Lake Formation.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "RedshiftPolicyForLF", "Effect": "Allow", "Action": [ "glue:*", "lakeformation:GetDataAccess" ], "Resource": "*" } ] }
-
Lorsque vous avez terminé, choisissez Review (Vérifier) pour vérifier la politique. Le programme de validation des politiques signale les éventuelles erreurs de syntaxe.
-
Sur la page Vérifier la politique, dans le champ Nom, saisissez
myspectrum_policy
pour nommer la politique que vous créez. (Facultatif) Entrez une description. Vérifiez le récapitulatif de politique pour voir les autorisations accordées par votre politique. Sélectionnez ensuite Créer une politique pour enregistrer votre travail.Une fois que vous avez créé une politique, vous pouvez fournir un accès à vos utilisateurs.
Pour activer l’accès, ajoutez des autorisations à vos utilisateurs, groupes ou rôles :
-
Utilisateurs et groupes dans AWS IAM Identity Center :
Créez un jeu d’autorisations. Suivez les instructions de la rubrique Création d’un jeu d’autorisations du Guide de l’utilisateur AWS IAM Identity Center .
-
Utilisateurs gérés IAM par le biais d'un fournisseur d'identité :
Créez un rôle pour la fédération d’identité. Suivez les instructions de la section Création d'un rôle pour un fournisseur d'identité tiers (fédération) dans le guide de IAM l'utilisateur.
-
IAMutilisateurs :
-
Créez un rôle que votre utilisateur peut assumer. Suivez les instructions de la section Création d'un rôle pour un IAM utilisateur dans le Guide de IAM l'utilisateur.
-
(Non recommandé) Attachez une politique directement à un utilisateur ou ajoutez un utilisateur à un groupe d’utilisateurs. Suivez les instructions de la section Ajouter des autorisations à un utilisateur (console) dans le guide de IAM l'utilisateur.
-
Pour accorder SELECT des autorisations sur la table afin d'effectuer des requêtes dans la base de données Lake Formation
-
Ouvrez la console Lake Formation à l'adresse https://console.aws.amazon.com/lakeformation/
. -
Dans le volet de navigation, sélectionnez Autorisations de lac de données, puis Accorder.
-
Suivez les instructions de la page Octroi d’autorisations de table à l’aide de la méthode de ressource nommée dans le Guide du développeur AWS Lake Formation . Saisissez les informations suivantes :
-
Pour IAMle rôle, choisissez le IAM rôle que vous avez créé,
myspectrum_role
. Lorsque vous exécutez l'éditeur de requêtes Amazon Redshift, celui-ci utilise ce IAM rôle pour autoriser l'accès aux données.Note
Pour accorder SELECT l'autorisation d'effectuer des requêtes sur la table d'un catalogue de données compatible avec Lake Formation, procédez comme suit :
Enregistrez le chemin d’accès aux données dans Lake Formation.
Accordez les autorisations utilisateur sur ce chemin dans Lake Formation..
Les tables créées se trouvent dans le chemin enregistré dans Lake Formation..
-
-
Choisissez Grant (Accorder).
Important
La bonne pratique consiste à n’autoriser l’accès qu’aux objets Amazon S3 sous-jacents par le biais des autorisations Lake Formation. Pour empêcher tout accès non approuvé, supprimez toute autorisation accordée aux objets Amazon S3 en dehors de Lake Formation. Si vous avez déjà accédé à des objets Amazon S3 avant de configurer Lake Formation, supprimez toutes les IAM politiques ou autorisations de compartiment précédemment définies. Pour plus d'informations, consultez les sections Mise à niveau AWS Glue des autorisations de données vers les autorisations du AWS Lake Formation modèle et de Lake Formation.