Configure AWS Lake Formation - 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.

Configure AWS Lake Formation

Las siguientes secciones proporcionan información sobre cómo configurar Lake Formation por primera vez. No todos los temas de esta sección son necesarios para empezar a utilizar Lake Formation. Puede utilizar las instrucciones para configurar el modelo de permisos de Lake Formation para gestionar sus AWS Glue Data Catalog objetos y ubicaciones de datos existentes en Amazon Simple Storage Service (Amazon S3).

Esta sección muestra cómo configurar los recursos de Lake Formation de dos maneras diferentes:

  • Uso de una AWS CloudFormation plantilla

  • Uso de la consola de Lake Formation

Para configurar Lake Formation mediante la AWS consola, vaya aCrear un administrador de lago de datos.

Configure los recursos de Lake Formation usando AWS CloudFormation una plantilla

nota

La AWS CloudFormation pila realiza los pasos 1 a 6 de los anteriores, excepto los pasos 2 y 5. Ejecute Cambio del modelo de permisos predeterminado o uso del modo de acceso híbrido y Integración de IAM Identity Center manualmente desde la consola de Lake Formation.

  1. Inicie sesión en la AWS CloudFormation consola en https://console.aws.amazon.com/cloudformation como administrador de IAM en la región EE.UU. Este (Norte de Virginia).

  2. Seleccione Lanzar pila.

  3. Seleccione Siguiente en la pantalla Crear pila.

  4. Introduzca un Nombre de pila.

  5. Para DatalakeAdminNamey DatalakeAdminPassword, introduzca su nombre de usuario y contraseña como usuario administrador de Data Lake.

  6. Para DatalakeUser1Name y DatalakeUser1Password, introduce tu nombre de usuario y contraseña para el usuario de data lake analyst.

  7. Para ello DataLakeBucketName, introduce el nombre del nuevo depósito que se va a crear.

  8. Elija Next (Siguiente).

  9. En la página siguiente, seleccione Siguiente.

  10. Revisa los detalles en la última página y selecciona Acepto que eso AWS CloudFormation podría crear recursos de IAM.

  11. Seleccione Crear.

    La creación de la pila puede llevar hasta dos minutos.

Eliminar recursos

Si quieres limpiar los recursos de la AWS CloudFormation pila:

  1. Anule el registro del bucket de Amazon S3 creado por su pila, registrado como ubicación del lago de datos.

  2. Elimina la AWS CloudFormation pila. Esto eliminará todos los recursos creados por la pila.

Crear un administrador de lago de datos

Los administradores de los lagos de datos son inicialmente los únicos usuarios o roles AWS Identity and Access Management (de IAM) que pueden conceder permisos de Lake Formation sobre las ubicaciones de datos y los recursos del catálogo de datos a cualquier responsable (incluido uno mismo). Para obtener más información acerca de las capacidades de administrador de lago de datos, consulte Permisos implícitos de Lake Formation. De forma predeterminada, con Lake Formation puede crear hasta 30 administradores de lago de datos.

Puede crear un administrador de lagos de datos mediante la consola de Lake Formation o la operación PutDataLakeSettings de la API de Lake Formation.

Para crear un administrador de lago de datos, se requieren los permisos siguientes. El usuario Administrator tiene estos permisos de forma implícita.

  • lakeformation:PutDataLakeSettings

  • lakeformation:GetDataLakeSettings

Si concede a un usuario la política AWSLakeFormationDataAdmin, dicho usuario no podrá crear usuarios administradores adicionales de Lake Formation.

