Configuration de l'intégration AWS IAM d'Identity Center à Amazon Redshift - Amazon Redshift

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.

Configuration de l'intégration AWS IAM d'Identity Center à Amazon Redshift

Votre administrateur de cluster Amazon Redshift ou administrateur Amazon Redshift Serverless doit effectuer plusieurs étapes pour configurer Redshift en tant qu'application compatible avec Identity Center. AWS IAM Redshift peut ainsi découvrir AWS IAM Identity Center et s'y connecter automatiquement pour recevoir les services de connexion et d'annuaire des utilisateurs. Ensuite, lorsque votre administrateur Redshift crée un cluster ou un groupe de travail, il peut autoriser le nouvel entrepôt de données à utiliser AWS IAM Identity Center pour gérer l'accès à la base de données.

L'objectif de l'activation de Redshift en tant qu'application gérée par AWS IAM Identity Center est de vous permettre de contrôler les autorisations des utilisateurs et des groupes depuis AWS IAM Identity Center ou depuis un fournisseur d'identité tiers qui y est intégré. Lorsque les utilisateurs de votre base de données se connectent à une base de données Redshift, par exemple un analyste ou un data scientist, celui-ci vérifie leurs groupes dans AWS IAM Identity Center et ceux-ci correspondent aux noms de rôles dans Redshift. De cette manière, un groupe qui définit le nom d’un rôle de base de données Redshift peut accéder à un ensemble de tables pour l’analyse des ventes, par exemple. Les sections suivantes décrivent comment configurer cela.

Prérequis

Voici les conditions préalables à l'intégration d' AWS IAMIdentity Center à Amazon Redshift :

  • Configuration du compte : vous devez configurer AWS IAM Identity Center dans le compte de gestion de votre AWS organisation si vous prévoyez d'avoir des cas d'utilisation entre comptes ou si vous utilisez des clusters Redshift dans différents comptes avec la AWS IAM même instance d'Identity Center. Cela inclut la configuration de votre source d’identité. Pour plus d'informations, consultez Getting Started, les identités du personnel et les fournisseurs d'identité pris en charge dans le guide de l'utilisateur d'AWS IAMIdentity Center. Vous devez vous assurer que vous avez créé des utilisateurs ou des groupes dans AWS IAM Identity Center, ou que vous avez synchronisé des utilisateurs et des groupes à partir de votre source d'identité avant de pouvoir les attribuer aux données dans Redshift.

    Note

    Vous avez la possibilité d'utiliser une instance de compte d' AWS IAMIdentity Center, à condition que Redshift et AWS IAM Identity Center soient associés au même compte. Vous pouvez créer cette instance à l’aide d’un widget lorsque vous créez et configurez un cluster ou un groupe de travail Redshift.

  • Configuration d’un émetteur de jetons approuvé : dans certains cas, vous devrez peut-être utiliser un émetteur de jetons approuvé, qui est une entité capable d’émettre et de vérifier des jetons de confiance. Avant de pouvoir le faire, des étapes préliminaires sont nécessaires avant que l'administrateur Redshift chargé de configurer l'intégration AWS IAM d'Identity Center puisse sélectionner l'émetteur de jetons de confiance et ajouter les attributs nécessaires pour terminer la configuration. Cela peut inclure la configuration d'un fournisseur d'identité externe pour qu'il serve d'émetteur de jetons de confiance et l'ajout de ses attributs dans la console AWS IAM Identity Center. Pour effectuer ces étapes, consultez la section Utilisation d'applications avec un émetteur de jetons fiable.

    Note

    La configuration d’un émetteur de jetons approuvé n’est pas requise pour toutes les connexions externes. La connexion à votre base de données Redshift à l’aide de l’éditeur de requêtes Amazon Redshift v2 ne nécessite pas la configuration d’un émetteur de jetons approuvé. Toutefois, cela peut s’appliquer à des applications tierces telles que des tableaux de bord ou des applications personnalisées qui s’authentifient auprès de votre fournisseur d’identité.

  • Configuration d'un IAM ou de plusieurs rôles — Les sections suivantes mentionnent les autorisations qui doivent être configurées. Vous devrez ajouter des autorisations conformément aux IAM meilleures pratiques. Les autorisations spécifiques sont détaillées dans les procédures qui suivent.

Pour plus d'informations, consultez Getting Started with AWS IAM Identity Center.

Configuration de votre fournisseur d'identité pour qu'il fonctionne avec AWS IAM Identity Center

