

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.

# Actualización AWS Glue de los permisos de datos al AWS Lake Formation modelo
<a name="upgrade-glue-lake-formation"></a>

AWS Lake Formation los permisos permiten un control de acceso detallado a los datos de su lago de datos. Puede utilizar 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).

El modelo de permisos de Lake Formation utiliza permisos generales AWS Identity and Access Management (IAM) para el acceso al servicio de API. Lake Formation usa la funcionalidad [Filtrado de datos y seguridad de celda en Lake Formation](data-filtering.md) para restringir el acceso a las tablas en los niveles de columna, fila y celda para los usuarios y sus aplicaciones. En términos comparativos, el modelo AWS Glue concede el acceso a los datos mediante [políticas de IAM basadas en identidad y recursos](https://docs.aws.amazon.com/glue/latest/dg/security_iam_service-with-iam.html#security_iam_service-with-iam-id-based-policies). 

Para hacer el cambio, siga los pasos de esta guía.

Para obtener más información, consulte [Descripción general de los permisos de Lake Formation](lf-permissions-overview.md).

## Acerca de los permisos predeterminados
<a name="upgrade-glue-lake-formation-background"></a>

Para mantener la compatibilidad con versiones anterioresAWS Glue, de forma predeterminada, AWS Lake Formation concede el `Super` permiso al `IAMAllowedPrincipals` grupo sobre todos los recursos del catálogo de AWS Glue datos existentes y concede el `Super` permiso sobre los nuevos recursos del catálogo de datos si está habilitada la configuración de control de acceso **para usar solo IAM**. Esto hace que el acceso a los recursos del Catálogo de datos y a las ubicaciones de Amazon S3 esté controlado únicamente por las políticas de AWS Identity and Access Management (IAM). El grupo `IAMAllowedPrincipals` incluye a todos los Usuarios y roles de IAM a los que sus políticas de IAM permiten acceder a los objetos de su Catálogo de datos. 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.

Puede empezar a utilizar Lake Formation para administrar el acceso a sus datos registrando las ubicaciones de los recursos existentes del Catálogo de datos en Lake Formation o utilizando el modo de acceso híbrido. Cuando registre la ubicación de Amazon S3 en modo de acceso híbrido, puede habilitar los permisos de Lake Formation optando por entidades principales para las bases de datos y las tablas bajo esa ubicación.

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](hybrid-access-mode.md).

Inhabilite la configuración predeterminada del Catálogo de datos para mover todos los usuarios existentes de una tabla a Lake Formation en un solo paso.

Para empezar a utilizar los permisos de Lake Formation con sus bases de datos y tablas existentes del Catálogo de datos AWS Glue, debe hacer lo siguiente:

1. Determine los permisos IAM existentes de sus usuarios para cada base de datos y tabla.

1. Reproduzca estos permisos en Lake Formation.

1. Para cada ubicación de Amazon S3 que contenga datos:

   1. Revoque el permiso `Super` del grupo `IAMAllowedPrincipals` en cada recurso del Catálogo de datos que haga referencia a esa ubicación.

   1. Registre la ubicación en Lake Formation.

1. Elimine las políticas de IAM de control de acceso preciso existentes.

**importante**  
Para añadir nuevos usuarios mientras está en el proceso de transición de su Catálogo de datos, debe configurar permisos AWS Glue granulares en IAM como antes. También debe replicar esos permisos en Lake Formation como se describe en esta sección. Si los nuevos usuarios disponen de las políticas de IAM básicas descritas en esta guía, pueden enumerar las bases de datos o tablas que tengan concedido el permiso `Super` a `IAMAllowedPrincipals`. También pueden ver los metadatos de esos recursos.

Siga los pasos de esta sección para actualizar al modelo de permisos Lake Formation.

