Options pour fournir des IAM informations d'identification - 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.

Options pour fournir des IAM informations d'identification

Pour fournir des IAM informations d'identification pour une ODBC connexion JDBC ou, choisissez l'une des options suivantes.

  • AWS profile

    Au lieu de fournir des valeurs d'identification sous forme de ODBC paramètres JDBC ou de paramètres, vous pouvez placer les valeurs dans un profil nommé. Pour de plus amples informations, veuillez consulter Utilisation d'un profil de configuration.

  • IAMinformations d'identification

    Fournissez des valeurs pour l' AccessKeyID et SecretAccessKey, éventuellement, SessionToken sous la forme de JDBC ou de ODBC paramètres. SessionToken n'est requis que pour un IAM rôle doté d'informations d'identification temporaires. Pour de plus amples informations, veuillez consulter JDBCet ODBC options pour fournir des IAM informations d'identification.

  • 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 de plus amples informations, veuillez consulter Plug-ins du fournisseur d'identifiants.

    Amazon Redshift JDBC et ses ODBC pilotes incluent des plug-ins pour les fournisseurs d'identifiants de fédération d'identité SAML basés sur les suivants :

    • Microsoft Active Identity Federation Services (AD FS)

    • PingOne

    • Okta

    • Microsoft Azure Active Directory (Azure AD)

    Vous pouvez fournir le nom du plugin et les valeurs associées sous forme de ODBC paramètres JDBC ou en utilisant un profil. Pour de plus amples informations, veuillez consulter Options de configuration du pilote JDBC version 2.1.

Pour de plus amples informations, veuillez consulter Étape 5 : configurer une ODBC connexion JDBC ou pour utiliser les IAM informations d'identification.

Utilisation d'un profil de configuration

Vous pouvez fournir les IAM informations d'identification, les options et GetClusterCredentials les options sous forme de paramètres dans les profils nommés de votre fichier AWS de configuration. Pour fournir le nom du profil, utilisez l'JDBCoption Profil. 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 plug-in SAML de fournisseur d'informations d'identification intégré à un Amazon JDBC Redshift ODBC ou à un pilote, vous pouvez utiliser les paramètres décrits ci-dessus dans. Plug-ins du fournisseur d'identifiants Si plugin_name n'est pas utilisé, les autres options sont ignorées.

L'exemple suivant montre le fichier ~/.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 dans l'user2exemple, spécifiez Profile=user2 dans le JDBCURL.

Pour plus d'informations sur l'utilisation des profils, consultez la section Configuration et paramètres des fichiers d'identification dans le Guide de l' AWS Command Line Interface utilisateur.

Pour plus d'informations sur l'utilisation des profils pour le JDBC conducteur, consultezSpécification des profils.

Pour plus d'informations sur l'utilisation des profils pour le ODBC conducteur, consultezMéthodes d'authentification.

JDBCet ODBC options pour fournir des IAM informations d'identification

Le tableau suivant répertorie les ODBC options JDBC et permettant de fournir des IAM informations d'identification.

Option

Description

Iam

À utiliser uniquement dans une chaîne de ODBC connexion. Définissez cette valeur sur 1 pour utiliser IAM l'authentification.

AccessKeyID

SecretAccessKey

SessionToken

ID de clé d'accès et clé d'accès secrète pour le IAM rôle ou l'utilisateur configuré pour l'authentification IAM de la base de données. SessionTokenn'est requis que pour un IAM rôle doté d'informations d'identification temporaires. SessionToken n'est pas utilisé pour un utilisateur. Pour plus d'informations, consultez Informations d'identification de sécurité temporaires.
plugin_name Nom complet d'une classe qui implémente un fournisseur d'informations d'identification. Le JDBC pilote Amazon Redshift inclut des plug-ins de fournisseurs d'informations d'identification SAML basés sur des plug-ins. Si vous fournissez plugin_name, vous pouvez également fournir d'autres options connexes. Pour de plus amples informations, veuillez consulter Plug-ins du fournisseur d'identifiants.

Profile

Nom d'un profil dans un fichier d' AWS informations d'identification ou de configuration contenant des valeurs pour les options de JDBC connexion. Pour de plus amples informations, veuillez consulter Utilisation d'un profil de configuration.

JDBCet ODBC options pour créer des informations d'identification utilisateur de base de données

Pour utiliser Amazon Redshift JDBC ou le ODBC pilote afin de créer des informations d'identification utilisateur de base de données, indiquez le nom d'utilisateur de la base de données en option JDBC ouODBC. 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 également configurer votre IdP pour fournir ces options, auquel cas vous n'avez pas besoin de les fournir sous forme d'options. JDBC ODBC Pour de plus amples informations, veuillez consulter Étape 2 : configurer les SAML assertions pour votre IdP.

Note

Si vous utilisez une variable de IAM politique${redshift:DbUser}, telle que décrite dans Politiques relatives aux ressources pour GetClusterCredentials la valeur pour, elle DbUser est remplacée par la valeur récupérée par le contexte de demande de l'APIopération. Les pilotes Amazon Redshift utilisent la valeur de la DbUser variable fournie par la connexionURL, plutôt que la valeur fournie sous forme d'SAMLattribut.

Pour sécuriser cette configuration, nous vous recommandons d'utiliser une condition dans une IAM politique afin de valider la DbUser valeur avec leRoleSessionName. Vous trouverez des exemples de définition d'une condition à l'aide d'une IAM politique dansExemple de politique d'utilisation GetClusterCredentials.

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

Option

Description
DbUser