La première étape du contrôle de la gestion des identités des utilisateurs et des groupes consiste à vous connecter à AWS IAM Identity Center et à configurer votre fournisseur d'identité. Vous pouvez utiliser AWS IAM Identity Center lui-même comme fournisseur d'identité ou vous connecter à un magasin d'identité tiers, tel qu'Okta, par exemple. Pour plus d'informations sur l'établissement de la connexion et la configuration de votre fournisseur d'identité, consultez la section Se connecter à un fournisseur d'identité externe dans le guide de l'utilisateur d'AWS IAMIdentity Center. À la fin de ce processus, assurez-vous qu'une petite collection d'utilisateurs et de groupes a été ajoutée à AWS IAM Identity Center, à des fins de test.

Autorisations administratives

Autorisations requises pour la gestion du cycle de vie des applications Redshift/AWS IAM Identity Center

Vous devez créer une IAM identité qu'un administrateur Redshift utilisera pour configurer Redshift afin de l'utiliser avec Identity Center. AWS IAM Le plus souvent, vous créez un IAM rôle avec des autorisations et vous l'attribuez à d'autres identités selon les besoins. Il doit disposer des autorisations répertoriées pour effectuer les actions suivantes.

Création de l'application Redshift/ Identity Center AWS IAM

  • sso:PutApplicationAssignmentConfiguration : pour la sécurité.

  • sso:CreateApplication— Utilisé pour créer une application AWS IAM Identity Center.

  • sso:PutApplicationAuthenticationMethod : accorde l’accès à l’authentification Redshift.

  • sso:PutApplicationGrant : sert à modifier les informations relatives à l’émetteur de jetons approuvé.

  • sso:PutApplicationAccessScope— Pour la configuration de l'application Redshift AWS IAM Identity Center. Cela inclut les subventions d'accès pour AWS Lake Formation et pour Amazon S3.

  • redshift:CreateRedshiftIdcApplication— Utilisé pour créer l'application Redshift AWS IAM Identity Center.

Décrire l'application Redshift/ Identity Center AWS IAM

  • sso:GetApplicationGrant : sert à répertorier les informations relatives à l’émetteur de jetons approuvé.

  • sso:ListApplicationAccessScopes— Pour configurer l'application Redshift AWS IAM Identity Center afin de répertorier les intégrations en aval, telles que for AWS Lake Formation et S3 Access Grants.

  • redshift:DescribeRedshiftIdcApplications— Utilisé pour décrire les applications AWS IAM Identity Center existantes.

Modification de l'application Redshift/ Identity Center AWS IAM

  • redshift:ModifyRedshiftIdcApplication : sert à modifier une application Redshift existante.

  • sso:UpdateApplication— Utilisé pour mettre à jour une application AWS IAM Identity Center.

  • sso:GetApplicationGrant— Récupère les informations sur l'émetteur du jeton de confiance.

  • sso:ListApplicationAccessScopes— Pour la configuration de l'application Redshift AWS IAM Identity Center.

  • sso:DeleteApplicationGrant : supprime les informations relatives à l’émetteur de jetons approuvé.

  • sso:PutApplicationGrant : sert à modifier les informations relatives à l’émetteur de jetons approuvé.

  • sso:PutApplicationAccessScope— Pour la configuration de l'application Redshift AWS IAM Identity Center. Cela inclut les subventions d'accès pour AWS Lake Formation et pour Amazon S3.

  • sso:DeleteApplicationAccessScope— Pour supprimer la configuration de l'application Redshift AWS IAM Identity Center. Cela inclut les subventions d'accès pour AWS Lake Formation et pour Amazon S3.

Suppression de l'application Redshift/ Identity Center AWS IAM

  • sso:DeleteApplication— Utilisé pour supprimer une application AWS IAM Identity Center.

  • redshift:DeleteRedshiftIdcApplication— Permet de supprimer une application Redshift AWS IAM Identity Center existante.

Autorisations requises pour la gestion du cycle de vie des applications RedShift/Query Editor v2

Vous devez créer une IAM identité qu'un administrateur Redshift utilisera pour configurer Redshift afin de l'utiliser avec Identity Center. AWS IAM Le plus souvent, vous créez un IAM rôle avec des autorisations et vous l'attribuez à d'autres identités selon les besoins. Il doit disposer des autorisations répertoriées pour effectuer les actions suivantes.

Création de l'application Query Editor v2

  • redshift:CreateQev2IdcApplication— Utilisé pour créer l'QEV2application.

  • sso:CreateApplication— Permet de créer une application AWS IAM Identity Center.

  • sso:PutApplicationAuthenticationMethod : accorde l’accès à l’authentification Redshift.

  • sso:PutApplicationGrant : sert à modifier les informations relatives à l’émetteur de jetons approuvé.

  • sso:PutApplicationAccessScope— Pour la configuration de l'application Redshift AWS IAM Identity Center. Cela inclut l’éditeur de requêtes v2.

  • sso:PutApplicationAssignmentConfiguration : pour la sécurité.