**Topics**
+ [Acerca de los permisos predeterminados](#upgrade-glue-lake-formation-background)
+ [Paso 1: Enumerar los permisos existentes de usuarios y roles](#upgrade-glue-lake-formation-step1)
+ [Paso 2: Configurar permisos equivalentes de Lake Formation](#upgrade-glue-lake-formation-step2)
+ [Paso 3: Conceder a los usuarios permisos de IAM para usar Lake Formation](#upgrade-glue-lake-formation-step3)
+ [Paso 4: Cambiar sus almacenes de datos al modelo de permisos de Lake Formation](#upgrade-glue-lake-formation-step4)
+ [Paso 5: Proteger los nuevos recursos del Catálogo de datos](#upgrade-glue-lake-formation-step5)
+ [Paso 6: Proporcionar a los usuarios una nueva política de IAM para el futuro acceso al lago de datos](#upgrade-glue-lake-formation-step6)
+ [Paso 7: Limpiar las políticas de IAM existentes](#upgrade-glue-lake-formation-step7)

## Paso 1: Enumerar los permisos existentes de usuarios y roles
<a name="upgrade-glue-lake-formation-step1"></a>

Para empezar a utilizar AWS Lake Formation los permisos con las AWS Glue bases de datos y tablas existentes, primero debe determinar los permisos actuales de los usuarios.

**importante**  
Antes de empezar, asegúrese de haber completado las tareas de [Introducción a Lake Formation](getting-started-setup.md).

**Topics**
+ [Uso de la operación de la API](#upgrade-glue-lake-formation-step1-api)
+ [Utilización del Consola de administración de AWS](#upgrade-glue-lake-formation-step1-console)
+ [Usando AWS CloudTrail](#upgrade-glue-lake-formation-step1-ct)

### Uso de la operación de la API
<a name="upgrade-glue-lake-formation-step1-api"></a>

Utilice la operación de la [ListPoliciesGrantingServiceAccess](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPoliciesGrantingServiceAccess.html)API AWS Identity and Access Management (IAM) para determinar las políticas de IAM asociadas a cada principal (usuario o rol). A partir de las políticas que aparecen en los resultados, puede determinar los permisos IAM que se conceden a la entidad principal. Debe invocar la API para cada entidad principal por separado.

**Example**  
En el siguiente AWS CLI ejemplo, se muestran las políticas asociadas al usuario. `glue_user1`  

```
aws iam list-policies-granting-service-access --arn arn:aws:iam::111122223333:user/glue_user1 --service-namespaces glue
```
El comando devuelve resultados similares al siguiente:  

```
{
    "PoliciesGrantingServiceAccess": [
        {
            "ServiceNamespace": "glue",
            "Policies": [
                {
                    "PolicyType": "INLINE",
                    "PolicyName": "GlueUserBasic",
                    "EntityName": "glue_user1",
                    "EntityType": "USER"
                },
                {
                    "PolicyType": "MANAGED",
                    "PolicyArn": "arn:aws:iam::aws:policy/AmazonAthenaFullAccess",
                    "PolicyName": "AmazonAthenaFullAccess"
                }
            ]
        }
    ],
    "IsTruncated": false
}
```

### Utilización del Consola de administración de AWS
<a name="upgrade-glue-lake-formation-step1-console"></a>

También puede ver esta información en la consola AWS Identity and Access Management (IAM), en la pestaña **Access Advisor** de la página de **resumen del usuario o rol:**

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En el panel de navegación, seleccione **Users (Usuarios)** o **Roles**.

1. Elija un nombre de la lista para abrir su página **Resumen** y elija la pestaña **Access Advisor**.

1.  Inspeccione cada una de las políticas para determinar la combinación de bases de datos, tablas y acciones para las que cada usuario tiene permisos.

   Recuerde inspeccionar los roles además de los usuarios durante este proceso porque sus trabajos de tratamiento de datos podrían estar asumiendo roles para acceder a los datos.

### Usando AWS CloudTrail
<a name="upgrade-glue-lake-formation-step1-ct"></a>

Otra forma de determinar tus permisos actuales consiste en AWS CloudTrail buscar llamadas a la AWS Glue API en las que el `additionaleventdata` campo de los registros contenga una `insufficientLakeFormationPermissions` entrada. Esta entrada enumera la base de datos y la tabla sobre las que el usuario necesita permisos de Lake Formation para llevar a cabo la misma acción. 

Se trata de registros de acceso a datos, por lo que no se garantiza que generen una lista completa de los usuarios y sus permisos. Recomendamos elegir un intervalo de tiempo amplio para capturar la mayoría de los patrones de acceso a los datos de sus usuarios, por ejemplo, varias semanas o meses.

Para obtener más información, consulte [Visualización de eventos con el historial de CloudTrail eventos](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html) en la *Guía del AWS CloudTrail usuario*.

A continuación, puede configurar los permisos de Lake Formation para que coincidan con los AWS Glue permisos. Consulte [Paso 2: Configurar permisos equivalentes de Lake Formation](#upgrade-glue-lake-formation-step2).

## Paso 2: Configurar permisos equivalentes de Lake Formation
<a name="upgrade-glue-lake-formation-step2"></a>

Con la información recopilada en[Paso 1: Enumerar los permisos existentes de usuarios y roles](#upgrade-glue-lake-formation-step1), conceda AWS Lake Formation permisos que coincidan con los AWS Glue permisos. Utilice cualquiera de los siguientes métodos para las concesiones:
+ Utilizar la consola de Lake Formation o la AWS CLI.

  Consulte [Concesión de permisos sobre los recursos del Catálogo de datos](granting-catalog-permissions.md).
+ Utilice las operaciones `GrantPermissions` o `BatchGrantPermissions` de la API.

  Consulte [API de permisosAPI de modo de acceso híbrido](aws-lake-formation-api-aws-lake-formation-api-permissions.md).

Para obtener más información, consulte [Descripción general de los permisos de Lake Formation](lf-permissions-overview.md).

Después de configurar los permisos de Lake Formation, continúe con [Paso 3: Conceder a los usuarios permisos de IAM para usar Lake Formation](#upgrade-glue-lake-formation-step3).

## Paso 3: Conceder a los usuarios permisos de IAM para usar Lake Formation
<a name="upgrade-glue-lake-formation-step3"></a>

Para usar el modelo de AWS Lake Formation permisos, los directores deben tener permisos AWS Identity and Access Management (IAM) en Lake Formation. APIs

Cree la siguiente política en IAM y vincúlela a cada usuario que necesite acceder a su lago de datos. Llame a la política `LakeFormationDataAccess`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "LakeFormationDataAccess",
            "Effect": "Allow",
            "Action": [
                "lakeformation:GetDataAccess"
            ],
            "Resource": "*"
        }
    ]
}
```

------

A continuación, actualice los permisos de Lake Formation una ubicación de datos cada vez. Consulte [Paso 4: Cambiar sus almacenes de datos al modelo de permisos de Lake Formation](#upgrade-glue-lake-formation-step4).

## Paso 4: Cambiar sus almacenes de datos al modelo de permisos de Lake Formation
<a name="upgrade-glue-lake-formation-step4"></a>

Actualice los permisos de Lake Formation una ubicación de datos cada vez. Para ello, repita toda esta sección hasta registrar todas las rutas de Amazon Simple Storage Service (Amazon S3) a las que hace referencia el Catálogo de datos.

**Topics**
+ [Verificar los permisos de Lake Formation](#identify-catalog-resources)
+ [Proteja los recursos del Catálogo de datos existentes](#upgrade-secure-resources)
+ [Active los permisos de Lake Formation para su ubicación de Amazon S3](#upgrade-glue-lake-formation-turn-on-permissions)

### Verificar los permisos de Lake Formation
<a name="identify-catalog-resources"></a>

Antes de registrar una ubicación, complete una etapa de verificación para asegurarse de que las entidades principales correctas tienen los permisos de Lake Formation necesarios y de que no se conceden permisos de Lake Formation a entidades principales que no deberían tenerlos. Mediante la operación de la API `GetEffectivePermissionsForPath` de Lake Formation, identifique los recursos del Catálogo de datos que hacen referencia a la ubicación de Amazon S3, junto con las entidades principales que tienen permisos sobre dichos recursos.

El siguiente AWS CLI ejemplo devuelve las bases de datos y las tablas del catálogo de datos que hacen referencia al bucket de Amazon S3`products`.

```
aws lakeformation get-effective-permissions-for-path --resource-arn arn:aws:s3:::products --profile datalake_admin
```

Observe la opción `profile`. Se recomienda ejecutar el comando como administrador de un lago de datos.

Lo siguiente es un extracto de los resultados obtenidos.

```
{
        "PermissionsWithGrantOption": [
            "SELECT"
        ],
        "Resource": {
            "TableWithColumns": {
                "Name": "inventory_product",
                "ColumnWildcard": {},
                "DatabaseName": "inventory"
            }
        },
        "Permissions": [
            "SELECT"
        ],
        "Principal": {
            "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1",
            "DataLakePrincipalType": "IAM_USER"
        }
 },...
```

**importante**  
Si su Catálogo de datos AWS Glue está cifrado, `GetEffectivePermissionsForPath` devuelve solo las bases de datos y tablas que se crearon o modificaron después de la disponibilidad general de Lake Formation.

### Proteja los recursos del Catálogo de datos existentes
<a name="upgrade-secure-resources"></a>

A continuación, revoque el permiso `Super` de cada tabla `IAMAllowedPrincipals` y base de datos que haya identificado para la ubicación. 

**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](lf-permissions-reference.md).

**Para revocar `Super` de `IAMAllowedPrincipals` sobre una tabla**

1. Abra la AWS Lake Formation consola en [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/). Inicie sesión como administrador del lago de datos.

1. En el panel de navegación, elija **Tablas**.

1. En la página **Tablas**, seleccione el botón que hay junto a la tabla que desee.

1. En el menú **Acciones**, seleccione **Restaurar**.

1. **En el cuadro de diálogo **Revocar permisos**, en la lista de **usuarios y funciones de IAM**, desplácese hacia abajo hasta el encabezado **Grupo** y elija IAMAllowed Principales.**

1. En **Permisos de tabla**, asegúrese de que la opción **Super** esté seleccionada y, a continuación, elija **Revocar**.

**Para revocar `Super` desde `IAMAllowedPrincipals` sobre una base de datos**

1. Abra la consola en AWS Lake Formation . [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/) Inicie sesión como administrador del lago de datos.

1. En el panel de navegación, elija **Databases** (Bases de datos).

1. En la página **Bases de datos**, seleccione el botón que hay junto a la base de datos que desee.

1. En el menú **Actions**, seleccione **Editar**.

1. En la página **Editar base de datos**, desactive **Utilizar solo el control de acceso IAM para las nuevas tablas de esta base de datos** y, a continuación, seleccione **Guardar**.

1. De vuelta en la página **Bases de datos**, asegúrese de que la base de datos sigue seleccionada y, a continuación, en el menú **Acciones**, elija **Revocar**.

1. **En el cuadro de diálogo **Revocar permisos**, en la lista de **usuarios y funciones de IAM**, desplácese hacia abajo hasta el encabezado **Grupo** y elija IAMAllowed Principales.**

1. En **Permisos de base de datos**, asegúrese de que la opción **Super** está seleccionada y, a continuación, elija **Revocar**.

### Active los permisos de Lake Formation para su ubicación de Amazon S3
<a name="upgrade-glue-lake-formation-turn-on-permissions"></a>

A continuación, registre la ubicación de Amazon S3 con Lake Formation. Para ello, puede utilizar el proceso descrito en [Añadir una ubicación de Amazon S3 a su lago de datos](register-data-lake.md). O bien, utilice la operación de la API `RegisterResource`, descrita en [API de expedición de credenciales](aws-lake-formation-api-credential-vending.md).

**nota**  
Si se registra una ubicación principal, no es necesario registrar las ubicaciones secundarias.

Tras finalizar estos pasos y comprobar que sus usuarios pueden acceder a sus datos, habrá actualizado con éxito los permisos de Lake Formation. Continúe en el paso siguiente, [Paso 5: Proteger los nuevos recursos del Catálogo de datos](#upgrade-glue-lake-formation-step5).

## Paso 5: Proteger los nuevos recursos del Catálogo de datos
<a name="upgrade-glue-lake-formation-step5"></a>

A continuación, proteja todos los nuevos recursos del Catálogo de datos cambiando la configuración predeterminada del Catálogo de datos. Desactive las opciones para usar únicamente el control de acceso AWS Identity and Access Management (IAM) para las nuevas bases de datos y tablas.

**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](lf-permissions-reference.md).

**Para cambiar la configuración predeterminada del Catálogo de datos**

1. Abra la AWS Lake Formation consola en. [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/) Inicie sesión como usuario administrativo de IAM (el usuario `Administrator` u otro usuario con la política `AdministratorAccess` AWS gestionada).

1. En el panel de navegación, seleccione **Configuración**.

1. En la página **Configuración del Catálogo de datos**, desactive ambas casillas de verificación y, a continuación, seleccione **Guardar**.

El siguiente paso es conceder a los usuarios acceso a bases de datos o tablas adicionales en el futuro. Consulte [Paso 6: Proporcionar a los usuarios una nueva política de IAM para el futuro acceso al lago de datos](#upgrade-glue-lake-formation-step6).

## Paso 6: Proporcionar a los usuarios una nueva política de IAM para el futuro acceso al lago de datos
<a name="upgrade-glue-lake-formation-step6"></a>

Para conceder a sus usuarios acceso a bases de datos o tablas adicionales del catálogo de datos en el futuro, debe proporcionarles la política integral detallada AWS Identity and Access Management (IAM) que se indica a continuación. Llame a la política `GlueFullReadAccess`.

**importante**  
Si adjunta esta política a un usuario antes de revocar `Super` desde `IAMAllowedPrincipals` en cada base de datos y tabla de su Catálogo de datos, ese usuario podrá ver todos los metadatos de cualquier recurso sobre el que se conceda `Super` a `IAMAllowedPrincipals`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "GlueFullReadAccess",
            "Effect": "Allow",
            "Action": [
                "lakeformation:GetDataAccess",
                "glue:GetTable",
                "glue:GetTables",
                "glue:SearchTables",
                "glue:GetDatabase",
                "glue:GetDatabases",
                "glue:GetPartitions"
            ],
            "Resource": "*"
        }
    ]
}
```

------

**nota**  
Las políticas integradas designadas en este paso y en los anteriores contienen permisos IAM mínimos. Para conocer las políticas sugeridas para los administradores del lago de datos, los analistas de datos y otros personajes, consulte [Personas de Lake Formation y referencia de permisos IAM](permissions-reference.md).

A continuación, proceda a [Paso 7: Limpiar las políticas de IAM existentes](#upgrade-glue-lake-formation-step7).

## Paso 7: Limpiar las políticas de IAM existentes
<a name="upgrade-glue-lake-formation-step7"></a>

Tras configurar AWS Lake Formation los permisos y crear y adjuntar las políticas generales de control de acceso AWS Identity and Access Management (IAM), complete el siguiente paso final:
+ Elimine de los usuarios, grupos y roles las antiguas políticas de IAM de [control de acceso específico](https://docs.aws.amazon.com/glue/latest/dg/using-identity-based-policies.html#glue-identity-based-policy-limitations.html) que replicó en Lake Formation.

Al hacerlo, se asegura de que esas entidades principales ya no tengan acceso directo a los datos de Amazon Simple Storage Service (Amazon S3). A continuación, puede administrar el acceso al lago de datos para esas entidades principales totalmente a través de Lake Formation.