Para crear un administrador de lago de datos (consola)
  1. Si el usuario que va a ser administrador del lago de datos aún no existe, utilice la consola de IAM para crearlo. De lo contrario, elija un usuario existente para ser administrador del lago de datos.

    nota

    Le recomendamos que no seleccione a un usuario administrativo de IAM (usuario con la política AdministratorAccess AWS gestionada) como administrador del lago de datos.

    Adjunte las siguientes políticas AWS administradas al usuario:

    Políticas ¿Obligatoria? Notas
    AWSLakeFormationDataAdmin Obligatorio Permisos básicos de administrador del lago de datos. Esta política AWS gestionada contiene una denegación explícita de la operación de la API de Lake Formation, PutDataLakeSetting que impide a los usuarios crear nuevos administradores de lagos de datos.
    AWSGlueConsoleFullAccess, CloudWatchLogsReadOnlyAccess Opcional Vincule estas políticas si el administrador del lago de datos va a solucionar los flujos de trabajo creados a partir de esquemas de Lake Formation. Estas políticas permiten al administrador del lago de datos ver la información de solución de problemas en el AWS Glue consola y la Amazon CloudWatch Logs consola. Para obtener más información acerca de los flujos de trabajo, consulte Importación de datos mediante flujos de trabajo en Lake Formation.
    AWSLakeFormationCrossAccountManager Opcional Vincule esta política para que el administrador del lago de datos pueda conceder y revocar permisos entre cuentas sobre los recursos del Catálogo de datos. Para obtener más información, consulte Compartir datos entre cuentas en Lake Formation.
    AmazonAthenaFullAccess Opcional Adjunte esta política si el administrador del lago de datos va a ejecutar consultas en él Amazon Athena.
  2. Adjunte la siguiente política en línea, que otorga al administrador del lago de datos permiso para crear el rol vinculado al servicio de Lake Formation. Un posible nombre para la política es LakeFormationSLR.

    El rol vinculado al servicio permite al administrador del lago de datos registrar más fácilmente las ubicaciones de Amazon S3 con Lake Formation. Para más información sobre el rol vinculado al servicio Lake Formation, consulte Uso de roles vinculados a servicios para Lake Formation.

    importante

    En todas las políticas siguientes, <account-id> sustitúyalo por un número de AWS cuenta válido.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringEquals": { "iam:AWSServiceName": "lakeformation.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "iam:PutRolePolicy" ], "Resource": "arn:aws:iam::<account-id>:role/aws-service-role/lakeformation.amazonaws.com/AWSServiceRoleForLakeFormationDataAccess" } ] }
  3. (Opcional) Vincule la siguiente política PassRole insertada al usuario. Esta política permite al administrador del lago de datos crear y ejecutar flujos de trabajo. El permiso iam:PassRole capacita al flujo de trabajo asumir el rol LakeFormationWorkflowRole para crear rastreadores y trabajos, y vincular el rol a los rastreadores y trabajos creados. Un posible nombre para la política es UserPassRole.

    importante

    <account-id>Sustitúyalo por un número de AWS cuenta válido.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "PassRolePermissions", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::<account-id>:role/LakeFormationWorkflowRole" ] } ] }
  4. (Opcional) Adjunte esta política adicional insertada si su cuenta va a conceder o recibir permisos entre cuentas de Lake Formation. Esta política permite al administrador del lago de datos ver y aceptar AWS Resource Access Manager (AWS RAM) invitaciones para compartir recursos. Además, para los administradores de lagos de datos de la cuenta AWS Organizations de administración, la política incluye un permiso para permitir las concesiones entre cuentas a las organizaciones. Para obtener más información, consulte Compartir datos entre cuentas en Lake Formation.

    Un posible nombre para la política es RAMAccess.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ram:AcceptResourceShareInvitation", "ram:RejectResourceShareInvitation", "ec2:DescribeAvailabilityZones", "ram:EnableSharingWithAwsOrganization" ], "Resource": "*" } ] }
  5. Abra la AWS Lake Formation consola en https://console.aws.amazon.com/lakeformation/e inicie sesión como el usuario administrador que creó Creación de un usuario con acceso administrativo o como usuario con una política AWS gestionada por AdministratorAccess el usuario.

  6. Si aparece la ventana de bienvenida a Lake Formation, elija el usuario de IAM que creó o seleccionó en el Paso 1 y, a continuación, elija Comenzar.

  7. Si no aparece la ventana de bienvenida a Lake Formation, siga estos pasos para configurar un administrador de Lake Formation.

    1. En el panel de navegación, en Administradores, seleccione Roles y tareas administrativas. En la sección de administradores del lago de datos de la página de la consola, seleccione Agregar.

    2. En el cuadro de diálogo Agregar administradores, como tipo de acceso seleccione Administrador del lago de datos.

    3. Para los usuarios y roles de IAM, elija el usuario de IAM que creó o seleccionó en el Paso 1 y, a continuación, seleccione Guardar.