Décrire l'application de l'éditeur de requêtes v2

  • redshift:DescribeQev2IdcApplications— Utilisé pour décrire l'QEV2application AWS IAM Identity Center.

Modifier l'application de l'éditeur de requêtes v2

  • redshift:ModifyQev2IdcApplication— Utilisé pour modifier l'QEV2application AWS IAM Identity Center.

  • sso:UpdateApplication— Utilisé pour modifier l'QEV2application AWS IAM Identity Center.

Supprimer l'application de l'éditeur de requêtes v2

  • redshift:DeleteQev2IdcApplication— Utilisé pour supprimer l'QEV2application.

  • sso:DeleteApplication— Utilisé pour supprimer l'QEV2application.

Note

Dans Amazon RedshiftSDK, les éléments suivants APIs ne sont pas disponibles :

  • CreateQev2 IdcApplication

  • DescribeQev2 IdcApplications

  • ModifyQev2 IdcApplication

  • DeleteQev2 IdcApplication

Ces actions sont spécifiques à l'intégration AWS IAM d'Identity Center à Redshift QEV2 dans la AWS console. Pour plus d'informations, consultez la section Actions définies par Amazon Redshift.

Autorisations requises pour que l'administrateur de base de données puisse connecter de nouvelles ressources dans la console

Ces autorisations sont requises pour connecter de nouveaux clusters provisionnés ou des groupes de travail Amazon Redshift sans serveur au cours du processus de création. Si vous disposez de ces autorisations, une sélection apparaît dans la console pour choisir de vous connecter à l'application gérée par AWS IAM Identity Center pour Redshift.

  • redshift:DescribeRedshiftIdcApplications

  • sso:ListApplicationAccessScopes

  • sso:GetApplicationAccessScope

  • sso:GetApplicationGrant

Il est recommandé d'associer des politiques d'autorisation à un IAM rôle, puis de l'attribuer aux utilisateurs et aux groupes selon les besoins. Pour plus d’informations, consultez Identity and Access Management dans Amazon Redshift.

Configuration de Redshift en tant qu'application AWS gérée avec AWS IAM Identity Center

Avant qu' AWS IAMIdentity Center puisse gérer les identités d'un cluster provisionné par Amazon Redshift ou d'un groupe de travail Amazon Redshift Serverless, l'administrateur Redshift doit suivre les étapes nécessaires pour faire de Redshift une application gérée par Identity Center : AWS IAM

  1. Sélectionnez AWS IAMIdentity Center integration dans le menu de la console Amazon Redshift ou Amazon Redshift Serverless, puis sélectionnez Connect to Identity Center. AWS IAM À partir de là, vous devez effectuer une série de sélections pour renseigner les propriétés d'intégration AWS IAM d'Identity Center.

  2. Choisissez un nom d'affichage et un nom unique pour l'application gérée par Redshift AWS IAM Identity Center.

  3. Spécifiez l’espace de noms de votre organisation. Il s’agit généralement d’une version abrégée du nom de votre organisation. Il est ajouté en tant que préfixe pour les utilisateurs et les rôles gérés par AWS IAM Identity Center dans la base de données Redshift.

  4. Sélectionnez IAM le rôle à utiliser. Ce IAM rôle doit être distinct des autres rôles utilisés pour Redshift, et nous vous recommandons de ne pas l'utiliser à d'autres fins. Les autorisations de politique spécifiques requises sont les suivantes :

    • sso:DescribeApplication : requise pour créer une entrée de fournisseur d’identité (IdP) dans le catalogue.

    • sso:DescribeInstance : sert à créer manuellement des rôles ou des utilisateurs fédérés par le fournisseur d’identité.

  5. Configurez les connexions client et les émetteurs de jetons approuvés. La configuration d’émetteurs de jetons approuvés facilite la propagation d’identités approuvées en établissant une relation avec un fournisseur d’identité externe. La propagation de l’identité permet à un utilisateur, par exemple, de se connecter à une application et d’accéder à des données spécifiques dans une autre application. Cela permet aux utilisateurs de collecter des données à partir d’emplacements distincts de manière plus fluide. À ce stade, dans la console, vous définissez les attributs de chaque émetteur de jetons approuvé. Ces attributs incluent le nom et la réclamation d’audience (ou aud claim), que vous devrez peut-être obtenir à partir des attributs de configuration de l’outil ou du service. Vous devrez peut-être également fournir le nom de l'application à partir du jeton JSON Web de l'outil tiers (JWT).

    Note

    L’élément aud claim requis à partir de chaque outil ou service tiers peut varier en fonction du type de jeton, qui peut être un jeton d’accès émis par un fournisseur d’identité, ou d’un autre type, tel qu’un jeton d’identification. Chaque fournisseur peut être différent. Lorsque vous implémentez la propagation d’identité approuvée et intégrez Redshift, il est nécessaire de fournir la valeur aud correcte pour le type de jeton que l’outil tiers envoie à AWS. Consultez les recommandations de votre fournisseur d’outils ou de services.

    Pour obtenir des informations détaillées sur la propagation d’identité approuvée, consultez Fonctionnement de la propagation d’identité approuvée. Reportez-vous également à la documentation bêta d' AWS IAMIdentity Center qui accompagne cette documentation.

