Paso 5: Configurar una conexión JDBC u ODBC para usar credenciales de IAM
Puede configurar su cliente SQL con un controlador JDBC u ODBC de Amazon Redshift. Este controlador administra el proceso de creación de credenciales de usuario de la base de datos y establecimiento de una conexión entre el cliente SQL y la base de datos de Amazon Redshift.
Si usa un proveedor de identidad para la autenticación, especifique el nombre de un complemento de proveedor de credenciales. Los controladores JDBC y ODBC de Amazon Redshift incluyen complementos para los siguientes proveedores de identidad basados en SAML:
-
Active Directory Federation Services (AD FS)
-
PingOne
-
Okta
-
Microsoft Azure AD
Para ver los pasos para configurar Microsoft Azure AD como proveedor de identidades, consulte Configuración de la autenticación de inicio de sesión único JDBC u ODBC con Microsoft Azure AD.
Para configurar una conexión JDBC para usar las credenciales de IAM
-
Descargue el controlador JDBC de Amazon Redshift más reciente de la página Configuración de una conexión del controlador JDBC versión 2.1 para Amazon Redshift.
-
Cree una URL de JDBC con las opciones de credenciales de IAM en uno de los siguientes formatos. Para usar la autenticación de IAM, agregue
iam:
a la URL de JDBC de Amazon Redshift detrás dejdbc:redshift:
, como se muestra en el siguiente ejemplo.jdbc:redshift:iam://
Agregue
cluster-name
,region
yaccount-id
. El controlador JDBC usa la información de su cuenta de IAM y el nombre del clúster para recuperar el ID del clúster y la región de AWS. Para ello, el usuario o rol debe tener permiso para llamar a la operaciónredshift:DescribeClusters
con el clúster especificado. Si el usuario o el rol no tiene permiso para llamar a la operaciónredshift:DescribeClusters
, incluya el ID del clúster, la región de AWS y el puerto como se muestra en el siguiente ejemplo. El número de puerto es opcional.jdbc:redshift:iam://examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com:5439/dev
-
Agregue opciones de JDBC para proporcionar las credenciales de IAM. Para proporcionar las credenciales de IAM se usan diferentes combinaciones de opciones de JDBC. Para obtener más información, consulte Opciones de JDBC y ODBC para crear credenciales de usuario de base de datos.
La siguiente URL especifica AccessKeyID y SecretAccessKey para un usuario.
jdbc:redshift:iam://examplecluster:us-west-2/dev?AccessKeyID=AKIAIOSFODNN7EXAMPLE&SecretAccessKey=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
En el siguiente ejemplo, se especifica un perfil con nombre que contiene las credenciales de IAM.
jdbc:redshift:iam://examplecluster:us-west-2/dev?Profile=user2
-
Agregue las opciones JDBC que utiliza el controlador JDBC para llamar a la operación de la API
GetClusterCredentials
. No incluya estas opciones si llama a la operación de la APIGetClusterCredentials
mediante programación.El siguiente ejemplo incluye las opciones
GetClusterCredentials
de JDBC.jdbc:redshift:iam://examplecluster:us-west-2/dev?plugin_name=com.amazon.redshift.plugin.AzureCredentialsProvider&UID=user&PWD=password&idp_tenant=my_tenant&client_secret=my_secret&client_id=my_id
Para configurar una conexión ODBC para usar las credenciales de IAM
En el procedimiento siguiente, sólo puede encontrar pasos para configurar la autenticación de IAM. Para ver el procedimiento para usar la autenticación estándar, que usa un nombre de usuario y una contraseña de la base de datos, consulte Configuración de una conexión ODBC.
-
Instale y configure el controlador ODBC de Amazon Redshift más reciente para su sistema operativo. Para obtener más información, consulte la página Configuración de una conexión ODBC.
importante
La versión del controlador ODBC de Amazon Redshift debe ser 1.3.6.1000 o posterior.
-
Siga los pasos correspondientes a su sistema operativo para configurar las opciones de conexión.
Para obtener más información, consulte una de las siguientes:
-
En los sistemas operativos Microsoft Windows, acceda a la ventana “Amazon Redshift ODBC Driver DSN Setup” (Configuración de DSN del controlador ODBC de Amazon Redshift).
-
En Connection Settings (Configuración de conexión), escriba la siguiente información:
-
Data Source Name
-
Server (Servidor) (opcional)
-
Port (Puerto) (opcional)
-
Base de datos
Si el usuario o el rol tiene permiso para llamar a la operación
redshift:DescribeClusters
, solo son necesarios Nombre del origen de datos y Base de datos. Amazon Redshift utiliza ClusterId y Region (Región) para obtener el servidor y el puerto llamando a la operaciónDescribeCluster
.Si el usuario o el rol no tiene permiso para llamar a la operación
redshift:DescribeClusters
, proporcione especifique Servidor y Puerto. -
-
En Autenticación, elija un valor para Tipo de autenticación.
Para cada tipo de autenticación, introduzca los valores que se enumeran a continuación:
- Perfil de AWS
-
Introduzca la información siguiente:
-
ID del clúster
-
Region
-
Nombre del perfil
Ingrese el nombre de un perfil en un archivo de configuración de AWS que contenga valores para las opciones de conexión de ODBC. Para obtener más información, consulte Uso de un perfil de configuración.
(Opcional) Proporcione detalles de las opciones que utiliza el controlador ODBC para llamar a la operación de la API
GetClusterCredentials
:-
DbUser
-
User AutoCreate (Creación automática de usuarios)
-
DbGroups
Para obtener más información, consulte Opciones de JDBC y ODBC para crear credenciales de usuario de base de datos.
-
- Credenciales de IAM
-
Introduzca la información siguiente:
-
ID del clúster
-
Region
-
AccessKeyID (ID de clave de acceso) y SecretAccessKey (Clave de acceso secreta)
El ID de clave de acceso y la clave de acceso secreta del rol de IAM configurado para la autenticación de la base de datos de IAM.
-
SessionToken
SessionToken (Token de sesión) es obligatorio para las funciones de IAM con credenciales temporales. Para obtener más información, consulte Credenciales de seguridad temporales.
Proporcione detalles de las opciones que utiliza el controlador ODBC para llamar a la operación de la API
GetClusterCredentials
:-
DbUser (obligatorio)
-
User AutoCreate (Creación automática de usuarios) (opcional)
-
DbGroups (Grupos de base de datos) (opcional)
Para obtener más información, consulte Opciones de JDBC y ODBC para crear credenciales de usuario de base de datos.
-
- Proveedor de identidad: AD FS
-
Para la autenticación integrada de Windows con AD FS, deje User (Usuario) y Password (Contraseña) vacíos.
Proporcione los detalles del IdP:
-
IdP Host (Host del proveedor de identidades)
El nombre del host del proveedor de identidad corporativo. Este nombre no debe incluir barras diagonales ( / ).
-
IdP Port (Puerto del proveedor de identidades) (opcional)
El puerto usado por el proveedor de identidad. El valor predeterminado es 443.
-
Preferred Role (Función preferida)
El nombre de recurso de Amazon (ARN) de un rol de IAM obtenido de los elementos
AttributeValue
de varios valores del atributoRole
en la aserción SAML. Póngase en contacto con el administrador de su IdP para encontrar el valor adecuado para el rol preferido. Para obtener más información, consulte Configuración de aserciones SAML para el IdP.
(Opcional) Proporcione detalles de las opciones que utiliza el controlador ODBC para llamar a la operación de la API
GetClusterCredentials
:-
DbUser
-
User AutoCreate (Creación automática de usuarios)
-
DbGroups
Para obtener más información, consulte Opciones de JDBC y ODBC para crear credenciales de usuario de base de datos.
-
- Proveedor de identidades: PingFederate
-
En User (Usuario) y Password (Contraseña), introduzca el nombre de usuario y la contraseña del IdP.
Proporcione los detalles del IdP:
-
IdP Host (Host del proveedor de identidades)
El nombre del host del proveedor de identidad corporativo. Este nombre no debe incluir barras diagonales ( / ).
-
IdP Port (Puerto del proveedor de identidades) (opcional)
El puerto usado por el proveedor de identidad. El valor predeterminado es 443.
-
Preferred Role (Función preferida)
El nombre de recurso de Amazon (ARN) de un rol de IAM obtenido de los elementos
AttributeValue
de varios valores del atributoRole
en la aserción SAML. Póngase en contacto con el administrador de su IdP para encontrar el valor adecuado para el rol preferido. Para obtener más información, consulte Configuración de aserciones SAML para el IdP.
(Opcional) Proporcione detalles de las opciones que utiliza el controlador ODBC para llamar a la operación de la API
GetClusterCredentials
:-
DbUser
-
User AutoCreate (Creación automática de usuarios)
-
DbGroups
Para obtener más información, consulte Opciones de JDBC y ODBC para crear credenciales de usuario de base de datos.
-
- Proveedor de identidades: Okta
-
En User (Usuario) y Password (Contraseña), introduzca el nombre de usuario y la contraseña del IdP.
Proporcione los detalles del IdP:
-
IdP Host (Host del proveedor de identidades)
El nombre del host del proveedor de identidad corporativo. Este nombre no debe incluir barras diagonales ( / ).
-
IdP Port (Puerto del proveedor de identidades)
Este valor no es utilizado por Okta.
-
Preferred Role (Función preferida)
Un nombre de recurso de Amazon (ARN) de un rol de IAM obtenido de los elementos
AttributeValue
del atributoRole
en la aserción SAML. Póngase en contacto con el administrador de su IdP para encontrar el valor adecuado para el rol preferido. Para obtener más información, consulte Configuración de aserciones SAML para el IdP. -
Okta App ID (ID de aplicación Okta)
Un ID de una aplicación Okta. El valor de App ID se incluye detrás de "amazon_aws" en el enlace incrustado de la aplicación Okta. Póngase en contacto con el administrador de su IdP para obtener este valor.
(Opcional) Proporcione detalles de las opciones que utiliza el controlador ODBC para llamar a la operación de la API
GetClusterCredentials
:-
DbUser
-
User AutoCreate (Creación automática de usuarios)
-
DbGroups
Para obtener más información, consulte Opciones de JDBC y ODBC para crear credenciales de usuario de base de datos.
-
- Proveedor de identidades: Azure AD
-
En User (Usuario) y Password (Contraseña), introduzca el nombre de usuario y la contraseña del IdP.
En Cluster ID (ID de clúster) y Region (Región), ingrese el ID de clúster y la región de AWS del clúster de Amazon Redshift.
En Database (Base de datos), ingrese la base de datos que creó para el clúster de Amazon Redshift.
Proporcione los detalles del IdP:
-
Arrendatario de IdP
El inquilino utilizado para Azure AD.
-
Secreto de cliente de Azure
El secreto del cliente de la aplicación para empresas de Amazon Redshift en Azure.
-
ID de cliente de Azure
El ID del cliente (ID de la aplicación) de la aplicación para empresas de Amazon Redshift en Azure.
(Opcional) Proporcione detalles de las opciones que utiliza el controlador ODBC para llamar a la operación de la API
GetClusterCredentials
:-
DbUser
-
User AutoCreate (Creación automática de usuarios)
-
DbGroups
Para obtener más información, consulte Opciones de JDBC y ODBC para crear credenciales de usuario de base de datos.
-
-