Propiedades de conexión a AWS Glue - AWS Glue

Propiedades de conexión a AWS Glue

Cuando se define una conexión en la consola de AWS Glue, se deben proporcionar valores para las siguientes propiedades:

Connection name (Nombre de la conexión)

Escriba un nombre único para la conexión.

Connection type (Tipo de conexión)

Elija JDBC o uno de los tipos de conexión específicos.

Para obtener más información sobre el tipo de conexión JDBC, consulte Propiedades de la conexión JDBC a AWS Glue

Elija Network (Red) para conectarse a un origen de datos dentro de un entorno de Amazon Virtual Private Cloud (Amazon VPC).

En función del tipo que elija, la consola de AWS Glue muestra otros campos obligatorios. Por ejemplo, si elige Amazon RDS, debe elegir el motor de base de datos.

Exigir conexión SSL

Cuando selecciona esta opción, AWS Glue debe comprobar que se realizó la conexión a la base de datos a través de una conexión de capa de conexión segura (SSL) de confianza.

Para obtener más información, incluidas las opciones adicionales que están disponibles al seleccionar esta opción, consulte Propiedades SSL de conexión a AWS Glue.

Seleccione el clúster MSK [solo streaming administrada por Amazon para Apache Kafka (MSK)]

Especifica un clúster MSK de otra cuenta de AWS.

URL de servidor de arranque Kafka (sólo Kafka)

Especifica una lista separada por comas de direcciones URL del servidor de arranque. Incluya el número de puerto. Por ejemplo: b-1.vpc-test-2.o4q88o.c6.kafka.us-east-1.amazonaws.com:9094, b-2.vpc-test-2.o4q88o.c6.kafka.us-east-1.amazonaws.com:9094, b-3.vpc-test-2.o4q88o.c6.kafka.us-east-1.amazonaws.com:9094

Propiedades de la conexión JDBC a AWS Glue

AWS Glue puede conectarse a los siguientes almacenes de datos a través de una conexión JDBC:

  • Amazon Redshift

  • Amazon Aurora

  • Microsoft SQL Server

  • MySQL

  • Oracle

  • PostgreSQL

  • Amazon RDS for MariaDB

importante

Actualmente, los trabajos de ETL pueden utilizar conexiones JDBC dentro de una sola subred. Si tiene varios almacenes de datos en un flujo de trabajo, deben estar en la misma subred.

A continuación, se muestran propiedades adicionales para el tipo de conexión JDBC.

JDBC URL (Dirección URL de JDBC)

Escriba la dirección URL para el almacén de datos de JDBC. Para la mayoría de motores de base de datos, este campo se encuentra en el siguiente formato. En este formato, sustituya protocol (protocolo), host, port (puerto) y db_name con su propia información.

jdbc:protocol://host:port/db_name

En función del motor de base de datos, es posible que se requiera un formato de dirección URL de JDBC diferente. Este formato puede utilizar los dos puntos (:) y la barra inclinada (/) de forma ligeramente diferente o palabras clave distintas para especificar bases de datos.

Para que JDBC se conecte al almacén de datos, se requiere un db_name en el almacén de datos. Se utiliza db_name para establecer una conexión de red con los ajustes username y password proporcionados. Cuando se haya establecido la conexión, AWS Glue tendrá acceso a otras bases de datos en el almacén de datos para ejecutar un rastreador o un flujo de trabajo de ETL.

Los siguientes ejemplos de dirección URL de JDBC muestran la sintaxis para diversos motores de base de datos.

  • Para conectarse a un almacén de datos de clústeres de Amazon Redshift con una base de datos de dev:

    jdbc:redshift://xxx.us-east-1.redshift.amazonaws.com:8192/dev

  • Para conectarse a un almacén de datos de Amazon RDS for MySQL con una base de datos de employee:

    jdbc:mysql://xxx-cluster.cluster-xxx.us-east-1.rds.amazonaws.com:3306/employee

  • Para conectarse a un almacén de datos de Amazon RDS for PostgreSQL con una base de datos de employee:

    jdbc:postgresql://xxx-cluster.cluster-xxx.us-east-1.rds.amazonaws.com:5432/employee

  • Para conectarse a un almacén de datos de Amazon RDS for Oracle con un nombre de servicio employee:

    jdbc:oracle:thin://@xxx-cluster.cluster-xxx.us-east-1.rds.amazonaws.com:1521/employee

    La sintaxis para Amazon RDS for Oracle puede seguir los siguientes patrones. En estos patrones, sustituya host, port (puerto), service_name (nombre de servicio) y SID con su propia información.

    • jdbc:oracle:thin://@host:port/service_name

    • jdbc:oracle:thin://@host:port:SID

  • Para conectarse a un almacén de datos de Amazon RDS for Microsoft SQL Server con una base de datos de employee:

    jdbc:sqlserver://xxx-cluster.cluster-xxx.us-east-1.rds.amazonaws.com:1433;databaseName=employee

    La sintaxis para Amazon RDS for SQL Server puede seguir los siguientes patrones. En estos patrones, reemplace server_name, port y db_name por su propia información.

    • jdbc:sqlserver://server_name:port;database=db_name

    • jdbc:sqlserver://server_name:port;databaseName=db_name

  • Para conectarse a una instancia de Amazon Aurora PostgreSQL de la base de datos de employee, especifique el punto de enlace para la instancia de base de datos, el puerto y el nombre de la base de datos:

    jdbc:postgresql://employee_instance_1.xxxxxxxxxxxx.us-east-2.rds.amazonaws.com:5432/employee

  • Para conectarse a un almacén de datos de Amazon RDS for MariaDB con una base de datos de employee, especifique el punto de conexión para la instancia de la base de datos, el puerto y el nombre de la base de datos:

    jdbc:mysql://xxx-cluster.cluster-xxx.aws-region.rds.amazonaws.com:3306/employee