Une fois que l'administrateur Redshift a terminé les étapes et enregistré la configuration, les propriétés AWS IAM d'Identity Center apparaissent dans la console Redshift. Vous pouvez également interroger la vue système SVV_ IDENTITY _ PROVIDERS pour vérifier les propriétés de l'application. Celles-ci incluent le nom de l’application et l’espace de noms. Vous utilisez l’espace de noms comme préfixe pour les objets de base de données Redshift associés à l’application. L'exécution de ces tâches fait de Redshift une application compatible avec AWS IAM Identity Center. Les propriétés de la console incluent l’état de l’intégration. Il indique Activé lorsque l’intégration est terminée. À l'issue de ce processus, l'intégration d' AWS IAMIdentity Center peut être activée sur chaque nouveau cluster.

Après la configuration, vous pouvez inclure les utilisateurs et les groupes d' AWS IAMIdentity Center dans Redshift en choisissant l'onglet Utilisateurs ou Groupes, puis en choisissant Attribuer.

Activation de l'intégration d' AWS IAMIdentity Center pour un nouveau cluster Amazon Redshift ou un nouveau groupe de travail Amazon Redshift Serverless

Votre administrateur de base de données configure les nouvelles ressources Redshift pour qu'elles fonctionnent en harmonie AWS IAM avec Identity Center afin de faciliter la connexion et l'accès aux données. Cela s’effectue dans le cadre des étapes de création d’un cluster provisionné ou d’un groupe de travail sans serveur. Toute personne autorisée à créer des ressources Redshift peut effectuer ces tâches d'intégration AWS IAM d'Identity Center. Lorsque vous créez un cluster provisionné, vous commencez par choisir Create Cluster dans la console Amazon Redshift. Les étapes suivantes montrent comment activer la gestion AWS IAM d'Identity Center pour une base de données. (Elle n’inclut pas toutes les étapes de création d’un cluster.)

  1. Choisissez Activer pour <your cluster name>dans la section relative à l'intégration d'IAMIdentity Center lors des étapes de création du cluster.

  2. Le processus comporte une étape où vous activez l’intégration. Pour ce faire, sélectionnez Activer IAM l'intégration d'Identity Center dans la console.

  3. Pour le nouveau cluster ou groupe de travail, créez des rôles de base de données dans Redshift SQL à l'aide de commandes. Voici la commande :

    CREATE ROLE <idcnamespace:rolename>;

    L’espace de noms et le nom du rôle sont les suivants :

    • IAMPréfixe d'espace de noms Identity Center : il s'agit de l'espace de noms que vous avez défini lorsque vous avez configuré la connexion entre AWS IAM Identity Center et Redshift.

    • Nom du rôle : ce rôle de base de données Redshift doit correspondre au nom du groupe dans AWS IAM Identity Center.

    Redshift se connecte à AWS IAM Identity Center et récupère les informations nécessaires pour créer et associer le rôle de base de données au groupe AWS IAM Identity Center.

Notez que lorsqu'un nouvel entrepôt de données est créé, le IAM rôle spécifié pour l'intégration AWS IAM d'Identity Center est automatiquement associé au cluster provisionné ou au groupe de travail Amazon Redshift Serverless. Après avoir saisi les métadonnées de cluster requises et créé la ressource, vous pouvez vérifier l'état de l'intégration d' AWS IAMIdentity Center dans les propriétés. Si les noms de vos groupes dans AWS IAM Identity Center comportent des espaces, vous devez utiliser des guillemets SQL lorsque vous créez le rôle correspondant.

Après avoir activé la base de données Redshift et créé des rôles, vous êtes prêt à vous connecter à la base de données avec l’éditeur de requêtes Amazon Redshift v2 ou Amazon QuickSight. Les détails sont expliqués dans les sections suivantes.