Nom d'un utilisateur de la base de données. Si un utilisateur nommé DbUser existe dans la base de données, les informations d'identification de l'utilisateur temporaire ont les mêmes autorisations que l'utilisateur existant. S'il DbUser n'existe pas dans la base de données et AutoCreate s'il est vrai, un nouveau nom d'utilisateur DbUser est créé. Vous pouvez aussi désactiver le mot de passe d'un utilisateur existant. Pour plus d'informations, voir ALTER_ USER

AutoCreate

Spécifiez true pour créer un utilisateur de base de données portant le nom indiqué DbUser s'il n'en existe pas un. La valeur par défaut est false.

DbGroups Liste séparée par des virgules des noms d'un ou plusieurs groupes de bases de données existants que l'utilisateur de la base de données rejoint pour la séance en cours. Par défaut, le nouvel utilisateur est ajouté uniquement àPUBLIC.

Plug-ins du fournisseur d'identifiants

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 JDBC l'authentification ODBC unique.

Authentification multifacteur

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

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

OAuthdes flux de travail expliquant comment le plugin, le serveur local, le navigateur Web et le point de terminaison fonctionnent ensemble pour authentifier un utilisateur par SAML authentification.
  1. Un utilisateur essaie de se connecter.

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

  3. Le plugin lance un navigateur Web pour demander une SAML réponse au point HTTPS de terminaison du fournisseur d'identité URL fédéré à connexion unique spécifié.

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

  5. Une fois que l'utilisateur s'est authentifié et a donné son consentement, le point de terminaison du fournisseur d'identité fédéré renvoie une SAML réponse HTTPS à la valeur URI indiquée par. redirect_uri

  6. Le navigateur Web déplace le message de réponse avec la SAML réponse vers le champ indiquéredirect_uri.

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

Avec le plug-in Azure AD du navigateur, SAML l'authentification se déroule 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 par SAML authentification.
  1. Un utilisateur essaie de se connecter.

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

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

  4. Le navigateur Web suit le lien généré HTTPS et invite l'utilisateur à saisir ses informations d'identification. Le lien est généré à l'aide des propriétés de configuration, telles que le locataire et client_id.

  5. Une fois que l'utilisateur s'est authentifié et a donné son consentement, le point de oauth2/authorize terminaison Azure AD revient et envoie une réponse HTTPS avec le code d'autorisation à l'adresse indiquéeredirect_uri.

  6. Le navigateur Web déplace le message de réponse avec la SAML réponse vers le champ indiquéredirect_uri.

  7. Le serveur local accepte la connexion entrante et les demandes de plug-in, récupère le code d'autorisation et envoie une POST demande au point de oauth2/token terminaison Azure AD.

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

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

Examinez les sections suivantes :

Options du plugin

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

Option

Description
plugin_name

PourJDBC, le nom de classe qui implémente un fournisseur d'informations d'identification. Spécifiez l’un des éléments suivants :

  • Pour Active Directory Federation Services

    com.amazon.redshift.plugin.AdfsCredentialsProvider
  • Pour Okta

    com.amazon.redshift.plugin.OktaCredentialsProvider
  • Pour PingFederate

    com.amazon.redshift.plugin.PingCredentialsProvider
  • Pour Microsoft Azure Active Directory

    com.amazon.redshift.plugin.AzureCredentialsProvider
  • Pour SAML MFA

    com.amazon.redshift.plugin.BrowserSamlCredentialsProvider
  • Pour l'authentification unique Microsoft Azure Active Directory avec MFA

    com.amazon.redshift.plugin.BrowserAzureCredentialsProvider

PourODBC, spécifiez l'une des options suivantes :

  • Pour Active Directory Federation Services : adfs

  • Pour Okta : okta

  • Pour PingFederate : ping

  • Pour Microsoft Azure Active Directory : azure

  • Pour SAML MFA : browser saml

  • Pour l'authentification unique Microsoft Azure Active Directory avec MFA : browser azure ad

idp_host Nom de l'hôte du fournisseur d'identité d'entreprise. Ce nom ne doit pas inclure de barre oblique ('/'). Pour un fournisseur d'identité Okta, la valeur pour idp_host doit se terminer par .okta.com.

idp_port

Port utilisé par le fournisseur d'identité. La valeur par défaut est 443. Ce port est ignoré pour Okta.

preferred_role

Un rôle Amazon Resource Name (ARN) parmi les AttributeValue éléments de l'Roleattribut dans l'SAMLassertion. Collaborez avec votre administrateur IdP pour rechercher la valeur appropriée pour le rôle préféré. Pour de plus amples informations, veuillez consulter Étape 2 : configurer les SAML assertions pour votre IdP.

user

nom d'utilisateur d'entreprise, incluant le domaine, le cas échéant. Par exemple, pour Active Directory, le nom de domaine au format domaine\nom d'utilisateur est requis.
mot de passe

Mot de passe de l'utilisateur d'entreprise. Nous vous recommandons de ne pas utiliser cette option. Utilisez plutôt votre SQL client pour fournir le mot de passe.

app_id

ID d'une application Okta. Utilisé uniquement avec Okta. La valeur de app_id suit amazon_aws dans le lien intégré de l'application Okta. Collaborez avec votre administrateur IdP pour obtenir cette valeur. Voici un exemple de lien intégré d'application : https://example.okta.com/home/amazon_aws/0oa2hylwrpM8UGehd1t7/272

idp_tenant

Locataire utilisé pour Azure AD. Utilisé uniquement avec Azure.

client_id

ID client de l'application métier Amazon Redshift dans Azure AD. Utilisé uniquement avec Azure.