Configuración del acceso al catálogo de datos entre cuentas - Amazon Athena

Configuración del acceso al catálogo de datos entre cuentas

Para acceder a un catálogo de datos en otra cuenta, puede utilizar la característica AWS Glue entre cuentas de Athena o configurar el acceso entre cuentas en Lake Formation.

Opción A: configuración del acceso al catálogo de datos entre cuentas en Athena

Puede utilizar la característica de catálogo de AWS Glue entre cuentas de Athena para registrar el catálogo en su cuenta. Esta capacidad está disponible únicamente en la versión 2 o una versión posterior del motor Athena y está limitada al uso de la misma región entre cuentas. Para obtener más información, consulte Registrar un catálogo de datos desde otra cuenta.

Si el catálogo de datos que se compartirá tiene una política de recursos configurada en AWS Glue, debe actualizarse para permitir el acceso a AWS Resource Access Manager y conceder permisos a la cuenta B para utilizar el catálogo de datos de la cuenta A, como en el siguiente ejemplo.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "ram.amazonaws.com" }, "Action": "glue:ShareResource", "Resource": [ "arn:aws:glue:<REGION>:<ACCOUNT-A>:table/*/*", "arn:aws:glue:<REGION>:<ACCOUNT-A>:database/*", "arn:aws:glue:<REGION>:<ACCOUNT-A>:catalog" ] }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<ACCOUNT-B>:root" }, "Action": "glue:*", "Resource": [ "arn:aws:glue:<REGION>:<ACCOUNT-A>:table/*/*", "arn:aws:glue:<REGION>:<ACCOUNT-A>:database/*", "arn:aws:glue:<REGION>:<ACCOUNT-A>:catalog" ] } ] }

Para obtener más información, consulte Configuración del acceso entre cuentas a los catálogos de datos de AWS Glue.

Opción B: configuración del acceso entre cuentas en Lake Formation

AWS Lake Formation le permite utilizar una sola cuenta para administrar un catálogo de datos central. Puede utilizar esta característica para implementar el acceso entre cuentas Acceder los metadatos del catálogo de datos y los datos subyacentes. Por ejemplo, una cuenta de propietario puede conceder permiso SELECT en una tabla a otra cuenta (destinatario).

Para que aparezca una base de datos compartida o una tabla en el Editor de consultas de Athena, debe crear un enlace de recursos en Lake Formation a la base de datos o tabla compartida. Cuando la cuenta de destinatario en Lake Formation consulta la tabla del propietario, CloudTrail agrega el evento de acceso a datos a los registros de la cuenta de destinatario y de la cuenta de propietario.

Para las vistas compartidas, tenga en cuenta los siguientes puntos:

  • Las consultas se ejecutan en enlaces de recursos de destino, no en la vista o la tabla de origen y luego, la salida se comparte en la cuenta de destino.

  • No es suficiente compartir solo la vista. Todas las tablas que participan en la creación de la vista deben formar parte del recurso compartido entre cuentas.

  • El nombre del enlace de recursos creado en los recursos compartidos debe coincidir con el nombre del recurso en la cuenta de propietario. Si el nombre no coincide, aparece un mensaje de error como el siguiente Failed analyzing stored view 'awsdatacatalog.my-lf-resource-link.my-lf-view': line 3:3: Schema schema_name does not exist (Se produjo un error al momento de analizar la vista almacenada 'awsdatacatalog.my-lf-resource-link.my-lf-view': line 3:3: El esquema schema_name no existe)

Para obtener más información sobre el acceso entre cuentas en Lake Formation, consulte los siguientes recursos en la Guía para desarrolladores de AWS Lake Formation:

Acceso entre cuentas

Cómo funcionan los enlaces de recursos en Lake Formation

Registro entre cuentas de CloudTrail