

 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.

# Options visant à fournir des informations d’identification IAM
<a name="options-for-providing-iam-credentials"></a>

Pour fournir des informations d'identification IAM pour une connexion JDBC ou ODBC, choisissez une des options suivantes.
+ **AWS profile** 

  Au lieu de saisir les valeurs d'informations d'identification sous la forme de paramètres JDBC ou ODBC, vous pouvez inclure les valeurs dans un profil nommé. Pour plus d'informations, consultez [Utilisation d’un profil de configuration](#using-configuration-profile).
+ **Informations d'identification IAM**

  Fournissez des valeurs pour l' AccessKeyID et SecretAccessKey, éventuellement, SessionToken sous la forme de paramètres JDBC ou ODBC. SessionToken est requis uniquement pour un rôle IAM doté d'informations d'identification temporaires. Pour de plus amples informations, veuillez consulter [Options JDBC et ODBC visant à fournir des informations d’identification IAM](#jdbc-options-for-providing-iam-credentials).
+ **Fédération du fournisseur d'identité** 

  Lorsque vous utilisez la fédération de fournisseurs d'identité pour permettre aux utilisateurs d'un fournisseur d'identité de s'authentifier auprès d'Amazon Redshift, spécifiez le nom d'un plugin de fournisseur d'informations d'identification. Pour plus d'informations, consultez [Plug-in de fournisseur d’informations](#using-credentials-provider-plugin).

  Les pilotes Amazon Redshift JDBC et ODBC incluent des plugins pour les fournisseurs d'informations d'identification de fédération d'identité basées sur SAML suivants : 
  + Microsoft Active Identity Federation Services (AD FS)
  + PingOne
  + Okta
  + Microsoft Azure Active Directory (Azure AD)

  Vous pouvez fournir le nom de plugin et les valeurs associées sous la forme de paramètres JDBC ou ODBC ou en utilisant un profil. Pour plus d’informations, consultez [Options de configuration du pilote JDBC version 2.x](jdbc20-configuration-options.md). 