Cambio del modelo de permisos predeterminado o uso del modo de acceso híbrido

Lake Formation comienza con la configuración «Use only IAM access control» habilitada para garantizar la compatibilidad con el AWS Glue Data Catalog comportamiento existente. Este ajuste le permite administrar el acceso a sus datos en el lago de datos y sus metadatos mediante políticas de IAM y políticas de bucket de Amazon S3.

Para facilitar la transición de los permisos del lago de datos de un modelo IAM y Amazon S3 a los permisos de Lake Formation, le recomendamos que utilice el modo de acceso híbrido para el Catálogo de datos. Con el modo de acceso híbrido, dispone de una vía incremental en la que puede habilitar los permisos de Lake Formation para un conjunto específico de usuarios sin interrumpir a otros usuarios o cargas de trabajo existentes.

Para obtener más información, consulte Modo de acceso híbrido.

Desactive la configuración predeterminada para mover a todos los usuarios existentes de una tabla a Lake Formation en un solo paso.

importante

Si tiene uno existente AWS Glue Data Catalog bases de datos y tablas, no siga las instrucciones de esta sección. En su lugar, siga las instrucciones en Actualización de los permisos de datos AWS Glue al modelo AWS Lake Formation.

aviso

Si cuenta con una automatización que crea bases de datos y tablas en el Catálogo de datos, los pasos siguientes podrían provocar un error en los trabajos de automatización y extracción, transformación y carga (ETL) posteriores. Continúe solo después de haber modificado sus procesos existentes o de haber concedido permisos explícitos de Lake Formation a las entidades principales requeridas. Para obtener información sobre los permisos de Lake Formation, consulte Referencia de permisos de Lake Formation.

Para cambiar la configuración predeterminada del Catálogo de datos
  1. Continúe en la consola de Lake Formation en https://console.aws.amazon.com/lakeformation/. Asegúrese de haber iniciado sesión como el usuario administrador que creó Creación de un usuario con acceso administrativo o como usuario con la política AdministratorAccess AWS gestionada.

  2. Modifique la configuración del Catálogo de datos:

    1. En el panel de navegación, Administración, seleccione Configuración del Catálogo de datos.

    2. Desmarque ambas casillas y seleccione Guardar.

      El cuadro de diálogo de configuración del Catálogo de datos tiene el subtítulo «Permisos predeterminados para las bases de datos y tablas recién creadas» y dos casillas de verificación, descritas en el texto.
  3. Revoque el permiso de IAMAllowedPrincipals a los creadores de bases de datos.

    1. En el panel de navegación, en Administración, seleccione Roles y tareas administrativas.

    2. En la página de la consola de Roles y tareas administrativas, en la sección Creadores de bases de datos, seleccione el grupo IAMAllowedPrincipals y elija Revocar.

      Aparece el cuadro de diálogo para revocar permisos, en el que se muestra que IAMAllowedPrincipals tiene el permiso para crear base de datos.

    3. Seleccione Revocar.

Asignar permisos a usuarios de Lake Formation

Cree un usuario para tener acceso al lago de datos AWS Lake Formation. Este usuario tiene el privilegio mínimo de permisos para consultar el lago de datos.

Para más información sobre la creación de usuarios o grupos, consulte Identidades IAM en la Guía del usuario de IAM.

