Permisos de metadatos - 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.

Permisos de metadatos

Lake Formation proporciona autorización y control de acceso para el Catálogo de datos. Cuando un rol de IAM efectúa una llamada a la API del Catálogo de datos desde cualquier sistema, el Catálogo de datos verifica los permisos de datos del usuario y solo devuelve los metadatos a los que el usuario tiene permisos para acceder. Por ejemplo, si un rol de IAM tiene acceso solo a una tabla dentro de una base de datos, y un servicio o un usuario que asume el rol ejecuta la operación GetTables, la respuesta contendrá solo esa tabla, con independencia del número de tablas de la base de datos.

Configuración predeterminada: permisos de grupo IAMAllowedPrincipal

De forma predeterminada, AWS Lake Formation asigna los permisos de todas las bases de datos y tablas a un grupo virtual denominado IAMAllowedPrincipal. Este grupo es único y visible solo dentro de Lake Formation. El IAMAllowedPrincipal grupo incluye a todos los directores de IAM que tienen acceso a los recursos del catálogo de datos a través de las políticas principales y las políticas de recursos de IAM. AWS Glue Si este permiso existe en una base de datos o tabla, se concederá a todas las entidades principales acceso a la base de datos o tabla.

Si desea proporcionar permisos más específicos en una base de datos o tabla, elimine el permiso IAMAllowedPrincipal y Lake Formation aplicará todas las demás políticas asociadas con esa base de datos o tabla. Por ejemplo, si existe una política que permite al Usuario A acceder a la base de datos A con permisos DESCRIBE, y el IAMAllowedPrincipal existe con todos los permisos, el Usuario A seguirá ejecutando todas las demás acciones, hasta que se revoque el permiso IAMAllowedPrincipal.

Además, de forma predeterminada, el grupo IAMAllowedPrincipal tiene permisos sobre todas las bases de datos y tablas nuevas cuando se crean. Hay dos configuraciones que controlan este comportamiento. La primera es a nivel de cuenta y de región, que lo habilita para las bases de datos recién creadas, y la segunda es a nivel de base de datos. Para modificar la configuración predeterminada, consulte Cambie el modelo de permisos predeterminado o utilice el modo de acceso híbrido.

Concesión de permisos

Los administradores del lago de datos pueden conceder permisos del Catálogo de datos a las entidades principales para que estas puedan crear y gestionar bases de datos y tablas, y puedan acceder a los datos subyacentes.

Permisos a nivel de bases de datos y tablas

Cuando concede permisos dentro de Lake Formation, el concedente debe especificar la entidad principal a la que conceder permisos, los recursos sobre los que concederlos y las acciones que el concedente debe tener acceso para ejecutar. Para la mayoría de los recursos dentro de Lake Formation, la lista de entidades principales y los recursos para conceder permisos son similares, pero las acciones que puede ejecutar una entidad principal difieren en función del tipo de recurso. Por ejemplo, los permisos SELECT están disponibles en las tablas para leerlas, pero los permisos SELECT no están permitidos en las bases de datos. El CREATE_TABLE permiso está válido en las bases de datos, pero no en las tablas.

Puede conceder AWS Lake Formation permisos mediante dos métodos:

  • Método de recurso con nombre. Para elegir los nombres de las bases de datos y las tablas al conceder permisos a los usuarios.

  • Control de acceso basado en etiquetas LF (LF-TBAC). Los usuarios crean etiquetas LF, las asocian a los recursos del Catálogo de datos, conceden permisos Describe sobre las etiquetas LF, asocian permisos a usuarios individuales y escriben políticas de permisos LF con etiquetas LF para distintos usuarios. Dichas políticas basadas en etiquetas LF se aplican a todos los recursos del Catálogo de datos que estén asociados a esos valores de etiquetas LF.

    nota

    Las etiquetas LF son exclusivas de Lake Formation. Solo son visibles en Lake Formation y no deben confundirse con las etiquetas AWS de recursos.

    LF-TBAC es una característica que permite a los usuarios agrupar recursos en categorías de etiquetas LF definidas por el usuario y aplicar permisos sobre esos grupos de recursos. Por lo tanto, es la mejor manera de escalar los permisos a través de un gran número de recursos del Catálogo de datos.

    Para obtener más información, consulte Control de acceso basado en etiquetas de Lake Formation.

Al conceder permisos a una entidad principal, Lake Formation evalúa los permisos como una unión de todas las políticas para ese usuario. Por ejemplo, si tiene dos políticas sobre una tabla para una entidad principal en la que una política concede permisos a las columnas col1, col2 y col3 según el método de recursos con nombre, y la otra política concede permisos a la misma tabla y entidad principal a col5 y col6 mediante etiquetas LF, los permisos efectivos serán una unión de los permisos, que serían col1, col2, col3, col5 y col6. Esto también incluye filas y filtros de datos.

Permisos de ubicación de datos

Los permisos de ubicación de datos ofrecen a los usuarios no administrativos la posibilidad de crear bases de datos y tablas en ubicaciones específicas de Amazon S3. Si un usuario intenta crear una base de datos o una tabla en una ubicación para la que no tiene permisos, la tarea de creación falla. De este modo, se evita que los usuarios creen tablas en ubicaciones arbitrarias dentro del lago de datos y se controla dónde pueden leer y escribir datos dichos usuarios. Existe un permiso implícito al crear tablas en la ubicación de Amazon S3 dentro de la base de datos en la que se está creando. Para obtener más información, consulte Conceder permisos de ubicación de datos.

Crear permisos para tablas y bases de datos

De forma predeterminada, los usuarios no administrativos no tienen permisos para crear bases de datos o tablas dentro de una base de datos. La creación de bases de datos se controla a nivel de cuenta mediante los ajustes de Lake Formation, de modo que solo las entidades principales autorizadas pueden crear bases de datos. Para obtener más información, consulte Creación de una base de datos. Para crear una tabla, una entidad principal necesita permiso CREATE_TABLE en la base de datos donde se está creando la tabla. Para obtener más información, consulte Creación de tablas.

Permisos implícitos y explícitos

Lake Formation proporciona permisos implícitos en función de la persona y de las acciones que esta lleve a cabo. Por ejemplo, los administradores del lago de datos obtienen automáticamente permisos DESCRIBE para todos los recursos del Catálogo de datos, permisos de ubicación de datos para todas las ubicaciones, permisos para crear bases de datos y tablas en todas las ubicaciones, así como y permisos Grant y Revoke sobre cualquier recurso. Los creadores de bases de datos obtienen automáticamente todos los permisos sobre las bases de datos que crean, y los creadores de tablas obtienen todos los permisos sobre las tablas que crean. Para obtener más información, consulte Permisos implícitos de Lake Formation.

Permisos concedibles

Los administradores del lago de datos tienen la posibilidad de delegar la gestión de los permisos a usuarios no administrativos proporcionándoles permisos concedibles. Cuando a una entidad principal se le proporcionan permisos concedibles sobre un recurso y un conjunto de permisos, esa entidad principal adquiere la capacidad de conceder permisos a otras entidades principales sobre ese recurso.