Pour plus d’informations, consultez [Étape 5 : Configurer une connexion JDBC ou ODBC pour utiliser des informations d'identification IAM](generating-iam-credentials-steps.md#generating-iam-credentials-configure-jdbc-odbc).

## Utilisation d’un profil de configuration
<a name="using-configuration-profile"></a>

Vous pouvez fournir les options d'identification IAM et les `GetClusterCredentials` options sous forme de paramètres dans les profils nommés de votre fichier AWS de configuration. Fournissez le nom de profil, utilisez l'option Profil JDBC. La configuration est stockée dans un fichier nommé `config` ou un fichier nommé `credentials` dans un dossier nommé `.aws` dans votre répertoire personnel.

Pour un plugin de fournisseur d'informations d'identification basé sur SAML inclus dans un pilote JDBC ou ODBC d'Amazon Redshift, vous pouvez utiliser les paramètres décrits précédemment dans [Plug-in de fournisseur d’informations](#using-credentials-provider-plugin). Si `plugin_name` n'est pas utilisé, les autres options sont ignorées.

L'exemple suivant montre le fichier \$1/.aws/credentials avec deux profils.

```
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

[user2]
aws_access_key_id=AKIAI44QH8DHBEXAMPLE
aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY
session_token=AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGd
QrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU
9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz
+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
```

Pour utiliser les informations d'identification pour l'exemple `user2`, spécifiez `Profile=user2` dans l'URL JDBC.

Pour plus d'informations sur l'utilisation des profils, consultez [la section Configuration et paramètres des fichiers d'identification](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) dans le *Guide de l' AWS Command Line Interface utilisateur*. 

Pour plus d'informations sur l'utilisation des profils pour le pilote JDBC, consultez [Spécification des profils](jdbc20-configure-authentication-ssl.md#jdbc20-aws-credentials-profiles). 

Pour plus d'informations sur l'utilisation des profils pour le pilote ODBC, consultez [Méthodes d’authentification](odbc20-authentication-ssl.md). 

## Options JDBC et ODBC visant à fournir des informations d’identification IAM
<a name="jdbc-options-for-providing-iam-credentials"></a>

Le tableau suivant répertorie les Options JDBC et ODBC visant à fournir des informations d'identification IAM.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/mgmt/options-for-providing-iam-credentials.html)

## Options JDBC et ODBC pour la création d’informations d’identification de l’utilisateur de base de données
<a name="jdbc-and-odbc-options-for-database-credentials"></a>

Pour utiliser le pilote JDBC ou ODBC Amazon Redshift pour créer des informations d'identification de l'utilisateur de base de données, fournissez le nom de l'utilisateur de la base de données en tant qu'option JDBC ou ODBC. Vous pouvez aussi faire en sorte que le pilote crée un nouvel utilisateur de base de données s'il n'en existe pas, et vous pouvez spécifier une liste de groupes d'utilisateurs de bases de données que l'utilisateur rejoint lors de la connexion. 

Si vous utilisez un fournisseur d'identité (IdP), collaborez avec votre administrateur IdP pour déterminer les valeurs correctes pour ces options. Votre administrateur IdP peut aussi configurer votre IdP pour fournir ces options, auquel cas il n'est pas nécessaire que vous les fournissiez en tant qu'options JDBC ou ODBC. Pour plus d’informations, consultez [Étape 2 : Configurer des assertions SAML pour votre IdP](generating-iam-credentials-steps.md#configuring-saml-assertions). 

**Note**  
Si vous utilisez la variable de politique IAM `${redshift:DbUser}`, comme décrit dans [Politiques en matière de ressources pour GetClusterCredentials](redshift-iam-access-control-identity-based.md#redshift-policy-resources.getclustercredentials-resources), la valeur pour `DbUser` est remplacée par la valeur récupérée par le contexte de demande de l'opération d'API. Les pilotes Amazon Redshift utilisent la valeur de la variable `DbUser` fournie par l'URL de connexion, plutôt que la valeur fournie comme attribut SAML.   
Pour sécuriser cette configuration, nous vous recommandons d'utiliser une condition dans une politique IAM pour valider la valeur `DbUser` avec le `RoleSessionName`. Vous pouvez trouver des exemples montrant comment définir une condition dans une politique IAM dans [Exemple 8 : stratégie IAM pour l'utilisation GetClusterCredentials](redshift-iam-access-control-identity-based.md#redshift-policy-examples-getclustercredentials).

Le tableau suivant répertorie les options à utiliser la création d'informations d'identification de l'utilisateur de base de données. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/mgmt/options-for-providing-iam-credentials.html)

## Plug-in de fournisseur d’informations
<a name="using-credentials-provider-plugin"></a>

Amazon Redshift utilise des plugins de fournisseur d'informations d'identification pour l'authentification unique.

Pour prendre en charge l'authentification unique, Amazon Redshift fournit le plugin Azure AD pour Microsoft Azure Active Directory. Pour plus d'informations sur la configuration de ce plugin, consultez [Configuration de l’authentification unique JDBC ou ODBC](setup-azure-ad-identity-provider.md).

### Authentification multifacteur
<a name="setting_mfa"></a>

Pour prendre en charge l'authentification multifacteur (MFA), Amazon Redshift fournit des plugins basés sur un navigateur. Utilisez le plug-in SAML du navigateur pour Okta et PingOne le plug-in Azure AD du navigateur pour Microsoft Azure Active Directory.

Avec le plugin SAML du navigateur, OAuth l'authentification se déroule comme suit :

![\[OAuth des flux de travail expliquant comment le plugin, le serveur local, le navigateur Web et le point de terminaison fonctionnent ensemble pour authentifier un utilisateur à l'aide de l'authentification SAML.\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/mgmt/images/BrowserSAML_plugin.png)


1. Un utilisateur essaie de se connecter.

1. Le plugin lance un serveur local pour écouter les connexions entrantes sur le localhost.

1. Le plugin lance un navigateur Web pour demander une réponse SAML via HTTPS à partir du point de terminaison du fournisseur d'identité fédérée d'URL de connexion par authentification unique spécifié.

1. Le navigateur web suit le lien et invite l'utilisateur à entrer des informations d'identification.

1. Une fois que l'utilisateur s'authentifie et accorde son consentement, le point de terminaison du fournisseur d'identité fédérée renvoie une réponse SAML sur HTTPS à l'URI indiqué par `redirect_uri`.

1. Le navigateur web déplace le message de réponse avec la réponse SAML au `redirect_uri` indiqué.

1. Le serveur local accepte la connexion entrante et le plugin récupère la réponse SAML et la transmet à Amazon Redshift.

Avec le plugin Azure AD du navigateur, l'authentification SAML s'effectue comme suit :

![\[Des flux de travail Azure expliquant comment le plug-in, le serveur local, le navigateur Web et le point de terminaison fonctionnent ensemble pour authentifier un utilisateur à l’aide de l’authentification SAML.\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/mgmt/images/BrowserAzure_plugin.png)


1. Un utilisateur essaie de se connecter.

1. Le plugin lance un serveur local pour écouter les connexions entrantes sur le localhost.

1. Le plugin lance un navigateur web pour demander un code d'autorisation à partir du point de terminaison `oauth2/authorize` Azure AD.

1. Le navigateur web suit le lien généré via HTTPS et invite l'utilisateur à entrer des informations d'identification. Le lien est généré à l'aide des propriétés de configuration, telles que le locataire et client\$1id.

1. Une fois que l'utilisateur s'est authentifié et a accordé son consentement, le point de terminaison `oauth2/authorize` Azure AD est renvoyé et envoie une réponse via HTTPS avec le code d'autorisation au `redirect_uri` indiqué.

1. Le navigateur web déplace le message de réponse avec la réponse SAML au `redirect_uri` indiqué.

1. Le serveur local accepte la connexion entrante et le plugin demande et récupère le code d'autorisation et envoie une requête POST au point de terminaison `oauth2/token` Azure AD.

1. Le point de terminaison `oauth2/token` Azure AD renvoie une réponse avec un jeton d'accès au `redirect_uri` indiqué.

1. Le plugin récupère la réponse SAML et la transmet à Amazon Redshift.

Examinez les sections suivantes :
+ Active Directory Federation Services (AD FS)

  Pour de plus amples informations, veuillez consulter [Configuration de l’authentification unique JDBC ou ODBC](setup-azure-ad-identity-provider.md).
+ PingOne (Ping) 

  Le ping n'est pris en charge qu'avec l'adaptateur PingOne IdP prédéterminé utilisant l'authentification par formulaire. 

  Pour de plus amples informations, veuillez consulter [Configuration de l’authentification unique JDBC ou ODBC](setup-azure-ad-identity-provider.md).
+ Okta 

  Okta est pris en charge uniquement pour l'application fournie par Okta utilisée avec le AWS Management Console. 

  Pour plus d’informations, consultez [Configuration de l’authentification unique JDBC ou ODBC](setup-azure-ad-identity-provider.md).
+ Microsoft Azure Active Directory (Azure AD)

  Pour plus d’informations, consultez [Configuration de l’authentification unique JDBC ou ODBC](setup-azure-ad-identity-provider.md).

### Options de plug-in
<a name="configuring_plugin_options"></a>

Pour utiliser un plugin de fournisseur d'informations d'identification basées sur SAML, spécifiez les options suivantes à l'aide des options JDBC ou ODBC ou dans un profil nommé. Si `plugin_name` n'est pas spécifié, les autres options sont ignorées.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/mgmt/options-for-providing-iam-credentials.html)

# Génération d’informations d’identification de base de données pour une identité IAM à l’aide de la CLI ou de l’API d’Amazon Redshift
<a name="generating-iam-credentials-cli-api"></a>

Pour générer par programmation des informations d'identification utilisateur temporaires de base de données, Amazon Redshift fournit [get-cluster-credentials](https://docs.aws.amazon.com/cli/latest/reference/redshift/get-cluster-credentials.html)la commande pour le AWS CLI() et AWS Command Line Interface [GetClusterCredentials](https://docs.aws.amazon.com/redshift/latest/APIReference/API_GetClusterCredentials.html)l'opération API. Ou vous pouvez configurer votre client SQL avec les pilotes Amazon Redshift JDBC ou ODBC qui gèrent le processus d'appel de l'opération `GetClusterCredentials`, la récupération des informations d'identification de l'utilisateur de la base de données et l'établissement d'une connexion entre votre client SQL et votre base de données Amazon Redshift. Pour plus d'informations, consultez [Options JDBC et ODBC pour la création d’informations d’identification de l’utilisateur de base de données](options-for-providing-iam-credentials.md#jdbc-and-odbc-options-for-database-credentials).

**Note**  
Nous vous recommandons d'utiliser les pilotes JDBC ou ODBC d'Amazon Redshift pour générer les informations d'identification des utilisateurs de la base de données.

Dans cette section, vous trouverez les étapes permettant d'appeler l'`GetClusterCredentials`opération ou la get-cluster-credentials commande par programme, de récupérer les informations d'identification de l'utilisateur de la base de données et de se connecter à la base de données.

**Pour générer et utiliser des informations d'identification temporaires de base de données**

1. Créez ou modifiez un utilisateur ou un rôle avec les autorisations requises. Pour plus d’informations sur les autorisations IAM, consultez [Étape 3 : créer un rôle IAM autorisé à appeler GetClusterCredentialsWith IAM ou GetClusterCredentials](generating-iam-credentials-steps.md#generating-iam-credentials-role-permissions).

1. En tant qu'utilisateur ou rôle que vous avez autorisé à l'étape précédente, exécutez la commande get-cluster-credentials CLI ou appelez l'opération `GetClusterCredentials` API et fournissez les valeurs suivantes :
   + **Identifiant du cluster** – Le nom du cluster qui contient la base de données.
   + **Nom d'utilisateur de la base de données** – Le nom d'un utilisateur de base de données, existant ou nouveau.
     + Si l'utilisateur n'existe pas dans la base de données et AutoCreate qu'il est vrai, un nouvel utilisateur est créé avec le MOT DE PASSE désactivé.
     +  Si l'utilisateur n'existe pas et qu' AutoCreate il est faux, la demande échoue. 
     + Pour cet exemple, le nom de l'utilisateur de la base de données est `temp_creds_user`. 
   +  **Autocreate** – (Facultatif) Créez un utilisateur si le nom de l'utilisateur de la base de données n'existe pas.
   +  **Nom de base de données** – (Facultatif) Le nom de la base de données à laquelle l'utilisateur est autorisé à se connecter. Si aucun nom de base de données n'est spécifié, l'utilisateur peut se connecter à n'importe quelle base de données de cluster.
   +  **Groupes de bases de données** – (Facultatif) Une liste des groupes d'utilisateurs de bases de données existants. Lorsque la connexion réussit, l'utilisateur de base de données est ajouté aux groupes d'utilisateurs spécifiés. Si aucun groupe n'est spécifié, l'utilisateur dispose uniquement des autorisations PUBLIC. Les noms des groupes d'utilisateurs doivent correspondre aux ressources dbgroup ARNs spécifiées dans la politique IAM attachée à l'utilisateur ou au rôle. 
   +  **Durée d'expiration** – (Facultatif) La durée, en secondes, après laquelle les informations d'identification temporaires expirent. Vous pouvez spécifier une valeur comprise entre 900 secondes (15 minutes) et 3 600 secondes (60 minutes). Le durée par défaut est 900 secondes.

1. Amazon Redshift vérifie que l'utilisateur dispose de l'autorisation pour appeler l'opération `GetClusterCredentials` avec les ressources spécifiées. 

1. Amazon Redshift renvoie un mot de passe temporaire et le nom de l'utilisateur de la base de données.

   L'exemple suivant utilise Amazon Redshift CLI pour générer des informations d'identification temporaires de base de données pour un utilisateur existant nommé `temp_creds_user`.

   ```
   aws redshift get-cluster-credentials --cluster-identifier examplecluster --db-user temp_creds_user --db-name exampledb --duration-seconds 3600
   ```

   Le résultat est le suivant.

   ```
   {
     "DbUser": "IAM:temp_creds_user", 
     "Expiration": "2016-12-08T21:12:53Z", 
     "DbPassword": "EXAMPLEjArE3hcnQj8zt4XQj9Xtma8oxYEM8OyxpDHwXVPyJYBDm/gqX2Eeaq6P3DgTzgPg=="
   }
   ```

   L'exemple suivant utilise Amazon Redshift CLI avec autocreate pour générer des informations d'identification temporaires de base de données pour un nouvel utilisateur et l'ajouter au groupe `example_group`.

   ```
   aws redshift get-cluster-credentials --cluster-identifier examplecluster --db-user temp_creds_user --auto-create --db-name exampledb --db-groups example_group --duration-seconds 3600
   ```

   Le résultat est le suivant.

   ```
   {
     "DbUser": "IAMA:temp_creds_user:example_group", 
     "Expiration": "2016-12-08T21:12:53Z", 
     "DbPassword": "EXAMPLEjArE3hcnQj8zt4XQj9Xtma8oxYEM8OyxpDHwXVPyJYBDm/gqX2Eeaq6P3DgTzgPg=="
   }
   ```

1. Établissez une connexion avec authentification SSL (Secure Socket Layer) avec le cluster Amazon Redshift et envoyez une demande de connexion avec le nom d'utilisateur et le mot de passe fournis par la réponse `GetClusterCredentials`. Incluez le préfixe `IAM:` ou `IAMA:` avec le nom d'utilisateur, par exemple, `IAM:temp_creds_user` ou `IAMA:temp_creds_user`.
**Important**  
Configurez votre client SQL pour exiger SSL. Sinon, si votre client SQL tente automatiquement de se connecter avec SSL, il peut utiliser à nouveau une connexion non-SSL en cas d'échec. Dans ce cas, la première tentative de connexion peut échouer parce que les informations d'identification ont expiré ou ne sont pas valides, et une seconde tentative de connexion peut échouer parce que la connexion n'est pas de type SSL. Si cela se produit, le premier message d'erreur peut être manqué. Pour plus d'informations sur la connexion à votre cluster à l'aide de SSL, consultez [Configuration des options de sécurité des connexions](connecting-ssl-support.md).

1. Si la connexion n'utilise pas SSL, la tentative de connexion échoue. 

1. Le cluster envoie une demande `authentication` au client SQL. 

1. Le client SQL envoie le mot de passe temporaire au cluster. 

1. Si le mot de passe est valide et n'a pas expiré, le cluster établit la connexion. 

# Configuration de l’authentification unique JDBC ou ODBC
<a name="setup-azure-ad-identity-provider"></a>

Vous pouvez utiliser des fournisseurs d'identité externes (IdPs) pour authentifier et autoriser les utilisateurs à accéder à votre cluster Amazon Redshift, en simplifiant la gestion des utilisateurs et en renforçant la sécurité. Cela permet une gestion centralisée des utilisateurs, un contrôle d’accès basé sur les rôles et des fonctionnalités d’audit sur plusieurs services. Les cas d’utilisation courants incluent la rationalisation de l’authentification pour différents groupes d’utilisateurs, l’application de stratégies d’accès cohérentes et le respect des exigences réglementaires. 

Les pages suivantes vous guident dans la configuration de l’intégration d’IdP avec votre cluster Redshift. *Pour plus d'informations sur la configuration AWS en tant que fournisseur de services pour l'IdP, consultez les sections [Configuration de votre IdP SAML 2.0 en toute confiance et ajout de réclamations dans le](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_relying-party.html#saml_relying-party) guide de l'utilisateur IAM.*

# AD FS
<a name="setup-identity-provider-adfs"></a>

Ce didacticiel vous montre comment vous pouvez utiliser AD FS en tant que fournisseur d’identité (IdP) pour accéder à votre cluster Amazon Redshift.

## Étape 1 : configurer AD FS et votre AWS compte pour qu'ils se fassent mutuellement confiance
<a name="setup-identity-provider-adfs-trust"></a>

 La procédure suivante explique comment configurer une relation d’approbation. 

1. Créez ou utilisez un cluster Amazon Redshift existant pour que vos utilisateurs AD FS puissent se connecter. Pour configurer la connexion, certaines propriétés de ce cluster sont nécessaires, telles que l’identifiant de cluster. Pour de plus amples informations, veuillez consulter [Création d'un cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html).

1. Configurez AD FS pour contrôler l'accès à Amazon Redshift sur la Console de gestion Microsoft : 

   1. Choisissez **ADFS 2.0**, puis choisissez **Ajouter l'approbation de partie de confiance**. Dans la page **Assistant Ajout d'approbation de partie de confiance**, choisissez **Démarrer**.

   1. Sur la page **Sélectionner une source de données**, choisissez **Importer des données sur la partie de confiance publiées en ligne ou sur un réseau local**.

   1. Pour **Adresse de métadonnées de fédération (nom d'hôte ou URL)**, entrez **https://signin.aws.amazon.com/saml-metadata.xml**. Le fichier XML de métadonnées est un document de métadonnées SAML standard décrit AWS comme une partie utilisatrice.

   1. Dans la page **Spécifier un nom d'affichage**, entrez une valeur pour **Nom d'affichage**. 

   1. Sur la page **Choisir des règles d'autorisation** d'émission, choisissez une règle d'autorisation d'émission pour autoriser ou refuser à tous les utilisateurs l'accès à cette partie de confiance.

   1. Dans la page **Prêt à ajouter l'approbation**, vérifiez vos paramètres.

   1. Sur la page **Terminer**, choisissez **Ouvrir la boîte de dialogue Modifier les règles de revendication pour cette approbation de partie de confiance lorsque l'Assistant se ferme**.

   1. Dans le menu contextuel (clic droit), choisissez **Parties de confiance**.

   1. Pour votre partie de confiance, ouvrez le menu contextuel (clic droit) et choisissez **Modifier les règles de réclamation**. Dans la page **Modifier les règles de réclamation**, choisissez **Ajouter une règle**.

   1. Pour le **modèle de règle de réclamation**, choisissez **Transformer une réclamation entrante**, puis sur la NameId page **Modifier la règle**, procédez comme suit :
      + Dans **Nom de la règle de réclamation**, entrez **NameId**.
      + Pour **Nom de la réclamation entrante**, choisissez **Nom du compte Windows**.
      + Pour **Nom de la réclamation sortante**, choisissez **ID nom**.
      + Pour **Format d'ID de nom sortant**, choisissez **Identifiant persistant**.
      + Choisissez **Transférer toutes les valeurs de réclamation**.

   1. Dans la page **Modifier les règles de réclamation**, choisissez **Ajouter une règle**. Dans la page **Sélectionner un modèle de règle**, pour le **Modèle de règle de réclamation**, choisissez **Envoyer les attributs LDAP en tant que réclamations**.

   1. Sur la page **Configurer une règle**, exécutez les opérations suivantes :
      + Pour **Claim rule name** (Nom de la règle de revendication), saisissez **RoleSessionName**.
      + Pour **Attribute store (Magasin d'attributs)**, choisissez **Active Directory**.
      + Dans **Attribut LDAP**, sélectionnez **Adresses e-mail**.
      + Pour **Outgoing Claim Type** (Type de demande sortante), sélectionnez **https://aws.amazon.com/SAML/Attributes/RoleSessionName**.

   1. Dans la page **Modifier les règles de réclamation**, choisissez **Ajouter une règle**. Dans la page **Sélectionner un modèle de règle**, pour le **Modèle de règle de réclamation**, choisissez **Envoyer des réclamations à l’aide d’une règle personnalisée**.

   1. Dans la page **Modifier la règle — Obtenir les groupes AD** pour le **Nom de la règle de réclamation**, entrez **Obtenir les groupes AD**.

   1. Pour **Règle personnalisée**, entrez ce qui suit.

      ```
      c:[Type ==
                                          "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
                                          Issuer == "AD AUTHORITY"] => add(store = "Active Directory",
                                          types = ("http://temp/variable"), query = ";tokenGroups;{0}",
                                          param = c.Value);
      ```

   1. Dans la page **Modifier les règles de réclamation**, choisissez **Ajouter une règle**. Dans la page **Sélectionner un modèle de règle**, pour le **Modèle de règle de réclamation**, choisissez **Envoyer des réclamations à l’aide d’une règle personnalisée**.

   1. Dans la page **Modifier une règle — Rôles** pour **Nom de la règle de réclamation**, entrez **Rôles**.

   1. Pour **Règle personnalisée**, entrez ce qui suit.

      ```
      c:[Type == "http://temp/variable", Value =~ "(?i)^AWS-"] => issue(Type = "https://aws.amazon.com/SAML/Attributes/Role", Value = RegExReplace(c.Value, "AWS-", "arn:aws:iam::123456789012:saml-provider/ADFS,arn:aws:iam::123456789012:role/ADFS-"));
      ```

      Notez le ARNs fournisseur SAML et le rôle à assumer. Dans cet exemple, `arn:aws:iam:123456789012:saml-provider/ADFS` est l'ARN du fournisseur SAML et `arn:aws:iam:123456789012:role/ADFS-` est l'ARN du rôle.

1. Assurez-vous que vous avez téléchargé le fichier `federationmetadata.xml`. Vérifiez que le contenu du document n'a pas de caractères non valides. Il s'agit du fichier de métadonnées que vous utilisez lors de la configuration de la relation d'approbation avec AWS. 

1. Créez un fournisseur d’identité SAML IAM sur la console IAM. Le document de métadonnées que vous fournissez est le fichier XML de métadonnées de fédération que vous avez enregistré lorsque vous avez configuré Azure Enterprise Application. Pour des étapes détaillées, veuillez consulter la rubrique [Création et gestion d'un fournisseur d'identité IAM (Console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html#idp-manage-identityprovider-console) dans le *Guide de l'utilisateur IAM*. 

1. Créez un rôle IAM pour la fédération SAML 2.0 sur la console IAM. Pour des étapes détaillées, voir [Création d'un rôle pour SAML](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html#idp_saml_Create) dans le *Guide de l'utilisateur IAM*. 

1. Créez une politique IAM que vous pouvez attacher au rôle IAM que vous avez créé pour la fédération SAML 2.0 sur la console IAM. Pour connaître la marche à suivre en détail, consultez [Création de politiques IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) dans le *Guide de l’utilisateur IAM*. Pour obtenir un exemple Azure AD, consultez [Configuration de l’authentification unique JDBC ou ODBC](setup-azure-ad-identity-provider.md). 

## Étape 2 : pour configurer JDBC ou ODBC pour l’authentification aux services AD FS
<a name="setup-identity-provider-adfs-auth"></a>

------
#### [ JDBC ]

 La procédure suivante explique comment configurer une relation JDBC avec AD FS. 
+ Configurez votre client de base de données pour qu'il se connecte à votre cluster via JDBC à l'aide de l'authentification unique AD FS. 

  Vous pouvez utiliser n'importe quel client qui utilise un pilote JDBC pour vous connecter à l'aide de l'authentification unique AD FS ou utiliser un langage comme Java pour vous connecter à l'aide d'un script. Pour plus d’informations sur l’installation et la configuration, consultez [Configuration d’une connexion pour la version 2.x du pilote JDBC pour Amazon Redshift](jdbc20-install.md).

  Par exemple, vous pouvez utiliser SQLWorkbench/J en tant que client. Lorsque vous configurez SQLWorkbench /J, l'URL de votre base de données utilise le format suivant.

  ```
  jdbc:redshift:iam://cluster-identifier:us-west-1/dev
  ```

  Si vous l'utilisez SQLWorkbench/J en tant que client, suivez les étapes suivantes :

  1. Démarrez SQL Workbench/J. Dans la page **Sélectionner un profil de connexion**, ajoutez un **Groupe de profils**, par exemple **ADFS**.

  1. Dans **Profil de connexion**, entrez le nom de votre profil de connexion, par exemple **ADFS**.

  1. Choisissez **Manage Drivers (Gérer les pilotes)**, puis **Amazon Redshift**. Choisissez l’icône **Open Folder (Ouvrir le dossier)** en regard de **Library (Bibliothèque)**, puis choisissez le fichier JDBC .jar approprié. 

  1. Dans la page **Select Connection Profile (Sélectionner un profil de connexion)** ajoutez les informations suivantes au profil de connexion :
     + Pour **Utilisateur**, entrez votre nom d'utilisateur AD FS. Il s'agit du nom d'utilisateur du compte que vous utilisez pour l'authentification unique et qui a la permission du cluster que vous essayez d'utiliser pour vous authentifier.
     + Pour **Mot de passe**, entrez votre mot de passe AD FS.
     + Pour **Drivers (Pilotes)**, choisissez **Amazon Redshift (com.amazon.redshift.jdbc.Driver)**.
     + Pour **URL**, entrez **jdbc:redshift:iam://*your-cluster-identifier*:*your-cluster-region*/*your-database-name***.

  1. Sélectionnez **Extended Properties** (Propriétés étendues). Pour **plugin\$1name**, entrez **com.amazon.redshift.plugin.AdfsCredentialsProvider**. Cette valeur spécifie au pilote d'utiliser l'authentification unique Azure AD comme méthode d'authentification. 

------
#### [ ODBC ]

**Pour configurer ODBC pour l'authentification aux services AD FS**
+ Configurez votre client de base de données pour qu'il se connecte à votre cluster via ODBC à l'aide de l'authentification unique AD FS. 

  Amazon Redshift fournit des pilotes ODBC pour les systèmes d’exploitation Linux, Windows et macOS. Avant d’installer un pilote ODBC, déterminez si votre outil client SQL est en 32 bits ou en 64 bits. Installez le pilote ODBC qui correspond aux exigences de votre outil client SQL. 

  Sous Windows, dans la page **Amazon Redshift ODBC Driver DSN Setup (Configuration DSN du pilote ODBC Amazon Redshift)**, sous **Connection Settings (Paramètres de connexion)**, entrez les informations suivantes : 
  + Pour **Data Source Name (Nom de la source de données)**, entrez ***your-DSN***. Cela indique le nom de la source de données utilisé comme nom de profil ODBC. 
  + Pour **Auth type** (Type d'authentification), sélectionnez **Identity Provider: SAML** (Fournisseur d'identité : SAML). Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier par authentification unique AD FS.
  + Pour **Cluster ID (ID de cluster)**, entrez ***your-cluster-identifier***. 
  + Pour **Region (Région)**, entrez ***your-cluster-region***.
  + Pour **Database (Base de données)**, entrez ***your-database-name***.
  + Pour **Utilisateur**, entrez ***your-adfs-username***. Il s'agit du nom d'utilisateur du compte AD FS que vous utilisez pour l'authentification unique, qui a l'autorisation d'accéder au cluster que vous essayez d'utiliser pour vous authentifier. Utilisez cette option uniquement si le **Type d’authentification** est **Fournisseur d’identité : SAML**.
  + Pour **Mot de passe**, entrez ***your-adfs-password***. Utilisez cette option uniquement si le **Type d’authentification** est **Fournisseur d’identité : SAML**. 

  Sous macOS et Linux, modifiez le fichier `odbc.ini` comme suit : 
**Note**  
Toutes les entrées sont insensibles à la casse.
  + Pour **clusterid**, entrez ***your-cluster-identifier***. Il s'agit du nom du cluster Amazon Redshift qui a été créé.
  + Pour **region (région)**, entrez ***your-cluster-region***. Il s'agit de la AWS région du cluster Amazon Redshift créé.
  + Pour **database (base de données)**, entrez ***your-database-name***. Il s'agit du nom de la base de données à laquelle vous essayez d'accéder sur le cluster Amazon Redshift.
  + Pour **locale (paramètres régionaux)**, entrez **en-us**. Il s’agit de la langue dans laquelle les messages d’erreur s’affichent.
  + Pour **iam**, entrez **1**. Cette valeur spécifie au pilote de s’authentifier à l’aide des informations d’identification IAM.
  + Pour **plugin\$1name**, effectuez l’une des opérations suivantes :
    + Pour la configuration de l'authentification unique AD FS avec MFA, entrez **BrowserSAML**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier auprès des services AD FS. 
    + Pour la configuration de l'authentification unique AD FS, entrez **ADFS**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier à l'aide de l'authentification unique Azure AD. 
  + Pour **uid**, entrez ***your-adfs-username***. Il s'agit du nom d'utilisateur du compte Microsoft Azure que vous utilisez pour l'authentification unique qui a l'autorisation sur le cluster sur lequel vous essayez de vous authentifier. Utilisez ceci uniquement lorsque **plugin\$1name** est **ADFS**.
  + Pour **pwd**, entrez ***your-adfs-password***. Utilisez ceci uniquement lorsque **plugin\$1name** est **ADFS**. 

  Sous mac OS et Linux, modifiez également les paramètres de profil pour ajouter les exportations suivantes.

  ```
  export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
  ```

  ```
  export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini
  ```

------

# Azure
<a name="setup-identity-provider-azure"></a>

Vous pouvez utiliser Microsoft Azure AD en tant que fournisseur d'identité (IdP) pour accéder à votre cluster Amazon Redshift. Ce didacticiel vous montre comment vous pouvez utiliser Azure en tant que fournisseur d’identité (IdP) pour accéder à votre cluster Amazon Redshift.

Pour savoir comment fédérer l'accès à Amazon Redshift avec l'authentification unique Microsoft Azure AD, regardez la vidéo suivante. 

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/aXs9hEgJCss/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/aXs9hEgJCss)


## Étape 1 : configurer Azure et votre AWS compte pour qu'ils se fassent mutuellement confiance
<a name="setup-identity-provider-azure-trust"></a>

La procédure suivante explique comment configurer une relation d’approbation.

**Pour configurer Azure AD et votre AWS compte de manière à ce qu'ils se fassent mutuellement confiance**

1. Créez ou utilisez un cluster Amazon Redshift existant pour que vos utilisateurs Azure AD puissent se connecter. Pour configurer la connexion, certaines propriétés de ce cluster sont nécessaires, telles que l’identifiant de cluster. Pour de plus amples informations, veuillez consulter [Création d’un cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html).

1. Configurez un Azure Active Directory, des groupes et des utilisateurs utilisés AWS sur le portail Microsoft Azure.

1. Ajoutez Amazon Redshift en tant qu'application d'entreprise sur le portail Microsoft Azure à utiliser pour l'authentification unique à la AWS console et la connexion fédérée à Amazon Redshift. Choisissez **Application Entreprise**.

1. Choisissez **\$1Nouvelle application**. La page Ajouter une application apparaît.

1. Recherchez **AWS** dans le champ de recherche.

1. Choisissez **Amazon Web Services (AWS)** et choisissez **Ajouter**. Cela crée l'application AWS .

1. Sous **Gérer**, choisissez **Single Sign-On**.

1. Choisissez **SAML**. La page d'authentification basée sur Amazon Web Services (AWS) \$1 SAML apparaît.

1. Choisissez **Oui** pour passer à la page Configurer l'authentification unique avec SAML. Cette page affiche la liste des attributs préconfigurés associés à l'authentification unique.

1. Pour **Configuration SAML de base**, choisissez l'icône Modifier et choisissez **Enregistrer**.

1. Lorsque vous configurez plusieurs applications, indiquez une valeur d'identificateur. Par exemple, saisissez ***https://signin.aws.amazon.com/saml\$12***. Notez qu'à partir de la deuxième application, utilisez ce format avec un signe \$1 pour spécifier une valeur SPN unique.

1. Dans la section **Attributs utilisateur et réclamations** sélectionnez l'icône Modifier.

   Par défaut, l'identifiant utilisateur unique (UID) RoleSessionName, le rôle et les SessionDuration revendications sont préconfigurés.

1. Choisissez **\$1 Ajouter une nouvelle réclamation** pour ajouter une revendication pour les utilisateurs de la base de données.

   Pour **Nom**, saisissez **DbUser**.

   Pour **Espace de noms**, saisissez **https://redshift.amazon.com/SAML/Attributes**.

   Pour **Source**, choisissez **Attribut**.

   Pour **Attribut source**, choisissez **user.userprincipalname**. Ensuite, choisissez **Enregistrer**.

1. Choisissez **\$1 Ajouter une nouvelle réclamation** pour laquelle ajouter une réclamation AutoCreate.

   Pour **Nom**, saisissez **AutoCreate**.

   Pour **Espace de noms**, saisissez **https://redshift.amazon.com/SAML/Attributes**.

   Pour **Source**, choisissez **Attribut**.

   Pour **Attribut source**, choisissez **« true »**. Ensuite, choisissez **Enregistrer**.

   Ici, `123456789012` correspond à votre compte AWS , *`AzureSSO`* correspond à un rôle IAM que vous avez créé et *`AzureADProvider`* correspond au fournisseur IAM.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/mgmt/setup-identity-provider-azure.html)

1. Sous **Enregistrement de l'application > ***your-application-name*** > Authentification**, ajoutez **Application mobile et de bureau**. Spécifiez l'URL sous la forme http://localhost/redshift/.

1. Dans la section **Certificat de signature SAML**, choisissez **Télécharger** pour télécharger et enregistrer le fichier XML de métadonnées de fédération à utiliser lorsque vous créez un fournisseur d'identité SAML IAM. Ce fichier est utilisé pour créer l'identité fédérée d'authentification unique.

1. Créez un fournisseur d’identité SAML IAM sur la console IAM. Le document de métadonnées que vous fournissez est le fichier XML de métadonnées de fédération que vous avez enregistré lorsque vous avez configuré Azure Enterprise Application. Pour des étapes détaillées, veuillez consulter la rubrique [Création et gestion d'un fournisseur d'identité IAM (Console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html#idp-manage-identityprovider-console) dans le *Guide de l'utilisateur IAM*. 

1. Créez un rôle IAM pour la fédération SAML 2.0 sur la console IAM. Pour des étapes détaillées, voir [Création d'un rôle pour SAML](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html#idp_saml_Create) dans le *Guide de l'utilisateur IAM*. 

1. Créez une politique IAM que vous pouvez attacher au rôle IAM que vous avez créé pour la fédération SAML 2.0 sur la console IAM. Pour connaître la marche à suivre en détail, consultez [Création de politiques IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) dans le *Guide de l’utilisateur IAM*.

   Modifiez la politique suivante (au format JSON) pour votre environnement : 
   + Remplacez la AWS région de votre cluster par`us-west-1`. 
   + Remplacez votre AWS compte par*`123456789012`*. 
   + Remplacez votre identifiant de cluster (ou `*` pour tous les clusters) par *`cluster-identifier`*. 
   + Remplacez votre base de données (ou `*` pour toutes les bases de données) par *`dev`*. 
   + Remplacez *`AROAJ2UCCR6DPCEXAMPLE`* par l'identifiant unique de votre rôle IAM. 
   + Remplacez `example.com` par le domaine de messagerie de votre locataire ou de votre entreprise. 
   + Remplacez *`my_dbgroup`* par le groupe de base de données auquel vous comptez affecter l'utilisateur 

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "redshift:GetClusterCredentials",
               "Resource": [
                   "arn:aws:redshift:us-west-1:123456789012:dbname:cluster-identifier/dev",
                   "arn:aws:redshift:us-west-1:123456789012:dbuser:cluster-identifier/${redshift:DbUser}",
                   "arn:aws:redshift:us-west-1:123456789012:cluster:cluster-identifier"
               ],
               "Condition": {
                   "StringEquals": {
                       "aws:userid": "AROAJ2UCCR6DPCEXAMPLE:${redshift:DbUser}@example.com"
                   }
               }
           },
           {
               "Effect": "Allow",
               "Action": "redshift:CreateClusterUser",
               "Resource": "arn:aws:redshift:us-west-1:123456789012:dbuser:cluster-identifier/${redshift:DbUser}"
           },
           {
               "Effect": "Allow",
               "Action": "redshift:JoinGroup",
               "Resource": "arn:aws:redshift:us-west-1:123456789012:dbgroup:cluster-identifier/my_dbgroup"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "redshift:DescribeClusters",
                   "iam:ListRoles"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

   Cette politique accorde les autorisations suivantes :
   + La première section accorde à l'opération d'API `GetClusterCredentials` l'autorisation d'obtenir des informations d'identification temporaires pour le cluster spécifié. Dans cet exemple, la ressource est `cluster-identifier` avec la base de données *`dev`*, dans le compte *`123456789012`* et la région AWS *`us-west-1`*. La clause `${redshift:DbUser}` autorise uniquement les utilisateurs qui correspondent à la valeur `DbUser` spécifiée dans Azure AD à se connecter.
   + La clause de condition impose que seuls certains utilisateurs obtiennent des informations d'identification temporaires. Il s'agit des utilisateurs sous le rôle spécifié par l'ID unique de rôle *`AROAJ2UCCR6DPCEXAMPLE`* dans le compte IAM identifié par une adresse e-mail dans le domaine de messagerie de votre entreprise. Pour plus d'informations sur le caractère unique IDs, consultez la section [Unique IDs](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-unique-ids) dans le *guide de l'utilisateur d'IAM*. 

     Votre configuration avec votre IdP (dans ce cas, Azure AD) détermine la manière dont la clause de condition est écrite. Si l'adresse e-mail de votre employé est `johndoe@example.com`, commencez par définir `${redshift:DbUser}` dans le champ correspondant au nom d'utilisateur de l'employé `johndoe`. Ensuite, pour que cette condition fonctionne, définissez ensuite le champ AWS SAML `RoleSessionName` sur le champ correspondant à l'e-mail de l'employé `johndoe@example.com`. Lorsque vous adoptez cette approche, tenez compte des éléments suivants :
     + Si vous définissez `${redshift:DbUser}` comme étant l'e-mail de l'employé, supprimez `@example.com` dans l'exemple de fichier JSON pour correspondre à `RoleSessionName`. 
     + Si vous définissez `RoleSessionId` comme étant uniquement le nom d'utilisateur de l'employé, supprimez `@example.com` dans l'exemple pour correspondre à `RoleSessionName`. 
     + Dans l'exemple de fichier JSON, `${redshift:DbUser}` et `RoleSessionName` sont tous deux définis sur l'e-mail de l'employé. Cet exemple de fichier JSON utilise le nom d'utilisateur de base de données Amazon Redshift avec `@example.com` pour connecter l'utilisateur en vue d'accéder au cluster.
   + La deuxième section accorde l'autorisation de créer un nom `dbuser` dans le cluster spécifié. Dans cet exemple de fichier JSON, la création est limitée à `${redshift:DbUser}`. 
   + La troisième section accorde l'autorisation de spécifier le `dbgroup` qu'un utilisateur peut rejoindre. Dans cet exemple de fichier JSON, un utilisateur peut rejoindre le groupe `my_dbgroup` dans le cluster spécifié. 
   + La quatrième section accorde l'autorisation pour des actions que l'utilisateur peut effectuer sur toutes les ressources. Dans cet exemple JSON, il permet aux utilisateurs d'appeler pour `redshift:DescribeClusters` obtenir des informations sur le cluster, telles que le point de terminaison, AWS la région et le port du cluster. Il permet également aux utilisateurs d'appeler `iam:ListRoles` pour vérifier les rôles qu'un utilisateur peut assumer. 

## Étape 2 : configurer JDBC ou ODBC pour l’authentification aux services Azure
<a name="setup-identity-provider-azure-auth"></a>

------
#### [ JDBC ]

**Pour configurer JDBC pour l'authentification à Microsoft Azure AD**
+ Configurez votre client de base de données pour qu'il se connecte à votre cluster via JDBC à l'aide de votre authentification unique Azure AD. 

  Vous pouvez utiliser n'importe quel client qui utilise un pilote JDBC pour vous connecter à l'aide de l'authentification unique Azure AD ou utiliser un langage comme Java pour vous connecter à l'aide d'un script. Pour plus d'informations sur l'installation et la configuration, consultez [Configuration d’une connexion pour la version 2.x du pilote JDBC pour Amazon Redshift](jdbc20-install.md).

  Par exemple, vous pouvez utiliser SQLWorkbench/J en tant que client. Lorsque vous configurez SQLWorkbench /J, l'URL de votre base de données utilise le format suivant.

  ```
  jdbc:redshift:iam://cluster-identifier:us-west-1/dev
  ```

  Si vous l'utilisez SQLWorkbench/J en tant que client, suivez les étapes suivantes :

  1. Démarrez SQL Workbench/J. Sur la page **Select Connection Profile (Sélectionner un profil de connexion)**, ajoutez un **Profile group (Groupe de profils)** appelé **AzureAuth**.

  1. Pour **Connection Profil (Profil de connexion)**, entrez **Azure**.

  1. Choisissez **Manage Drivers (Gérer les pilotes)**, puis **Amazon Redshift**. Choisissez l’icône **Open Folder (Ouvrir le dossier)** en regard de **Library (Bibliothèque)**, puis choisissez le fichier JDBC .jar approprié. 

  1. Dans la page **Select Connection Profile (Sélectionner un profil de connexion)** ajoutez les informations suivantes au profil de connexion :
     + Pour **User (Utilisateur)**, entrez votre nom d'utilisateur Microsoft Azure. Il s'agit du nom d'utilisateur du compte Microsoft Azure que vous utilisez pour l'authentification unique et qui a la permission du cluster que vous essayez d'utiliser pour vous authentifier.
     + Pour **Password (Mot de passe)**, entrez votre mot de passe Microsoft Azure.
     + Pour **Drivers (Pilotes)**, choisissez **Amazon Redshift (com.amazon.redshift.jdbc.Driver)**.
     + Pour **URL**, entrez **jdbc:redshift:iam://*your-cluster-identifier*:*your-cluster-region*/*your-database-name***.

  1. Choisissez **Extended Properties (Propriétés étendues)** pour ajouter des informations supplémentaires aux propriétés de connexion comme suit.

     Pour la configuration de l'authentification unique Azure AD, ajoutez des informations supplémentaires, comme suit :
     + Pour **plugin\$1name**, entrez **com.amazon.redshift.plugin.AzureCredentialsProvider**. Cette valeur spécifie au pilote d'utiliser l'authentification unique Azure AD comme méthode d'authentification. 
     + Pour **idp\$1tenant**, entrez ***your-idp-tenant***. Utilisé uniquement pour Microsoft Azure AD. Il s’agit du nom du locataire de votre entreprise configuré sur Azure AD. Cette valeur peut être le nom du locataire ou l’ID unique du locataire avec des traits d’union.
     + Pour **client\$1secret**, entrez ***your-azure-redshift-application-client-secret***. Utilisé uniquement pour Microsoft Azure AD. Il s'agit du secret client de l'application Amazon Redshift que vous avez créé lors de la définition de votre configuration d'authentification unique Azure. Cela ne s'applique qu'au com.amazon.redshift.plugin. AzureCredentialsProviderplugin. 
     + Pour **client\$1id**, entrez ***your-azure-redshift-application-client-id***. Utilisé uniquement pour Microsoft Azure AD. Il s'agit de l'ID client (avec des traits d'union) de l'application Amazon Redshift que vous avez créé lors de la définition de votre configuration d'authentification unique Azure. 

     Pour la configuration de l'authentification unique Azure AD avec MFA, ajoutez des informations supplémentaires aux propriétés de connexion, comme suit :
     + Pour **plugin\$1name**, entrez **com.amazon.redshift.plugin.BrowserAzureCredentialsProvider**. Cette valeur spécifie au pilote d'utiliser l'authentification unique Azure AD avec MFA comme méthode d'authentification. 
     + Pour **idp\$1tenant**, entrez ***your-idp-tenant***. Utilisé uniquement pour Microsoft Azure AD. Il s’agit du nom du locataire de votre entreprise configuré sur Azure AD. Cette valeur peut être le nom du locataire ou l’ID unique du locataire avec des traits d’union.
     + Pour **client\$1id**, entrez ***your-azure-redshift-application-client-id***. This option is used only for Microsoft Azure AD. Il s'agit de l'ID client (avec des traits d'union) de l'application Amazon Redshift que vous avez créé lors de la définition de votre configuration d'authentification unique Azure AD avec MFA. 
     + Pour **listen\$1port**, entrez ***your-listen-port***. C’est le port que le serveur local écoute. La valeur par défaut est 7890. 
     + Pour **idp\$1response\$1timeout**, entrez ***the-number-of-seconds***. Il s’agit du nombre de secondes à attendre avant l’expiration lorsque le serveur IdP renvoie une réponse. Le nombre minimum de secondes doit être de 10. Si l’établissement de la connexion dépasse ce seuil, la connexion est abandonnée.

------
#### [ ODBC ]

**Pour configurer ODBC pour l'authentification à Microsoft Azure AD**
+ Configurez votre client de base de données pour qu'il se connecte à votre cluster via ODBC à l'aide de votre authentification unique Azure AD. 

  Amazon Redshift fournit des pilotes ODBC pour les systèmes d'exploitation Linux, Windows et macOS. Avant d’installer un pilote ODBC, déterminez si votre outil client SQL est en 32 bits ou en 64 bits. Installez le pilote ODBC qui correspond aux exigences de votre outil client SQL. 

  Sous Windows, dans la page **Amazon Redshift ODBC Driver DSN Setup (Configuration DSN du pilote ODBC Amazon Redshift)**, sous **Connection Settings (Paramètres de connexion)**, entrez les informations suivantes : 
  + Pour **Data Source Name (Nom de la source de données)**, entrez ***your-DSN***. Cela indique le nom de la source de données utilisé comme nom de profil ODBC. 
  + Pour **Auth type** (Type d'authentification) de la configuration d'authentification unique Azure AD, choisissez **Identity Provider: Azure AD**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier à l'aide de l'authentification unique Azure.
  + Pour **Auth type** (Type d'authentification) de la configuration d'authentification unique Azure AD avec MFA, choisissez **Identity Provider: Browser Azure AD**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier à l'aide de l'authentification unique Azure avec MFA.
  + Pour **Cluster ID (ID de cluster)**, entrez ***your-cluster-identifier***. 
  + Pour **Region (Région)**, entrez ***your-cluster-region***.
  + Pour **Database (Base de données)**, entrez ***your-database-name***.
  + Pour **Utilisateur**, entrez ***your-azure-username***. Il s'agit du nom d'utilisateur du compte Microsoft Azure que vous utilisez pour l'authentification unique et qui a la permission du cluster que vous essayez d'utiliser pour vous authentifier. Utiliser cette option uniquement lorsque **Type d’authentification** est **Fournisseur d’identité : Azure AD**.
  + Pour **Mot de passe**, entrez ***your-azure-password***. Utiliser cette option uniquement lorsque **Type d’authentification** est **Fournisseur d’identité : Azure AD**. 
  + Pour **IdP Tenant (Locataire IdP)**, entrez ***your-idp-tenant***. Il s’agit du nom du locataire de votre entreprise configuré sur votre IdP (Azure). Cette valeur peut être le nom du locataire ou l’ID unique du locataire avec des traits d’union.
  + Pour **Azure Client Secret (Secret client Azure)**, entrez ***your-azure-redshift-application-client-secret***. Il s'agit du secret client de l'application Amazon Redshift que vous avez créé lors de la définition de votre configuration d'authentification unique Azure. 
  + Pour **Azure Client ID (ID client Azure)**, entrez ***your-azure-redshift-application-client-id***. Il s'agit de l'ID client (avec des traits d'union) de l'application Amazon Redshift que vous avez créé lors de la définition de votre configuration d'authentification unique Azure. 
  + Pour **Port d’écoute**, entrez ***your-listen-port***. Il s'agit du port d'écoute par défaut que le serveur local écoute. La valeur par défaut est 7890. Cela s'applique uniquement au plugin Navigateur Azure AD. 
  + Pour **Délai de réponse**, entrez ***the-number-of-seconds***. Il s’agit du nombre de secondes à attendre avant l’expiration lorsque le serveur IdP renvoie une réponse. Le nombre minimum de secondes doit être de 10. Si l’établissement de la connexion dépasse ce seuil, la connexion est abandonnée. Cette option s'applique uniquement au plugin du navigateur Azure AD.

  Sous macOS et Linux, modifiez le fichier `odbc.ini` comme suit : 
**Note**  
Toutes les entrées sont insensibles à la casse.
  + Pour **clusterid**, entrez ***your-cluster-identifier***. Il s'agit du nom du cluster Amazon Redshift qui a été créé.
  + Pour **region (région)**, entrez ***your-cluster-region***. Il s'agit de la AWS région du cluster Amazon Redshift créé.
  + Pour **database (base de données)**, entrez ***your-database-name***. Il s'agit du nom de la base de données à laquelle vous essayez d'accéder sur le cluster Amazon Redshift.
  + Pour **locale (paramètres régionaux)**, entrez **en-us**. Il s’agit de la langue dans laquelle les messages d’erreur s’affichent.
  + Pour **iam**, entrez **1**. Cette valeur spécifie au pilote de s’authentifier à l’aide des informations d’identification IAM.
  + Pour **plugin\$1name** de la configuration d'authentification unique Azure AD, entrez **AzureAD**. Cela spécifie au pilote d'utiliser l'authentification unique Azure comme méthode d'authentification. 
  + Pour **plugin\$1name** de la configuration d'authentification unique Azure AD avec MFA, entrez **BrowserAzureAD**. Cela spécifie au pilote d'utiliser l'authentification unique Azure avec MFA comme méthode d'authentification. 
  + Pour **uid**, entrez ***your-azure-username***. Il s'agit du nom d'utilisateur du compte Microsoft Azure que vous utilisez pour l'authentification unique qui a l'autorisation sur le cluster sur lequel vous essayez de vous authentifier. Utilisez ceci uniquement lorsque **plugin\$1name** est **AzureAD**.
  + Pour **pwd**, entrez ***your-azure-password***. Utilisez ceci uniquement lorsque **plugin\$1name** est **AzureAD**. 
  + Pour **idp\$1tenant**, entrez ***your-idp-tenant***. Il s’agit du nom du locataire de votre entreprise configuré sur votre IdP (Azure). Cette valeur peut être le nom du locataire ou l’ID unique du locataire avec des traits d’union.
  + Pour **client\$1secret**, entrez ***your-azure-redshift-application-client-secret***. Il s'agit du secret client de l'application Amazon Redshift que vous avez créé lors de la définition de votre configuration d'authentification unique Azure. 
  + Pour **client\$1id**, entrez ***your-azure-redshift-application-client-id***. Il s'agit de l'ID client (avec des traits d'union) de l'application Amazon Redshift que vous avez créé lors de la définition de votre configuration d'authentification unique Azure. 
  + Pour **listen\$1port**, entrez ***your-listen-port***. C’est le port que le serveur local écoute. La valeur par défaut est 7890. Cela s'applique au plugin Navigateur Azure AD.
  + Pour **idp\$1response\$1timeout**, entrez ***the-number-of-seconds***. Il s'agit de la période spécifiée en secondes pour attendre la réponse d'Azure. Cette option s'applique au plugin du navigateur Azure AD.

  Sous mac OS et Linux, modifiez également les paramètres de profil pour ajouter les exportations suivantes.

  ```
  export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
  ```

  ```
  export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini
  ```

------

## Résolution des problèmes
<a name="setup-identity-provider-azure-auth"></a>

Pour résoudre les problèmes liés au plugin Browser Azure AD, tenez compte de ce qui suit.
+ Pour utiliser le plugin Browser Azure AD, vous devez définir l'URL de réponse spécifiée dans la demande pour qu'elle corresponde à l'URL de réponse configurée pour votre application. Accédez à la page **Configurer l'authentification unique avec SAML** sur le portail Microsoft Azure. Ensuite, vérifiez que l'**URL de réponse** est définie sur http://localhost/redshift/.
+ Si vous obtenez une erreur de locataire IdP, vérifiez que le nom du **Locataire IdP** correspond au nom de domaine que vous avez utilisé initialement pour configurer Active Directory dans Microsoft Azure.

  Sous Windows, accédez à la section **Paramètres de connexion** de la page **Configuration du DSN ODBC d'Amazon Redshift**. Vérifiez ensuite que le nom de locataire de votre société configurée sur votre IdP (Azure) correspond au nom de domaine que vous avez initialement utilisé pour configurer Active Directory dans Microsoft Azure.

  Sous macOS et Linux, recherchez le fichier *odbc.ini*. Vérifiez ensuite que le nom de locataire de votre société configurée sur votre IdP (Azure) correspond au nom de domaine que vous avez initialement utilisé pour configurer Active Directory dans Microsoft Azure.
+ Si vous recevez un message d'erreur indiquant que l'URL de réponse spécifiée dans la demande ne correspond pas à la réponse URLs configurée pour votre application, vérifiez que l'URL de **redirection URIs** est identique à l'URL de réponse.

  Accédez à la page **Enregistrement de l'application** de votre application sur le portail Microsoft Azure. Vérifiez ensuite que la redirection URIs correspond à l'URL de réponse.
+ Si vous obtenez la réponse inattendue : erreur non autorisée, vérifiez que vous avez terminé la configuration des **Applications mobiles et de bureau**.

  Accédez à la page **Enregistrement de l'application** de votre application sur le portail Microsoft Azure. Accédez ensuite à **Authentification** et vérifiez que vous avez configuré les **applications mobiles et de bureau** pour utiliser http://localhost/redshift/ comme redirection URIs.

# Ping Identity
<a name="setup-identity-provider-ping"></a>

Vous pouvez utiliser Ping Identity comme fournisseur d'identité (IdP) pour accéder à votre cluster Amazon Redshift. Ce didacticiel vous montre comment vous pouvez utiliser Ping Identity en tant que fournisseur d’identité (IdP) pour accéder à votre cluster Amazon Redshift.

## Étape 1 : Configurez Ping Identity et votre AWS compte pour qu'ils se fassent mutuellement confiance
<a name="setup-identity-provider-ping-trust"></a>

La procédure suivante décrit comment configurer une relation de confiance à l'aide du PingOne portail.

**Pour configurer Ping Identity et votre AWS compte de manière à ce qu'ils se fassent mutuellement confiance**

1. Créez ou utilisez un cluster Amazon Redshift existant pour que vos utilisateurs Ping Identity puissent se connecter. Pour configurer la connexion, certaines propriétés de ce cluster sont nécessaires, telles que l’identifiant de cluster. Pour de plus amples informations, veuillez consulter [Création d’un cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html).

1. Ajoutez Amazon Redshift en tant que nouvelle application SAML sur le portail. PingOne Pour obtenir des étapes détaillées, consultez la [documentation Ping Identity](https://docs.pingidentity.com/). 

   1. Accédez à **Mes applications**.

   1. Sous **Ajouter une application**, choisissez **Nouvelle application SAML**.

   1. Dans **Application Name (Nom de l'application)**, saisissez **Amazon Redshift**.

   1. Pour **Version de protocole**, choisissez **SAML v2.0**.

   1. Pour **Catégorie**, choisissez ***your-application-category***.

   1. Pour **Assertion Consumer Service (ACS)**, tapez ***your-redshift-local-host-url***. Il s'agit de l'hôte local et du port vers lesquels l'assertion SAML redirige.

   1. Pour **Entity ID (ID d'entité)**, saisissez `urn:amazon:webservices`.

   1. Pour **Signature**, choisissez **Signer l’assertion**.

   1. Dans la section **Mappage d'attributs SSO**, créez les réclamations comme indiqué dans le tableau suivant.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/mgmt/setup-identity-provider-ping.html)

1. Pour **Accès au groupe**, configurez l'accès au groupe suivant, si nécessaire :
   + **https://aws.amazon.com/SAML/Attributes/Role**
   + **https://aws.amazon.com/SAML/Attributes/RoleSessionName**
   + **https://redshift.amazon.com/SAML/Attributes/AutoCreate**
   + **https://redshift.amazon.com/SAML/Attributes/DbUser**

1. Passez en revue votre configuration et apportez des modifications, si nécessaire. 

1. Utilisez **Lancer l'URL d'authentification unique (SSO)** comme URL de connexion pour le plugin du navigateur SAML.

1. Créez un fournisseur d’identité SAML IAM sur la console IAM. Le document de métadonnées que vous fournissez est le fichier XML de métadonnées de fédération que vous avez enregistré lorsque vous avez configuré Ping Identity. Pour des étapes détaillées, veuillez consulter la rubrique [Création et gestion d'un fournisseur d'identité IAM (Console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html#idp-manage-identityprovider-console) dans le *Guide de l'utilisateur IAM*.

1. Créez un rôle IAM pour la fédération SAML 2.0 sur la console IAM. Pour des étapes détaillées, voir [Création d'un rôle pour SAML](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html#idp_saml_Create) dans le *Guide de l'utilisateur IAM*. 

1. Créez une politique IAM que vous pouvez attacher au rôle IAM que vous avez créé pour la fédération SAML 2.0 sur la console IAM. Pour connaître la marche à suivre en détail, consultez [Création de politiques IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) dans le *Guide de l’utilisateur IAM*. Pour obtenir un exemple Azure AD, consultez [Configuration de l’authentification unique JDBC ou ODBC](setup-azure-ad-identity-provider.md). 

## Étape 2 : configurer JDBC ou ODBC pour l’authentification aux services Ping Identity
<a name="setup-identity-provider-ping-auth"></a>

------
#### [ JDBC ]

**Pour configurer JDBC pour l'authentification auprès de Ping Identity**
+ Configurez votre client de base de données pour vous connecter à votre cluster via JDBC à l'aide de l'authentification unique Ping Identity. 

  Vous pouvez utiliser n'importe quel client qui utilise un pilote JDBC pour vous connecter à l'aide de l'authentification unique Ping Identity ou utiliser un langage comme Java pour vous connecter à l'aide d'un script. Pour plus d’informations sur l’installation et la configuration, consultez [Configuration d’une connexion pour la version 2.x du pilote JDBC pour Amazon Redshift](jdbc20-install.md).

  Par exemple, vous pouvez utiliser SQLWorkbench/J en tant que client. Lorsque vous configurez SQLWorkbench /J, l'URL de votre base de données utilise le format suivant.

  ```
  jdbc:redshift:iam://cluster-identifier:us-west-1/dev
  ```

  Si vous l'utilisez SQLWorkbench/J en tant que client, suivez les étapes suivantes :

  1. Démarrez SQL Workbench/J. Dans la page **Sélectionner un profil de connexion**, ajoutez un **Groupe de profils**, par exemple **Ping**.

  1. Pour **Profil de connexion**, entrez ***your-connection-profile-name***, par exemple **Ping**.

  1. Choisissez **Manage Drivers (Gérer les pilotes)**, puis **Amazon Redshift**. Choisissez l’icône **Open Folder (Ouvrir le dossier)** en regard de **Library (Bibliothèque)**, puis choisissez le fichier JDBC .jar approprié. 

  1. Dans la page **Select Connection Profile (Sélectionner un profil de connexion)** ajoutez les informations suivantes au profil de connexion :
     + Dans **Utilisateur**, entrez votre nom PingOne d'utilisateur. Il s'agit du nom d'utilisateur du compte PingOne que vous utilisez pour l'authentification unique et qui a la permission du cluster que vous essayez d'utiliser pour vous authentifier.
     + Dans le **champ Mot de passe**, entrez votre PingOne mot de passe.
     + Pour **Drivers (Pilotes)**, choisissez **Amazon Redshift (com.amazon.redshift.jdbc.Driver)**.
     + Pour **URL**, entrez **jdbc:redshift:iam://*your-cluster-identifier*:*your-cluster-region*/*your-database-name***.

  1. Choisissez **Propriétés étendues** et effectuez l’une des opérations suivantes :
     + Pour **login\$1url**, entrez ***your-ping-sso-login-url***. Cette valeur indique à l'URL d'utiliser l'authentification unique comme authentification pour se connecter. 
     + Pour Ping Identity, pour **plugin\$1name**, entrez **com.amazon.redshift.plugin.PingCredentialsProvider**. Cette valeur spécifie au pilote d'utiliser l'authentification unique Ping Identity comme méthode d'authentification. 
     + Pour Ping Identity avec l'authentification unique, pour **plugin\$1name**, entrez **com.amazon.redshift.plugin.BrowserSamlCredentialsProvider**. Cette valeur indique au pilote d'utiliser Ping Identity PingOne avec authentification unique comme méthode d'authentification. 

------
#### [ ODBC ]

**Pour configurer ODBC pour l'authentification à Ping Identity**
+ Configurez votre client de base de données pour qu'il se connecte à votre cluster via ODBC à l'aide de l'authentification PingOne unique Ping Identity. 

  Amazon Redshift fournit des pilotes ODBC pour les systèmes d’exploitation Linux, Windows et macOS. Avant d’installer un pilote ODBC, déterminez si votre outil client SQL est en 32 bits ou en 64 bits. Installez le pilote ODBC qui correspond aux exigences de votre outil client SQL. 

  Sous Windows, dans la page **Amazon Redshift ODBC Driver DSN Setup (Configuration DSN du pilote ODBC Amazon Redshift)**, sous **Connection Settings (Paramètres de connexion)**, entrez les informations suivantes : 
  + Pour **Data Source Name (Nom de la source de données)**, entrez ***your-DSN***. Cela indique le nom de la source de données utilisé comme nom de profil ODBC. 
  + Pour **Type d’authentification**, effectuez l’une des actions suivantes :
    + Pour la configuration de Ping Identity, choisissez **Fournisseur d'identité : Ping Federate**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier à l'aide de l'authentification unique Ping Identity.
    + Pour la configuration de Ping Identity avec l'authentification unique, choisissez **Identity Provider: Browser SAML** (Fournisseur d'identité : navigateur SAML). Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier à l'aide de Ping Identity avec l'authentification unique.
  + Pour **Cluster ID (ID de cluster)**, entrez ***your-cluster-identifier***. 
  + Pour **Region (Région)**, entrez ***your-cluster-region***.
  + Pour **Database (Base de données)**, entrez ***your-database-name***.
  + Pour **Utilisateur**, entrez ***your-ping-username***. Il s'agit du nom d'utilisateur du PingOne compte que vous utilisez pour l'authentification unique qui est autorisé à accéder au cluster à l'aide duquel vous essayez de vous authentifier. Utilisez-le uniquement pour le **type d'authentification** est le **fournisseur d'identité : PingFederate**.
  + Pour **Mot de passe**, entrez ***your-ping-password***. Utilisez-le uniquement pour le **type d'authentification** est le **fournisseur d'identité : PingFederate**. 
  + Pour **Port d’écoute**, entrez ***your-listen-port***. C’est le port que le serveur local écoute. La valeur par défaut est 7890. Ceci s'applique uniquement au plugin du navigateur SAML. 
  +  Pour **Délai de réponse**, entrez ***the-number-of-seconds***. Il s’agit du nombre de secondes à attendre avant l’expiration lorsque le serveur IdP renvoie une réponse. Le nombre minimum de secondes doit être de 10. Si l’établissement de la connexion dépasse ce seuil, la connexion est abandonnée. Ceci s'applique uniquement au plugin du navigateur SAML.
  + Pour **URL de connexion**, entrez ***your-login-url***. Ceci s'applique uniquement au plugin du navigateur SAML.

  Sous macOS et Linux, modifiez le fichier `odbc.ini` comme suit : 
**Note**  
Toutes les entrées sont insensibles à la casse.
  + Pour **clusterid**, entrez ***your-cluster-identifier***. Il s'agit du nom du cluster Amazon Redshift qui a été créé.
  + Pour **region (région)**, entrez ***your-cluster-region***. Il s'agit de la AWS région du cluster Amazon Redshift créé.
  + Pour **database (base de données)**, entrez ***your-database-name***. Il s'agit du nom de la base de données à laquelle vous essayez d'accéder sur le cluster Amazon Redshift.
  + Pour **locale (paramètres régionaux)**, entrez **en-us**. Il s’agit de la langue dans laquelle les messages d’erreur s’affichent.
  + Pour **iam**, entrez **1**. Cette valeur spécifie au pilote de s’authentifier à l’aide des informations d’identification IAM.
  + Pour **plugin\$1name**, effectuez l’une des opérations suivantes :
    + Pour la configuration de Ping Identity, entrez **BrowserSAML**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier auprès de Ping Identity. 
    + Pour la configuration de Ping Identity avec l'authentification unique, entrez **Ping**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier à l'aide de Ping Identity avec l'authentification unique. 
  + Pour **uid**, entrez ***your-ping-username***. Il s’agit du nom d’utilisateur du compte Microsoft Azure que vous utilisez pour l’authentification unique qui a l’autorisation sur le cluster sur lequel vous essayez de vous authentifier. Utilisez ceci uniquement lorsque **plugin\$1name** est **Ping**.
  + Pour **pwd**, entrez ***your-ping-password***. Utilisez ceci uniquement lorsque **plugin\$1name** est **Ping**. 
  + Pour **login\$1url**, entrez ***your-login-url***. Il s'agit de l'URL de lancement de l'authentification unique qui renvoie la réponse SAML. Ceci s’applique uniquement au plugin du navigateur SAML.
  + Pour **idp\$1response\$1timeout**, entrez ***the-number-of-seconds***. Il s'agit du délai spécifié en secondes pour attendre la réponse d' PingOne Identity. Ceci s’applique uniquement au plugin du navigateur SAML.
  + Pour **listen\$1port**, entrez ***your-listen-port***. C’est le port que le serveur local écoute. La valeur par défaut est 7890. Ceci s'applique uniquement au plugin du navigateur SAML.

  Sous mac OS et Linux, modifiez également les paramètres de profil pour ajouter les exportations suivantes.

  ```
  export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
  ```

  ```
  export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini
  ```

------

# Okta
<a name="setup-identity-provider-okta"></a>

Vous pouvez utiliser Okta comme fournisseur d'identité (IdP) pour accéder à votre cluster Amazon Redshift. Ce didacticiel vous montre comment vous pouvez utiliser Okta en tant que fournisseur d’identité (IdP) pour accéder à votre cluster Amazon Redshift.

## Étape 1 : configurez Okta et votre AWS compte pour qu'ils se fassent mutuellement confiance
<a name="setup-identity-provider-okta-trust"></a>

La procédure suivante explique comment configurer une relation d’approbation.

**Pour configurer Okta et votre AWS compte de manière à ce qu'ils se fassent mutuellement confiance**

1. Créez ou utilisez un cluster Amazon Redshift existant pour que vos utilisateurs Okta puissent se connecter. Pour configurer la connexion, certaines propriétés de ce cluster sont nécessaires, telles que l’identifiant de cluster. Pour de plus amples informations, veuillez consulter [Création d'un cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html).

1. Ajoutez Amazon Redshift comme nouvelle application sur le portail Okta. Pour les étapes détaillées, consultez la [documentation Okta](https://developer.okta.com/docs/). 
   + Choisissez **Ajouter une application**.
   + Sous **Ajouter une application**, choisissez **Créer une nouvelle application**.
   + Dans la page **Créer une nouvelle intégration d'applications**, pour **Plateforme**, choisissez **Web**.
   + Pour **Méthode de connexion**, choisissez **SAML v2.0**.
   + Dans la page **Paramètres généraux**, pour **Nom de l'application**, entrez ***your-redshift-saml-sso-name***. Il s'agit du nom de votre application.
   + Dans la page **Paramètres SAML**, pour **URL d'authentification unique**, entrez ***your-redshift-local-host-url***. Il s'agit de l'hôte local et du port vers lequel l'assertion SAML redirige, par exemple`http://localhost:7890/redshift/` .

1. Utilisez la valeur de l'**URL de connexion unique** comme **URL du destinataire** et **URL de destination**.

1. Pour **Signature**, choisissez **Signer l’assertion**.

1. Pour **URI d'audience (ID d'entité SP)**, entrez **urn:amazon:webservices** pour les réclamations, comme indiqué dans le tableau suivant. 

1. Dans la section **Paramètres avancés**, pour **ID d’émetteur SAML**, saisissez ***your-Identity-Provider-Issuer-ID***, que vous pouvez trouver dans la section **Afficher les instructions de configuration**.

1. Dans la section **Instructions d'attribut**, créez les réclamations comme indiqué dans le tableau suivant.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/mgmt/setup-identity-provider-okta.html)

1. Dans la section **Lien intégré de l'application**, recherchez l'URL que vous pouvez utiliser comme URL de connexion pour le plugin SAML du navigateur.

1. Créez un fournisseur d’identité SAML IAM sur la console IAM. Le document de métadonnées que vous fournissez est le fichier XML de métadonnées de fédération que vous avez enregistré lorsque vous avez configuré Okta. Pour des étapes détaillées, veuillez consulter la rubrique [Création et gestion d'un fournisseur d'identité IAM (Console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html#idp-manage-identityprovider-console) dans le *Guide de l'utilisateur IAM*. 

1. Créez un rôle IAM pour la fédération SAML 2.0 sur la console IAM. Pour des étapes détaillées, voir [Création d'un rôle pour SAML](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html#idp_saml_Create) dans le *Guide de l'utilisateur IAM*. 

1. Créez une politique IAM que vous pouvez attacher au rôle IAM que vous avez créé pour la fédération SAML 2.0 sur la console IAM. Pour connaître la marche à suivre en détail, consultez [Création de politiques IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) dans le *Guide de l’utilisateur IAM*. Pour obtenir un exemple Azure AD, consultez [Configuration de l’authentification unique JDBC ou ODBC](setup-azure-ad-identity-provider.md). 

## Étape 2 : configurer JDBC ou ODBC pour l’authentification aux services Otka
<a name="setup-identity-provider-okta-auth"></a>

------
#### [ JDBC ]

**Pour configurer JDBC pour l'authentification auprès d'Okta**
+ Configurez votre client de base de données pour qu'il se connecte à votre cluster via JDBC à l'aide de l'authentification unique Okta.

  Vous pouvez utiliser n'importe quel client qui utilise un pilote JDBC pour vous connecter à l'aide de l'authentification unique Okta ou utiliser un langage comme Java pour vous connecter à l'aide d'un script. Pour plus d’informations sur l’installation et la configuration, consultez [Configuration d’une connexion pour la version 2.x du pilote JDBC pour Amazon Redshift](jdbc20-install.md).

  Par exemple, vous pouvez utiliser SQLWorkbench/J en tant que client. Lorsque vous configurez SQLWorkbench /J, l'URL de votre base de données utilise le format suivant.

  ```
  jdbc:redshift:iam://cluster-identifier:us-west-1/dev
  ```

  Si vous l'utilisez SQLWorkbench/J en tant que client, suivez les étapes suivantes :

  1. Démarrez SQL Workbench/J. Dans la page **Sélectionner un profil de connexion**, ajoutez un **Groupe de profils**, par exemple **Okta**.

  1. Pour **Profil de connexion**, entrez ***your-connection-profile-name***, par exemple **Okta**.

  1. Choisissez **Manage Drivers (Gérer les pilotes)**, puis **Amazon Redshift**. Choisissez l’icône **Open Folder (Ouvrir le dossier)** en regard de **Library (Bibliothèque)**, puis choisissez le fichier JDBC .jar approprié. 

  1. Dans la page **Select Connection Profile (Sélectionner un profil de connexion)** ajoutez les informations suivantes au profil de connexion :
     + Pour **Utilisateur**, entrez votre nom d'utilisateur Okta. Il s'agit du nom d'utilisateur du compte Okta que vous utilisez pour l'authentification unique et qui a la permission du cluster que vous essayez d'utiliser pour vous authentifier.
     + Pour **Mot de passe**, entrez votre mot de passe Okta.
     + Pour **Drivers (Pilotes)**, choisissez **Amazon Redshift (com.amazon.redshift.jdbc.Driver)**.
     + Pour **URL**, entrez **jdbc:redshift:iam://*your-cluster-identifier*:*your-cluster-region*/*your-database-name***.

  1. Choisissez **Propriétés étendues** et effectuez l’une des opérations suivantes :
     + Pour **login\$1url**, entrez ***your-okta-sso-login-url***. Cette valeur indique à l'URL d'utiliser l'authentification unique comme authentification pour se connecter à Okta. 
     + Pour l'authentification unique Okta, pour **plugin\$1name**, entrez **com.amazon.redshift.plugin.OktaCredentialsProvider**. Cette valeur spécifie au pilote d'utiliser l'authentification unique Okta comme méthode d'authentification. 
     + Pour l'authentification unique Okta avec MFA, pour **plugin\$1name**, entrez **com.amazon.redshift.plugin.BrowserSamlCredentialsProvider**. Cette valeur spécifie au pilote d'utiliser l'authentification unique Okta avec MFA comme méthode d'authentification. 

------
#### [ ODBC ]

**Pour configurer ODBC pour l'authentification auprès d'Okta**
+ Configurez votre client de base de données pour qu'il se connecte à votre cluster via ODBC à l'aide de l'authentification unique Okta. 

  Amazon Redshift fournit des pilotes ODBC pour les systèmes d’exploitation Linux, Windows et macOS. Avant d’installer un pilote ODBC, déterminez si votre outil client SQL est en 32 bits ou en 64 bits. Installez le pilote ODBC qui correspond aux exigences de votre outil client SQL. 

  Sous Windows, dans la page **Amazon Redshift ODBC Driver DSN Setup (Configuration DSN du pilote ODBC Amazon Redshift)**, sous **Connection Settings (Paramètres de connexion)**, entrez les informations suivantes : 
  + Pour **Data Source Name (Nom de la source de données)**, entrez ***your-DSN***. Cela indique le nom de la source de données utilisé comme nom de profil ODBC. 
  + Pour **Type d’authentification**, effectuez l’une des actions suivantes :
    + Pour la configuration de l'authentification unique Okta, choisissez **Identity Provider: Okta**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier à l'aide de l'authentification unique Okta.
    + Pour la configuration de l'authentification unique Okta avec MFA, choisissez **Identity Provider: Browser SAML**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier à l'aide de l'authentification unique Okta avec MFA.
  + Pour **Cluster ID (ID de cluster)**, entrez ***your-cluster-identifier***. 
  + Pour **Region (Région)**, entrez ***your-cluster-region***.
  + Pour **Database (Base de données)**, entrez ***your-database-name***.
  + Pour **Utilisateur**, entrez ***your-okta-username***. Il s'agit du nom d'utilisateur du compte Okta que vous utilisez pour l'authentification unique et qui a la permission d'accéder au cluster que vous essayez d'utiliser pour vous authentifier. Utilisez cette option uniquement si le **Type d’authentification** est **Fournisseur d’identité : Okta**.
  + Pour **Mot de passe**, entrez ***your-okta-password***. Utilisez cette option uniquement si le **Type d’authentification** est **Fournisseur d’identité : Okta**. 

  Sous macOS et Linux, modifiez le fichier `odbc.ini` comme suit : 
**Note**  
Toutes les entrées sont insensibles à la casse.
  + Pour **clusterid**, entrez ***your-cluster-identifier***. Il s'agit du nom du cluster Amazon Redshift qui a été créé.
  + Pour **region (région)**, entrez ***your-cluster-region***. Il s'agit de la AWS région du cluster Amazon Redshift créé.
  + Pour **database (base de données)**, entrez ***your-database-name***. Il s'agit du nom de la base de données à laquelle vous essayez d'accéder sur le cluster Amazon Redshift.
  + Pour **locale (paramètres régionaux)**, entrez **en-us**. Il s’agit de la langue dans laquelle les messages d’erreur s’affichent.
  + Pour **iam**, entrez **1**. Cette valeur spécifie au pilote de s’authentifier à l’aide des informations d’identification IAM.
  + Pour **plugin\$1name**, effectuez l’une des opérations suivantes :
    + Pour la configuration de l'authentification unique Okta avec MFA, entrez **BrowserSAML**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier via l'authentification unique Okta avec MFA. 
    + Pour la configuration de l'authentification unique Okta, entrez **Okta**. Il s'agit de la méthode d'authentification utilisée par le pilote ODBC pour s'authentifier à l'aide de l'authentification unique Okta. 
  + Pour **uid**, entrez ***your-okta-username***. Il s'agit du nom d'utilisateur du compte Okta que vous utilisez pour l'authentification unique qui a l'autorisation d'accéder au cluster sur lequel vous essayez de vous authentifier. Utilisez ceci uniquement lorsque **plugin\$1name** est **Okta**.
  + Pour **pwd**, entrez ***your-okta-password***. Utilisez ceci uniquement lorsque **plugin\$1name** est **Okta**. 
  + Pour **login\$1url**, entrez ***your-login-url***. Il s'agit de l'URL de lancement de l'authentification unique qui renvoie la réponse SAML. Ceci s’applique uniquement au plugin du navigateur SAML.
  + Pour **idp\$1response\$1timeout**, entrez ***the-number-of-seconds***. Il s'agit de la durée spécifiée en secondes pour attendre une réponse PingOne. Ceci s’applique uniquement au plugin du navigateur SAML.
  + Pour **listen\$1port**, entrez ***your-listen-port***. C’est le port que le serveur local écoute. La valeur par défaut est 7890. Ceci s'applique uniquement au plugin du navigateur SAML.

  Sous mac OS et Linux, modifiez également les paramètres de profil pour ajouter les exportations suivantes.

  ```
  export ODBCINI=/opt/amazon/redshift/Setup/odbc.ini
  ```

  ```
  export ODBCINSTINI=/opt/amazon/redshift/Setup/odbcinst.ini
  ```

------