Para adjuntar permisos a un usuario no administrador con el fin de acceder a los datos de Lake Formation
  1. Abra la consola de IAM en https://console.aws.amazon.com/iam e inicie sesión como usuario administrador que haya creado en Creación de un usuario con acceso administrativo o como usuario con la política AdministratorAccess AWS gestionada.

  2. Elija Usuarios o Grupos de usuarios.

  3. En la lista, seleccione el nombre del usuario o del grupo en el que integrará una política.

    Elige Permisos.

  4. Elija Agregar permisos y seleccione Adjuntar políticas directamente. Introduzca Athena en el campo de texto Filtrar políticas. En la lista de resultados, marque la casilla de AmazonAthenaFullAccess.

  5. Pulse el botón Crear política. En la página Crear política, elija la pestaña JSON. Copie la política siguiente y péguela en el editor de políticas.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "glue:GetTable", "glue:GetTables", "glue:SearchTables", "glue:GetDatabase", "glue:GetDatabases", "glue:GetPartitions", "lakeformation:GetResourceLFTags", "lakeformation:ListLFTags", "lakeformation:GetLFTag", "lakeformation:SearchTablesByLFTags", "lakeformation:SearchDatabasesByLFTags" ], "Resource": "*" } ] }
  6. Seleccione el botón Siguiente en la parte inferior hasta que vea la página Revisar la política. Escriba un nombre para la política, por ejemplo DatalakeUserBasic. Seleccione Crear política y, a continuación, cierre la pestaña Políticas o la ventana del navegador.

Configurar una ubicación de Amazon S3 para el lago de datos

Para utilizar Lake Formation con el fin de administrar y proteger los datos de su lago de datos, primero debe registrar una ubicación de Amazon S3. Al registrar una ubicación, se registran esa ruta de Amazon S3 y todas las carpetas incluidas en esa ruta, lo que permite a Lake Formation aplicar los permisos de nivel de almacenamiento. Cuando el usuario solicita datos de un motor integrado como Amazon Athena, Lake Formation proporciona acceso a los datos en lugar de utilizar los permisos del usuario.

Cuando registra una ubicación, especifica un rol de IAM que concede permisos de lectura y escritura en esa ubicación. Lake Formation asume esa función al proporcionar credenciales temporales a AWS los servicios integrados que solicitan acceso a los datos en la ubicación registrada de Amazon S3. Puede especificar el rol vinculado al servicio (SLR) de Lake Formation o crear el suyo propio.

Utilice un rol personalizado en las siguientes situaciones:

El rol que elija debe tener los permisos necesarios, tal y como se describe en Requisitos de los roles utilizados para registrar ubicaciones. Para obtener instrucciones sobre cómo registrar una ubicación de Amazon S3, consulte Añadir una ubicación de Amazon S3 a su lago de datos.

(Opcional) Configuración de filtrado de datos externo

Si tiene intención de analizar y procesar los datos de su lago de datos utilizando motores de consulta de terceros, debe optar por permitir que los motores externos accedan a los datos gestionados por Lake Formation. Si no lo hace, los motores externos no podrán acceder a los datos de las ubicaciones de Amazon S3 que estén registradas en Lake Formation.

Lake Formation es compatible con los permisos a nivel de columna para restringir el acceso a columnas específicas de una tabla. Los servicios analíticos integrados Amazon Athena, como Amazon Redshift Spectrum y Amazon EMR, recuperan metadatos de tablas no filtrados del. AWS Glue Data Catalog El filtrado real de las columnas en las respuestas a las consultas es responsabilidad del servicio integrado. Es responsabilidad de los administradores externos gestionar adecuadamente los permisos para evitar el acceso no autorizado a los datos.