Nombre de usuario

Proporcione un nombre de usuario que tenga permisos para obtener acceso al almacén de datos de JDBC.

Contraseña

Escriba la contraseña para el nombre de usuario con los permisos de acceso al almacén de datos de JDBC.

Puerto

Escriba el puerto que se utiliza en la URL de JDBC para conectarse a una instancia de Oracle de Amazon RDS. Este campo es solo se muestra cuando se selecciona Require SSL connection (Solicitar conexión SSL) para una instancia de Oracle de Amazon RDS.

VPC

Seleccione el nombre de la nube privada virtual (VPC) que contenga el almacén de datos. La consola de AWS Glue muestra todas las VPC para la región actual.

Subred

Seleccione la subred dentro de la VPC que contenga el almacén de datos. La consola de AWS Glue incluye todas las subredes para el almacén de datos en la VPC.

Grupos de seguridad

Elija los grupos de seguridad asociados a su almacén de datos. AWS Glue requiere uno o varios grupos de seguridad con una regla de fuente de entrada que permite AWS Glue establezca la conexión. La consola de AWS Glue incluye todos los grupos de seguridad con acceso de entrada a su VPC. AWS Glue asocia estos grupos de seguridad con la interfaz de red elástica que se asocia a su subred de VPC.

Propiedades SSL de conexión a AWS Glue

A continuación, se muestran los detalles sobre la propiedad Require SSL connection (Solicitar conexión SSL) de la conexiones a AWS Glue.

Si esta opción no está seleccionada, AWS Glue ignora los errores cuando utiliza SSL para cifrar una conexión a un almacén de datos. Para obtener instrucciones de configuración consulte la documentación del almacén de datos. Al seleccionar esta opción, si AWS Glue no puede conectarse con SSL, se produce un error en la ejecución del trabajo, el rastreador o las instrucciones ETL en un punto de enlace de desarrollo.

Esta opción se valida en el lado del cliente de AWS Glue. Para las conexiones JDBC, AWS Glue solo se conecta a través de SSL con validación de certificados y nombres de host. El soporte de conexión SSL está disponible para lo siguiente:

  • Oracle Database

  • Microsoft SQL Server

  • PostgreSQL

  • Amazon Redshift

  • MySQL (solo instancias de Amazon RDS)

  • Amazon Aurora MySQL (solo instancias de Amazon RDS)

  • Amazon Aurora PostgreSQL (solo instancias de Amazon RDS)

  • Kafka, que incluye Amazon Managed Streaming for Apache Kafka

nota

Para habilitar un almacén de datos de Oracle de Amazon RDS para utilizar Require SSL connection (Solicitar conexión SSL), debe crear y asociar un grupo de opciones a la instancia de Oracle.

  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/.

  2. Agregue un Option group (Grupo de opciones) a la instancia de Oracle de Amazon RDS. Para obtener más información sobre cómo agregar un grupo de opciones en la consola de Amazon RDS, consulte Creating an Option Group (Creación de un grupo de opciones)

  3. Añada una Option (Opción) al grupo de opciones para SSL. El Port (Puerto) que especifique para SSL se usará posteriormente al crear una URL de conexión de JDBC de AWS Glue para la instancia de Oracle de Amazon RDS. Para obtener más información sobre cómo agregar una opción en la consola de Amazon RDS, consulte Agregar una opción a un grupo de opciones en la Guía del usuario de Amazon RDS. Para obtener más información acerca de las opciones de SSL de Oracle, consulte SSL de Oracle en la Guía del usuario de Amazon RDS.

  4. En la consola de AWS Glue, cree una conexión a la instancia de Oracle de Amazon RDS. En la definición de conexión, seleccione Require SSL connection (Solicitar conexión SSL). Cuando se solicite, ingrese el Port (Puerto) que utilizó en la opción SSL de Oracle de Amazon RDS.

Las siguientes propiedades opcionales adicionales están disponibles cuando se selecciona Require SSL connection (Solicitar conexión SSL) para una conexión:

Certificado JDBC personalizado en S3

Si tiene un certificado que utiliza actualmente para la comunicación SSL con sus bases de datos locales o en la nube, puede utilizar dicho certificado para las conexiones SSL a orígenes o destinos de datos de AWS Glue. Ingrese una ubicación de Amazon Simple Storage Service (Amazon S3) que contenga un certificado raíz personalizado. AWS Glue utiliza este certificado para establecer una conexión SSL a la base de datos. AWS Glue solo controla los certificados X.509. El certificado debe estar codificado en DER y suministrarse en formato PEM con codificación base64.

