Control de acceso a los 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.

Control de acceso a los metadatos

Para el control de acceso a los recursos del Catálogo de datos, en el siguiente análisis se asume un control de acceso detallado con los permisos de Lake Formation y un control de acceso más detallado con las políticas de IAM.

Existen dos métodos distintos para la concesión de permisos de Lake Formation sobre los recursos del Catálogo de datos:

  • Control de acceso a recursos con nombre. Con este método, el usuario concede permisos sobre bases de datos o tablas específicas especificando nombres de bases de datos o tablas. Las concesiones tienen esta forma:

    Conceda permisos a las entidades principales sobre los recursos [con opción de concesión].

    Con la opción de concesión, puede permitir que el beneficiario conceda los permisos a otras entidades principales.

  • Control de acceso basado en etiquetas. Con este método, asigna una o varias etiquetas LF a las bases de datos, tablas y columnas del Catálogo de datos, y concede permisos sobre una o varias etiquetas LF a las entidades principales. Cada etiqueta LF es un par clave-valor, como department=sales. Una entidad principal con etiquetas LF que coincidan con las etiquetas LF de un recurso puede acceder a ese recurso. Este método se recomienda para los lagos de datos con un gran número de bases de datos y tablas. Se explica en detalle en Control de acceso basado en etiquetas de Lake Formation.

Los permisos que una entidad principal tiene sobre un recurso son la unión de los permisos concedidos por ambos métodos.

La siguiente tabla resume los permisos disponibles de Lake Formation en los recursos del Catálogo de datos. Los títulos de las columnas indican el recurso sobre el que se concede el permiso.

Catálogo Base de datos Tabla
CREATE_DATABASE CREATE_TABLE ALTER
ALTER DROP
DROP DESCRIBE
DESCRIBE SELECT*
INSERT*
DELETE*

Por ejemplo, el permiso CREATE_TABLE se concede sobre una base de datos. Esto significa que la entidad principal está autorizada a crear tablas en esa base de datos.

Los permisos con un asterisco (*) se conceden sobre los recursos del Catálogo de datos, pero se aplican a los datos subyacentes. Por ejemplo, el permiso DROP sobre una tabla de metadatos le permite eliminar la tabla del Catálogo de datos. Sin embargo, el permiso DELETE concedido sobre la misma tabla le permite eliminar los datos subyacentes de la tabla en Amazon S3, utilizando, por ejemplo, una instrucción SQL DELETE. Con estos permisos, también puede ver la tabla en la consola de Lake Formation y recuperar información sobre la tabla con la API AWS Glue. Así, SELECT, INSERT y DELETE son tanto permisos del Catálogo de datos como permisos de acceso a los datos.

Al conceder SELECT en una tabla, puede añadir un filtro que incluya o excluya una o más columnas. Esto permite un control de acceso específico sobre las columnas de la tabla de metadatos, limitando las columnas que los usuarios de los servicios integrados pueden ver al ejecutar consultas. Esta capacidad no está disponible solo con políticas de IAM.

También hay un permiso especial denominado Super. El permiso Super permite a una entidad principal efectuar todas las operaciones compatibles con Lake Formation en la base de datos o tabla sobre la que se concede. Este permiso puede coexistir con los demás permisos de Lake Formation. Por ejemplo, puede conceder Super, SELECT y INSERT sobre una tabla de metadatos. La entidad principal puede efectuar todas las acciones compatibles en la tabla, y cuando revoca Super, permanecen los permisos SELECT y INSERT.

Para obtener más información sobre cada permiso, consulte Referencia de permisos de Lake Formation.

importante

Para consultar una tabla del Catálogo de datos creada por otro usuario, debe tener al menos un permiso de Lake Formation sobre la tabla. Si se le concede al menos un permiso sobre la tabla, también podrá ver la base de datos contenedora de la tabla.

Puede conceder o revocar los permisos del Catálogo de datos utilizando la consola de Lake Formation, la API o la AWS Command Line Interface (AWS CLI). El siguiente es un ejemplo de un AWS CLI comando que otorga al usuario datalake_user1 permiso para crear tablas en la retail base de datos.

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "CREATE_TABLE" --resource '{ "Database": {"Name":"retail"}}'

A continuación, se muestra un ejemplo de política de IAM de control de acceso básico que complementa el control de acceso específico con los permisos de Lake Formation. Permite efectuar todas las operaciones sobre cualquier base de metadatos o tabla.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:*Database*", "glue:*Table*", "glue:*Partition*" ], "Resource": "*" } ] }

El siguiente ejemplo también es básico, pero algo más restrictivo. Permite operaciones de solo lectura en todas las bases de datos de metadatos y tablas del Catálogo de datos de la cuenta y región designadas.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:GetTables", "glue:SearchTables", "glue:GetTable", "glue:GetDatabase", "glue:GetDatabases" ], "Resource": "arn:aws:glue:us-east-1:111122223333:*" } ] }

Compare estas políticas con la siguiente, que implementa un control de acceso específico basado en IAM. Concede permisos solo sobre un subconjunto de tablas de la base de datos de metadatos de gestión de relaciones con los clientes (CRM) en la cuenta y la región designadas.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:GetTables", "glue:SearchTables", "glue:GetTable", "glue:GetDatabase", "glue:GetDatabases" ], "Resource": [ "arn:aws:glue:us-east-1:111122223333:catalog", "arn:aws:glue:us-east-1:111122223333:database/CRM", "arn:aws:glue:us-east-1:111122223333:table/CRM/P*" ] } ] }

Para más ejemplos de políticas de control de acceso básicas, consulte Referencia de personas y IAM permisos de Lake Formation.