Para permitir que motores de terceros accedan a los datos y los filtren (consola)
  1. Continúe en la consola de Lake Formation en https://console.aws.amazon.com/lakeformation/. Compruebe que ha iniciado sesión como una entidad principal con el permiso de IAM en la operación de la API PutDataLakeSettings de Lake Formation. El usuario administrador de IAM que ha creado en Inscríbase en una Cuenta de AWS tiene este permiso.

  2. En el panel de navegación, Administración, seleccione Configuración de integración de aplicaciones.

  3. En la página Configuración de integración de aplicaciones, haga lo siguiente:

    1. Marque la casilla Permitir que motores externos filtren datos en las ubicaciones de Amazon S3 registradas en Lake Formation.

    2. Introduzca los valores de las etiquetas de sesión definidos para motores de terceros.

    3. Para la AWS cuenta IDs, introduzca la cuenta IDs desde la que los motores de terceros pueden acceder a las ubicaciones registradas en Lake Formation. Pulse Intro después de cada ID de cuenta.

    4. Seleccione Guardar.

Para permitir que los motores externos accedan a los datos sin validar las etiquetas de sesión, consulte Integración de aplicaciones para un acceso completo a la tabla

(Opcional) Conceda acceso a la clave de cifrado del Catálogo de datos

Si AWS Glue Data Catalog está cifrada, conceda permisos AWS Identity and Access Management (de IAM) sobre la AWS KMS clave a los directores que necesiten conceder permisos de Lake Formation en las bases de datos y tablas de Data Catalog.

Para obtener más información, consulte la Guía para desarrolladores de AWS Key Management Service .

(Opcional) Crear un rol de IAM para flujos de trabajo

Con AWS Lake Formationél, puede importar sus datos mediante flujos de trabajo ejecutados por AWS Glue rastreadores. Un flujo de trabajo define el origen de datos y la programación para importar los datos a su lago de datos. Puede definir fácilmente los flujos de trabajo mediante los esquemas o las plantillas proporcionados por Lake Formation.

Al crear un flujo de trabajo, debe asignarle un rol AWS Identity and Access Management (IAM) que otorgue a Lake Formation los permisos necesarios para ingerir los datos.

En el procedimiento siguiente se presupone que está familiarizado con IAM.

Crear un rol de IAM para flujos de trabajo
  1. Abra la consola de IAM en https://console.aws.amazon.com/iam e inicie sesión como el usuario administrador que creó Creación de un usuario con acceso administrativo o como usuario con la AdministratorAccess AWS política gestionada.

  2. En el panel de navegación, seleccione Roles, Crear rol.

  3. En la página Crear rol, elija el servicio AWS y, a continuación, Glue. Elija Next (Siguiente).

  4. En la página Añadir permisos, busque la política AWSGlueServiceRolegestionada y seleccione la casilla de verificación situada junto al nombre de la política en la lista. A continuación, complete el asistente de creación de roles, asignando al rol el nombre LFWorkflowRole. Para terminar, seleccione Crear rol.

  5. Vuelva a la página de funcionesLFWorkflowRole, busque y elija el nombre de la función.

  6. En la página Resumen del rol, en la pestaña Permisos, elija Crear política insertada. En la pantalla Crear política, vaya a la pestaña JSON y añada la siguiente política insertada. Un posible nombre para la política es LakeFormationWorkflow.

    importante

    En la siguiente política, <account-id> sustitúyalo por un Cuenta de AWS número válido.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "lakeformation:GrantPermissions" ], "Resource": "*" }, { "Effect": "Allow", "Action": ["iam:PassRole"], "Resource": [ "arn:aws:iam::<account-id>:role/LakeFormationWorkflowRole" ] } ] }

    A continuación se describen brevemente los permisos de esta política:

    • lakeformation:GetDataAccess permite que los trabajos creados por el flujo de trabajo escriban en la ubicación de destino.

    • lakeformation:GrantPermissions permite que el flujo de trabajo conceda el permiso de SELECT sobre las tablas de destino.

    • iam:PassRole permite al servicio asumir el rol de LakeFormationWorkflowRole para crear rastreadores y trabajos (instancias de flujos de trabajo) y asociar el rol a los rastreadores y trabajos creados.

  7. Compruebe que el rol LakeFormationWorkflowRole tenga dos políticas asociadas.

  8. Si va a ingerir datos de fuera de la ubicación del lago de datos, añada una política insertada que conceda permisos para leer los datos de origen.