Si este campo se deja en blanco, se utiliza el certificado predeterminado.

Custom JDBC certificate string (Cadena de certificado JDBC personalizada)

Ingrese la información del certificado específico de su base de datos JDBC. Esta cadena se utiliza para la coincidencia de dominios o la coincidencia de nombres distintivos (DN). Para Oracle Database, esta cadena se asigna al parámetro SSL_SERVER_CERT_DN de la sección de seguridad del archivo tnsnames.ora. Para Microsoft SQL Server, esta cadena se utiliza como hostNameInCertificate.

A continuación se muestra un ejemplo del parámetro SSL_SERVER_CERT_DN de Oracle Database.

cn=sales,cn=OracleContext,dc=us,dc=example,dc=com
Ubicación del certificado de CA privada de Kafka

Si tiene un certificado que utiliza actualmente para la comunicación SSL con su almacén de datos de Kafka, puede utilizar dicho certificado con su conexión de AWS Glue. Esta opción es necesaria para los almacenes de datos de Kafka y opcional para almacenes de datos de Amazon Managed Streaming for Apache Kafka. Ingrese una ubicación de Amazon Simple Storage Service (Amazon S3) que contenga un certificado raíz personalizado. AWS Glue utiliza este certificado para establecer una conexión SSL al almacén de datos de Kafka. AWS Glue solo controla los certificados X.509. El certificado debe estar codificado en DER y suministrarse en formato PEM con codificación base64.

Skip certificate validation (Omitir la validación de certificados)

Seleccione la casilla de verificación Skip certificate validation (Omitir validación de certificado) para omitir la validación del certificado personalizado por AWS Glue. Si decide validar, AWS Glue valida el algoritmo de firma y el algoritmo de clave pública de sujeto para el certificado. Si el certificado no supera la validación, se producirá un error en cualquier trabajo de ETL o rastreador que utilice la conexión.

Los únicos algoritmos de firma permitidos son SHA256withRSA, SHA384withRSA o SHA512withRSA. Para el algoritmo de clave pública del asunto, la longitud de la clave debe ser al menos 2048.

Ubicación del almacén de claves del cliente de Kafka

La ubicación de Amazon S3 del archivo de almacén de claves del cliente para la autenticación del lado del cliente Kafka. La ruta debe tener el formato s3://bucket/prefix/filename.jks. Debe terminar con el nombre de archivo y la extensión .jks.

Contraseña del almacén de claves del cliente de Kafka (opcional)

La contraseña para acceder al almacén de claves proporcionado.

Contraseña de la clave del cliente de Kafka (opcional)

Un almacén de claves puede consistir en varias claves, por lo que esta es la contraseña para acceder a la clave del cliente que se utilizará con la clave del lado del servidor Kafka.

Propiedades de conexión de AWS Glue Kafka para autenticación de clientes

AWS Glue admite el marco de autenticación simple y capa de seguridad (SASL) para la autenticación. El marco SASL admite varios mecanismos de autenticación y AWS Glue ofrece tanto el protocolo SCRAM (nombre de usuario y contraseña) como GSSAPI (protocolo Kerberos).

Usar AWS Glue Studio para configurar uno de los siguientes métodos de autenticación de clientes. Para obtener más información, consulte Creación de conexiones para conectores en la guía del usuario AWS Glue Studio.

  • Ninguno: sin autenticación. Esto resulta útil si se crea una conexión con fines de prueba.

  • SASL/SCRAM-SHA-512: la elección de este método de autenticación le permitirá especificar credenciales de autenticación. Existen dos opciones disponibles:

    • Usar AWS Secrets Manager (recomendado): si selecciona esta opción, puede almacenar su token en AWS Secrets Manager y dejar que AWS Glue acceda a él cuando sea necesario. Especificar el ARN del secreto que almacena las credenciales de autenticación SSL o SASL

      Para obtener más información, consulte Granting permission to retrieve secret values (Concesión de permiso para recuperar valores secretos).

    • Nombre de usuario y contraseña del proveedor directamente.

  • SASL/GSSAPI (Kerberos): si selecciona esta opción, puede seleccionar la ubicación del archivo keytab, el archivo krb5.conf e ingresar el nombre principal y el nombre del servicio de Kerberos. Las ubicaciones de los archivos keytab y krb5.conf deben estar en una ubicación de Simple Storage Service (Amazon S3). Dado que MSK aún no admite SASL/GSSAPI, esta opción solo está disponible para clústeres Apache Kafka administrados por el cliente. Para obtener más información, consulte MIT Kerberos Documentation: Keytab (Documentación de MIT Kerberos: Keytab).

  • Autenticación de cliente SSL: si selecciona esta opción, puede seleccionar la ubicación del almacén de claves del cliente Kafka navegando por Simple Storage Service (Amazon S3). Opcionalmente, puede ingresar la contraseña del almacén de claves del cliente Kafka y la contraseña de clave de cliente Kafka.