Configuration de la valeur par défaut RedshiftIdcApplication à l'aide du API

La configuration est effectuée par votre administrateur d’identité. À l'aide duAPI, vous créez et renseignez unRedshiftIdcApplication, qui représente l'application Redshift AWS IAM dans Identity Center.

  1. Pour commencer, vous pouvez créer des utilisateurs et les ajouter à des groupes dans AWS IAM Identity Center. Vous pouvez le faire dans la AWS console d' AWS IAMIdentity Center.

  2. Appelez create-redshift-idc-application pour créer une application AWS IAM Identity Center et la rendre compatible avec l'utilisation de Redshift. Vous créez l’application en renseignant les valeurs requises. Le nom d'affichage est le nom à afficher sur le tableau de bord AWS IAM d'Identity Center. Le IAM rôle ARN est autorisé ARN à accéder à AWS IAM Identity Center et Redshift peut également l'assumer.

    aws redshift create-redshift-idc-application ––idc-instance-arn 'arn:aws:sso:::instance/ssoins-1234a01a1b12345d' ––identity-namespace 'MYCO' ––idc-display-name 'TEST-NEW-APPLICATION' ––iam-role-arn 'arn:aws:redshift:us-east-1:012345678901:role/TestRedshiftRole' ––redshift-idc-application-name 'myredshiftidcapplication'

    L’exemple suivant montre un exemple de réponse RedshiftIdcApplication renvoyé à partir de l’appel à create-redshift-idc-application.

    "RedshiftIdcApplication": { "IdcInstanceArn": "arn:aws:sso:::instance/ssoins-1234a01a1b12345d", "RedshiftIdcApplicationName": "test-application-1", "RedshiftIdcApplicationArn": "arn:aws:redshift:us-east-1:012345678901:redshiftidcapplication:12aaa111-3ab2-3ab1-8e90-b2d72aea588b", "IdentityNamespace": "MYCO", "IdcDisplayName": "Redshift-Idc-Application", "IamRoleArn": "arn:aws:redshift:us-east-1:012345678901:role/TestRedshiftRole", "IdcManagedApplicationArn": "arn:aws:sso::012345678901:application/ssoins-1234a01a1b12345d/apl-12345678910", "IdcOnboardStatus": "arn:aws:redshift:us-east-1:123461817589:redshiftidcapplication", "RedshiftIdcApplicationArn": "Completed", "AuthorizedTokenIssuerList": [ "TrustedTokenIssuerArn": ..., "AuthorizedAudiencesList": [...]... ]}
  3. Vous pouvez l'utiliser create-application-assignment pour attribuer des groupes particuliers ou des utilisateurs individuels à l'application gérée dans AWS IAM Identity Center. Ce faisant, vous pouvez spécifier les groupes à gérer via AWS IAM Identity Center. Si l'administrateur de base de données crée des rôles de base de données dans Redshift, les noms de groupe dans AWS IAM Identity Center correspondent aux noms de rôles dans Redshift. Les rôles contrôlent les autorisations dans la base de données. Pour plus d'informations, voir Attribuer un accès utilisateur aux applications dans la console AWS IAM Identity Center.

  4. Après avoir activé l'application, appelez create-cluster et incluez l'application gérée Redshift ARN depuis AWS IAM Identity Center. Cela permet d'associer le cluster à l'application gérée dans AWS IAM Identity Center.

Associer une application AWS IAM Identity Center à un cluster ou à un groupe de travail existant

Si vous avez un cluster ou un groupe de travail existant que vous souhaitez activer pour l'intégration AWS IAM d'Identity Center, il est possible de le faire en exécutant des SQL commandes. Vous pouvez également exécuter SQL des commandes pour modifier les paramètres de l'intégration. Pour plus d'informations, consultez ALTERIDENTITYPROVIDER.

Il est également possible de supprimer un fournisseur d'identité existant. L'exemple suivant montre comment CASCADE supprimer les utilisateurs et les rôles attachés au fournisseur d'identité.

DROP IDENTITY PROVIDER <provider_name> [ CASCADE ]

Configuration des autorisations utilisateur

Un administrateur configure les autorisations d'accès à différentes ressources, en fonction des attributs d'identité des utilisateurs et de leur appartenance à un groupe, au sein de leur fournisseur d'identité ou directement dans AWS IAM Identity Center. Par exemple, l'administrateur du fournisseur d'identité peut ajouter un ingénieur de base de données à un groupe correspondant à son rôle. Ce nom de groupe correspond à un nom de rôle de base de données Redshift. Le rôle fournit ou restreint l’accès à des tables ou à des vues spécifiques dans Redshift.