Registro de un motor de consultas de terceros - AWS Lake Formation

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Registro de un motor de consultas de terceros

Antes de que un motor de consultas de terceros pueda utilizar las API operaciones de integración de aplicaciones, debe habilitar explícitamente los permisos para que el motor de consultas pueda realizar las API operaciones en su nombre. Esto se efectúa en unos pocos pasos:

  1. Debe especificar las AWS cuentas y las etiquetas de IAM sesión que requieren permiso para API realizar las operaciones de integración de aplicaciones a través del AWS Lake Formation consola, la AWS CLI o laAPI/SDK.

  2. Cuando el motor de consultas de terceros asume la función de ejecución en su cuenta, el motor de consultas debe adjuntar una etiqueta de sesión registrada en Lake Formation que represente al motor de terceros. Lake Formation usa esta etiqueta para validar si la solicitud proviene de un motor aprobado. Para obtener más información sobre las etiquetas de sesión, consulte las etiquetas de sesión en la Guía del IAM usuario.

  3. Al configurar una función de ejecución de un motor de consultas de terceros, debe tener el siguiente conjunto mínimo de permisos en la IAM política:

    { "Version": "2012-10-17", "Statement": {"Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "glue:GetTable", "glue:GetTables", "glue:GetDatabase", "glue:GetDatabases", "glue:CreateDatabase", "glue:GetUserDefinedFunction", "glue:GetUserDefinedFunctions", "glue:GetPartition", "glue:GetPartitions" ], "Resource": "*" } }
  4. Configure una política de confianza de roles en el rol de ejecución del motor de consultas para tener un control de acceso preciso sobre qué par clave-valor de etiqueta de sesión puede adjuntarse a este rol. En el ejemplo siguiente, a este rol solo se le permite adjuntar una clave de etiqueta de sesión "LakeFormationAuthorizedCaller" y un valor de etiqueta de sesión "engine1", y no se permite ningún otro par de valores clave de etiqueta de sesión.

    { "Sid": "AllowPassSessionTags", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/query-execution-role" }, "Action": "sts:TagSession", "Condition": { "StringLike": { "aws:RequestTag/LakeFormationAuthorizedCaller": "engine1" } } }

Cuando se LakeFormationAuthorizedCaller llama a la AssumeRole API operaciónSTS: para obtener credenciales para que las utilice el motor de consultas, la etiqueta de sesión debe incluirse en la AssumeRole solicitud. La credencial temporal devuelta se puede usar para hacer Lake Formation solicitudes de integración de API aplicaciones.

Lake Formation APIlas operaciones de integración de aplicaciones requieren que el responsable de la llamada sea un IAM rol. El IAM rol debe incluir una etiqueta de sesión con un valor predeterminado que se haya registrado Lake Formation. Esta etiqueta permite Lake Formation para comprobar que el rol utilizado para llamar a las API operaciones de integración de aplicaciones está autorizado a hacerlo.