

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.

# Referencia de permisos de Lake Formation
<a name="lf-permissions-reference"></a>

Para realizar AWS Lake Formation las operaciones, los directores necesitan tanto los permisos de Lake Formation como los permisos AWS Identity and Access Management (IAM). En general, los permisos IAM se conceden *mediante políticas de control de acceso poco específicas*, como se describe en [Descripción general de los permisos de Lake Formation](lf-permissions-overview.md). Puede conceder permisos a Lake Formation mediante la consola, la API o AWS Command Line Interface (AWS CLI). 

Para saber cómo conceder o revocar permisos de Lake Formation, consulte [Concesión de permisos sobre los recursos del Catálogo de datos](granting-catalog-permissions.md) y [Conceder permisos de ubicación de datos](granting-location-permissions.md).

**nota**  
Los ejemplos de esta sección muestran cómo conceder permisos a entidades principales en la misma cuenta AWS . Para ver ejemplos de concesiones entre cuentas, consulte [Compartir datos entre cuentas en Lake Formation](cross-account-permissions.md). 

## Permisos de Lake Formation por tipo de recurso
<a name="lf-resource-permissions-summary"></a>

A continuación se indican los permisos válidos de Lake Formation disponibles para cada tipo de recurso:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/lake-formation/latest/dg/lf-permissions-reference.html)

**Topics**
+ [Permisos de Lake Formation por tipo de recurso](#lf-resource-permissions-summary)
+ [Lake Formation otorga y revoca órdenes AWS CLI](#perm-command-format)
+ [Permisos de Lake Formation](#lf-permissions)

## Lake Formation otorga y revoca órdenes AWS CLI
<a name="perm-command-format"></a>

Cada descripción de permisos de esta sección incluye ejemplos de cómo se concede el permiso mediante un AWS CLI comando. Las siguientes son las sinopsis de Lake Formation **grant-permissions** y **revoke-permissions** AWS CLI sus comandos.

```
grant-permissions
[--catalog-id <value>]
--principal <value>
--resource <value>
--permissions <value>
[--permissions-with-grant-option <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]
```

```
revoke-permissions
[--catalog-id <value>]
--principal <value>
--resource <value>
--permissions <value>
[--permissions-with-grant-option <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]
```

Para obtener descripciones detalladas de estos comandos, consulte [grant-permissions](https://docs.aws.amazon.com/cli/latest/reference/lakeformation/grant-permissions.html) y [revoke-permissions](https://docs.aws.amazon.com/cli/latest/reference/lakeformation/revoke-permissions.html) en la *Referencia de comandos de AWS CLI *. En esta sección se proporciona información adicional sobre la opción `--principal`.

El valor de la opción `--principal` es uno de los siguientes:
+ Nombre de recurso de Amazon (ARN) para un usuario o AWS Identity and Access Management rol (IAM)
+ ARN para un usuario o grupo que se autentica a través de un proveedor SAML, como Microsoft Active Directory Federation Service (AD FS)
+ ARN de un usuario o grupo de Amazon Quick
+ Para los permisos entre cuentas, un identificador de AWS cuenta, un identificador de organización o un identificador de unidad organizativa
+ Para un usuario o grupo de IAM Identity Center, ARN de usuario o grupo de IAM Identity Center.

A continuación encontrará la sintaxis y ejemplos para todos los tipos de `--principal`.

**La entidad principal es un usuario de IAM**  
Sintaxis:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:user/<user-name>
```
Ejemplo:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1
```

**La entidad principal es un rol de IAM**  
Sintaxis:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:role/<role-name>
```
Ejemplo:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:role/workflowrole
```

**La entidad principal es un usuario que se autentica a través de un proveedor SAML**  
Sintaxis:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:saml-provider/<SAMLproviderName>:user/<user-name>
```
Ejemplos:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/idp1:user/datalake_user1
```

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/AthenaLakeFormationOkta:user/athena-user@example.com
```

**La entidad principal es un grupo que se autentica a través de un proveedor SAML**  
Sintaxis:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:saml-provider/<SAMLproviderName>:group/<group-name> 
```
Ejemplos:  

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/idp1:group/data-scientists
```

```
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/AthenaLakeFormationOkta:group/my-group
```

**Principal es usuario de Amazon Quick Enterprise Edition**  
Sintaxis:  

```
--principal DataLakePrincipalIdentifier=arn:aws:quicksight:<region>:<account-id>:user/<namespace>/<user-name>
```
Para *<namespace>*, debe especificar `default`.
Ejemplo:  

```
--principal DataLakePrincipalIdentifier=arn:aws:quicksight:us-east-1:111122223333:user/default/bi_user1
```

**Principal es un grupo de Amazon Quick Enterprise Edition**  
Sintaxis:  

```
--principal DataLakePrincipalIdentifier=arn:aws:quicksight:<region>:<account-id>:group/<namespace>/<group-name> 
```
Para *<namespace>*, debe especificar `default`.
Ejemplo:  

```
--principal DataLakePrincipalIdentifier=arn:aws:quicksight:us-east-1:111122223333:group/default/data_scientists
```

**Principal es una AWS cuenta**  
Sintaxis:  

```
--principal DataLakePrincipalIdentifier=<account-id>
```
Ejemplo:  

```
--principal DataLakePrincipalIdentifier=111122223333
```

**La entidad principal es una organización**  
Sintaxis:  

```
--principal DataLakePrincipalIdentifier=arn:aws:organizations::<account-id>:organization/<organization-id>
```
Ejemplo:  

```
--principal DataLakePrincipalIdentifier=arn:aws:organizations::111122223333:organization/o-abcdefghijkl
```

**La entidad principal es una unidad organizativa**  
Sintaxis:  

```
--principal DataLakePrincipalIdentifier=arn:aws:organizations::<account-id>:ou/<organization-id>/<organizational-unit-id>
```
Ejemplo:  

```
--principal DataLakePrincipalIdentifier=arn:aws:organizations::111122223333:ou/o-abcdefghijkl/ou-ab00-cdefghij
```

**Entidad principal es un usuario o grupo de identidades de IAM Identity Center**  
Ejemplo:Usuario  

```
--principal DataLakePrincipalIdentifier=arn:aws:identitystore:::user/<UserID>
```
Ejemplo:Grupo:  

```
--principal DataLakePrincipalIdentifier=arn:aws:identitystore:::group/<GroupID>
```

**Entidad principal es un grupo de IAM: `IAMAllowedPrincipals`**  
Lake Formation concede el permiso `Super` sobre todas las bases de datos y tablas del Catálogo de datos a un grupo llamado `IAMAllowedPrincipals` de forma predeterminada. Si este permiso de grupo existe en una base de datos o una tabla, todas las entidades principales de la cuenta tendrán acceso al recurso a través de políticas de entidad principal de IAM para AWS Glue. Proporciona compatibilidad retroactiva cuando se empiezan a utilizar permisos de Lake Formation para proteger recursos del Catálogo de datos que anteriormente estaban protegidos mediante políticas de IAM para AWS Glue.  
Cuando se usa Lake Formation para administrar los permisos sobre los recursos del Catálogo de datos, primero es necesario revocar el permiso `IAMAllowedPrincipals` de los recursos, o bien inscribir las entidades principales y los recursos en el modo de acceso híbrido para que los permisos de Lake Formation funcionen.   
Ejemplo:  

```
--principal DataLakePrincipalIdentifier=IAM_Allowed_Principals
```

**Entidad principal es un grupo de IAM: `ALLIAMPrincipals`**  
Al conceder permisos al grupo `ALLIAMPrincipals` en un recurso del Catálogo de datos, todas las entidades principales de la cuenta obtienen acceso al recurso del Catálogo de datos mediante permisos de Lake Formation y permisos de IAM.  
Ejemplo:  

```
--principal DataLakePrincipalIdentifier=123456789012:IAMPrincipals
```

## Permisos de Lake Formation
<a name="lf-permissions"></a>

Esta sección contiene los permisos disponibles de Lake Formation que puede conceder a las entidades principales.

### `ALTER`
<a name="perm-alter"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| ALTER | DATABASE | glue:UpdateDatabase  | 
| ALTER | TABLE | glue:UpdateTable | 
| ALTER | LF-Tag | lakeformation:UpdateLFTag | 

Una entidad principal con este permiso puede alterar los metadatos de una base de datos o tabla del Catálogo de datos. Para las tablas, puede cambiar el esquema de columnas y añadir parámetros de columna. No puede alterar las columnas de los datos subyacentes a los que apunta una tabla de metadatos.

Si la propiedad que se está modificando es una ubicación registrada de Amazon Simple Storage Service (Amazon S3), la entidad principal debe tener permisos de ubicación de datos en la nueva ubicación.

**Example**  
El siguiente ejemplo concede el `ALTER` permiso al usuario `datalake_user1` de la base `retail` de datos de la AWS cuenta 1111-2222-3333.  

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

**Example**  
El siguiente ejemplo concede `ALTER` al usuario `datalake_user1` en la tabla `inventory` de la base de datos `retail`.  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "ALTER" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

### `CREATE_DATABASE`
<a name="perm-create-database"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| CREATE\$1DATABASE | Data Catalog | glue:CreateDatabase | 

Una entidad principal con este permiso puede crear una base de metadatos o un enlace de recursos en el Catálogo de datos. La entidad principal también puede crear tablas en la base de datos.

**Example**  
En el siguiente ejemplo, se concede `CREATE_DATABASE` al usuario `datalake_user1` de la cuenta 1111-2222-3333. AWS   

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "CREATE_DATABASE" --resource '{ "Catalog": {}}'
```

Cuando una entidad principal crea una base de datos en el Catálogo de datos, no se conceden permisos a los datos subyacentes. Se conceden los siguientes permisos adicionales para metadatos (junto con la posibilidad de conceder estos permisos a otros):
+ `CREATE_TABLE` en la base de datos
+ Base de datos de `ALTER`
+ Base de datos de `DROP`

Al crear una base de datos, la entidad principal puede especificar de forma opcional una ubicación de Amazon S3. Dependiendo de si la entidad principal tiene permisos de localización de datos, el permiso `CREATE_DATABASE` podría no ser suficiente para crear bases de datos en todos los casos. Es importante tener en cuenta los siguientes puntos.


| Caso práctico de creación de una base de datos | Permisos necesarios | 
| --- | --- | 
| La propiedad de ubicación no está especificada. | CREATE\$1DATABASE es suficiente. | 
| Se especifica la propiedad de ubicación, y la ubicación no está administrada por Lake Formation (no está registrada). | CREATE\$1DATABASE es suficiente. | 
| Se especifica la propiedad de ubicación, y la ubicación es administrada por Lake Formation (está registrada). | Se requiere CREATE\$1DATABASE, además de permisos de localización de datos en la ubicación especificada. | 

### `CREATE_TABLE`
<a name="perm-create-table"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| CREATE\$1TABLE | DATABASE | glue:CreateTable  | 

Una entidad principal con este permiso puede crear una tabla de metadatos o un enlace de recursos en el Catálogo de datos dentro de la base de datos especificada.

**Example**  
El siguiente ejemplo concede al usuario `datalake_user1` permiso para crear tablas en la `retail` base de datos de la cuenta 1111-2222-3333. AWS   

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

Cuando una entidad principal crea una tabla en el Catálogo de datos, se le conceden todos los permisos de Lake Formation sobre la tabla, con la posibilidad de conceder estos permisos sobre otros.

**Concesiones entre cuentas**  
Si una cuenta propietaria de una base de datos concede `CREATE_TABLE` a una cuenta de destinatario, y un usuario de la cuenta de destinatario crea con éxito una tabla en la base de datos de la cuenta propietaria, se aplican las siguientes reglas:
+ El usuario y los administradores del lago de datos de la cuenta de destinatario tienen todos los permisos de Lake Formation sobre la tabla. Pueden conceder permisos sobre la tabla a otras entidades principales de su cuenta. No pueden conceder permisos a entidades principales en la cuenta del propietario ni en ninguna otra cuenta.
+ Los administradores del lago de datos de la cuenta del propietario pueden conceder permisos sobre la tabla a otras entidades principales de su cuenta.

**Permisos de ubicación de datos**  
Cuando intente crear una tabla que apunte a una ubicación de Amazon S3, dependiendo de si dispone de permisos de ubicación de datos, es posible que el permiso `CREATE_TABLE` no sea suficiente para crear una tabla. Es importante tener en cuenta los tres casos siguientes.


| Caso práctico de creación de tablas | Permisos necesarios | 
| --- | --- | 
| Lake Formation no administra la ubicación especificada (no está registrada). | CREATE\$1TABLE es suficiente. | 
| Lake Formation administra la ubicación especificada (está registrada), y la base de datos que la contiene no tiene propiedad de ubicación o tiene una propiedad de ubicación que no es un prefijo de Amazon S3 de la ubicación de la tabla. | Se requiere CREATE\$1TABLE, además de permisos de localización de datos en la ubicación especificada. | 
| Lake Formation administra la ubicación especificada (está registrada), y la base de datos contenedora tiene una propiedad de ubicación que apunta a una ubicación que está registrada y es un prefijo de Amazon S3 de la ubicación de la tabla. | CREATE\$1TABLE es suficiente. | 

### `DATA_LOCATION_ACCESS`
<a name="perm-location"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| DATA\$1LOCATION\$1ACCESS | Ubicación de Amazon S3 | (Permisos de Amazon S3 en la ubicación, que deben especificarse en el rol utilizado para registrar la ubicación). | 

Este es el único permiso de ubicación de datos. Una entidad principal con este permiso puede crear una base de datos o tabla de metadatos que apunte a la ubicación de Amazon S3 especificada. La ubicación debe estar registrada. Una entidad principal que tiene permisos de localización de datos en una localización también tiene permisos de localización en las localizaciones secundarias.

**Example**  
El siguiente ejemplo concede permisos de ubicación de datos en `s3://products/retail` al usuario `datalake_user1` en la cuenta de AWS 1111-2222-3333.  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DATA_LOCATION_ACCESS" --resource '{ "DataLocation": {"ResourceArn":"arn:aws:s3:::products/retail"}}'
```

`DATA_LOCATION_ACCESS` no es necesario para consultar o actualizar los datos subyacentes. Este permiso se aplica únicamente a la creación de recursos del Catálogo de datos.

Para obtener más información sobre permisos de ubicación de datos, consulte [Underlying data access control](access-control-underlying-data.md#data-location-permissions).

### `DELETE`
<a name="perm-delete"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| DELETE | TABLE | (No se necesitan permisos de IAM adicionales si la ubicación está registrada). | 

Una entidad principal con este permiso puede insertar, actualizar y leer datos subyacentes en la ubicación de Amazon S3 especificada por la tabla. La entidad principal también puede ver la tabla en la consola de Lake Formation y recuperar información sobre la tabla con la API AWS Glue.

**Example**  
El siguiente ejemplo concede el `DELETE` permiso al usuario `datalake_user1` sobre la tabla de la base `retail` de datos de la cuenta `inventory` 1111-2222-3333. AWS   

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DELETE" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

Este permiso se aplica solo a los datos de Amazon S3 y no a los de otros almacenes de datos como Amazon Relational Database Service (Amazon RDS).

### `DESCRIBE`
<a name="perm-describe"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| DESCRIBE |  Enlace de recurso a tabla Enlace de recurso a base de datos  |  `glue:GetTable` `glue:GetDatabase`  | 
| DESCRIBE | DATABASE | glue:GetDatabase | 
| DESCRIBE | TABLE | glue:GetTable | 
| DESCRIBE | LF-Tag |  `glue:GetTable` `glue:GetDatabase` `lakeformation:GetResourceLFTags` `lakeformation:ListLFTags` `lakeformation:GetLFTag` `lakeformation:SearchTablesByLFTags` `lakeformation:SearchDatabasesByLFTags`  | 

Una entidad principal con este permiso puede ver la base de datos, tabla o enlace de recursos especificados. No se concede implícitamente ningún otro permiso del Catálogo de datos ni ningún permiso de acceso a los datos. Las bases de datos y las tablas aparecen en los editores de consultas de los servicios integrados, pero no se puede consultar en ellas salvo que se concedan otros permisos de Lake Formation (por ejemplo, `SELECT`).

Por ejemplo, un usuario que tiene `DESCRIBE` en una base de datos puede ver la base de datos y todos los metadatos de la base de datos (descripción, ubicación, etc.). Sin embargo, el usuario no puede averiguar qué tablas contiene la base de datos y no puede eliminar, modificar o crear tablas en la base de datos. Del mismo modo, un usuario que tiene `DESCRIBE` en una tabla puede ver la tabla y los metadatos de la tabla (descripción, esquema, ubicación, etc.), pero no puede soltar, alterar o ejecutar consultas contra la tabla.

A continuación se detallan algunas normas adicionales para `DESCRIBE`:
+ Si un usuario tiene otros permisos de Lake Formation sobre una base de datos, tabla o enlace de recursos, `DESCRIBE` se le concede implícitamente.
+ Si un usuario tiene `SELECT` solo en un subconjunto de columnas de una tabla (`SELECT` parcial), el usuario estará restringido a ver solo esas columnas.
+ No puede conceder `DESCRIBE` a un usuario que tiene selección parcial en una tabla. Por el contrario, no puede especificar listas de inclusión o exclusión de columnas para las tablas sobre las que se concede `DESCRIBE`.

**Example**  
En el siguiente ejemplo, se concede el `DESCRIBE` permiso al usuario `datalake_user1` en el enlace de recursos de la tabla de la base `retail` de datos de la cuenta `inventory-link` 1111-2222-3333. AWS   

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DESCRIBE" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory-link"}}'
```

### `DROP`
<a name="perm-drop"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| DROP | DATABASE | glue:DeleteDatabase | 
| DROP | TABLE | glue:DeleteTable  | 
| DROP | LF-Tag | lakeformation:DeleteLFTag  | 
| DROP |  Enlace de recurso a base de datos Enlace de recurso a tabla  | `glue:DeleteDatabase` `glue:DeleteTable`  | 

Una entidad principal con este permiso puede borrar una base de datos, tabla o enlace de recurso en el Catálogo de datos. No puede conceder el permiso DROP en una base de datos a una cuenta u organización externa.

**aviso**  
Al eliminar una base de datos se eliminan todas sus tablas.

**Example**  
En el siguiente ejemplo, se concede el `DROP` permiso al usuario de la base de datos de la cuenta `datalake_user1` 1111-2222-3333`retail`. AWS   

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

**Example**  
El siguiente ejemplo concede `DROP` al usuario `datalake_user1` sobre la tabla `inventory` en la base de datos `retail`.  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DROP" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

**Example**  
El siguiente ejemplo concede `DROP` al usuario `datalake_user1` sobre el enlace de recursos de tabla `inventory-link` en la base de datos `retail`.  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DROP" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory-link"}}'
```

### `INSERT`
<a name="perm-insert"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| INSERT | TABLE | (No se necesitan permisos de IAM adicionales si la ubicación está registrada). | 

Una entidad principal con este permiso puede insertar, actualizar y leer datos subyacentes en la ubicación de Amazon S3 especificada por la tabla. La entidad principal también puede ver la tabla en la consola de Lake Formation y recuperar información sobre la tabla con la API AWS Glue.

**Example**  
El siguiente ejemplo concede el `INSERT` permiso al usuario `datalake_user1` de la tabla de la base `retail` de datos de la cuenta `inventory` 1111-2222-3333. AWS   

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "INSERT" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

Este permiso se aplica únicamente a los datos de Amazon S3 y no a los datos de otros almacenes de datos, como Amazon RDS.

### `SELECT`
<a name="perm-select"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| SELECT |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/lake-formation/latest/dg/lf-permissions-reference.html)  | (No se necesitan permisos de IAM adicionales si la ubicación está registrada). | 

Una entidad principal con este permiso puede ver una tabla en el Catálogo de datos y consultar los datos subyacentes en Amazon S3 en la ubicación especificada por la tabla. La entidad principal puede ver la tabla en la consola de Lake Formation y recuperar información sobre la tabla con la API AWS Glue. Si se aplicó el filtrado por columnas cuando se concedió este permiso, la entidad principal puede ver los metadatos solo de las columnas incluidas y consultar los datos solo de las columnas incluidas.

**nota**  
Es responsabilidad del servicio de análisis integrado aplicar el filtrado de columnas al procesar una consulta.

**Example**  
En el siguiente ejemplo, se concede el `SELECT` permiso al usuario `datalake_user1` de la tabla de la base `retail` de datos de la cuenta `inventory` 1111-2222-3333. AWS   

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'
```

Este permiso se aplica únicamente a los datos de Amazon S3 y no a los datos de otros almacenes de datos, como Amazon RDS.

Puede filtrar (restringir el acceso a) columnas específicas con una lista de inclusión opcional o una lista de exclusión. Una lista de inclusión especifica las columnas a las que se puede acceder. Una lista de exclusión especifica las columnas a las que no se puede acceder. En ausencia de una lista de inclusión o exclusión, todas las columnas de la tabla son accesibles.

Los resultados de `glue:GetTable` devuelven solo las columnas que la persona que llama tiene permiso para ver. Los servicios integrados como Amazon Athena y Amazon Redshift respetan las listas de inclusión y exclusión de columnas.

**Example**  
El ejemplo siguiente concede `SELECT` al usuario `datalake_user1` sobre la tabla `inventory` utilizando una lista de inclusión.  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT"  --resource '{ "TableWithColumns": {"DatabaseName":"retail", "Name":"inventory", "ColumnNames": ["prodcode","location","period","withdrawals"]}}'
```

**Example**  
El ejemplo siguiente concede `SELECT` en la tabla `inventory` utilizando una lista de exclusión.  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT"  --resource '{ "TableWithColumns": {"DatabaseName":"retail", "Name":"inventory", "ColumnWildcard": {"ExcludedColumnNames": ["intkey", "prodcode"]}}}'
```

Se aplican las siguientes restricciones al permiso `SELECT`:
+ Al conceder `SELECT`, no puede incluir la opción de concesión si se aplica el filtrado por columnas.
+ No puede restringir el control de acceso en columnas que son claves de partición.
+ A una entidad principal con el permiso `SELECT` sobre un subconjunto de columnas de una tabla no se le puede conceder el permiso `ALTER`, `DROP`, `DELETE` o `INSERT` sobre esa tabla. Del mismo modo, a una entidad principal con el permiso `ALTER`, `DROP`, `DELETE`, o `INSERT` en una tabla no se le puede conceder el permiso `SELECT` con el filtrado de columnas.

El permiso `SELECT` siempre aparece en la página **Permisos de datos** de la consola de Lake Formation como una fila separada. En la imagen siguiente se muestra que `SELECT` se concede a los usuarios `datalake_user2` y `datalake_user3` en todas las columnas de la tabla `inventory`.

![\[La página de permisos de datos muestra cuatro filas. La primera fila contiene los permisos Eliminar e Insertar con el tipo de recurso Tabla con el recurso mostrado como inventory, y la segunda y cuarta filas muestran el permiso Seleccionar con el tipo de recurso Columna, y con el recurso mostrado como retail.inventory.*.\]](http://docs.aws.amazon.com/es_es/lake-formation/latest/dg/images/data-permissions-dialog-select-cross.png)


### `Super`
<a name="perm-super"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| Super | DATABASE | glue:\$1Database\$1  | 
| Super | TABLE | glue:\$1Table\$1, glue:\$1Partition\$1 | 

Este permiso permite a una entidad principal efectuar todas las operaciones compatibles con Lake Formation en la base de datos o en la tabla. No puede conceder `Super` en una base de datos a una cuenta externa.

Este permiso puede coexistir con los demás permisos de Lake Formation. Por ejemplo, puede conceder los permisos `Super`, `SELECT` y `INSERT` sobre una tabla de metadatos. La entidad principal puede entonces efectuar todas las operaciones admitidas en la tabla. Cuando revoca `Super`, los permisos `SELECT` y `INSERT` permanecen, y la entidad principal solo puede efectuar las operaciones de selección e inserción.

En lugar de conceder `Super` a una entidad principal individual, puede concederla al grupo `IAMAllowedPrincipals`. El grupo `IAMAllowedPrincipals` se crea automáticamente e incluye a todos los usuarios y roles de IAM a los que sus políticas de IAM permiten el acceso a los recursos de su Catálogo de datos. Cuando se concede `Super` a `IAMAllowedPrincipals` para un recurso del Catálogo de datos, el acceso al recurso queda efectivamente controlado únicamente por las políticas de IAM.

Puede hacer que se conceda automáticamente el permiso `Super` a `IAMAllowedPrincipals` para los nuevos recursos del catálogo aprovechando las opciones de la página **Configuración** de la consola de Lake Formation.

![\[El cuadro de diálogo Configuración del Catálogo de datos tiene el subtítulo "Permisos predeterminados para bases de datos y tablas recién creadas" y cuenta con dos casillas de verificación, que se describen en el texto.\]](http://docs.aws.amazon.com/es_es/lake-formation/latest/dg/images/settings-page.png)

+ Para conceder `Super` a `IAMAllowedPrincipals` para todas las bases de datos nuevas, seleccione **Usar solo control de acceso IAM para bases de datos nuevas**.
+ Para conceder `Super` a `IAMAllowedPrincipals` para todas las tablas nuevas en bases de datos nuevas, seleccione **Usar solo control de acceso IAM para tablas nuevas en bases de datos nuevas**.
**nota**  
Esta opción hace que se marque de manera predeterminada la casilla **Utilizar sólo el control de acceso IAM para las nuevas tablas de esta base de datos** en el cuadro de diálogo **Crear base de datos**. No hace nada más que eso. Es la casilla de verificación del cuadro de diálogo **Crear base de datos** que permite la concesión de `Super` a `IAMAllowedPrincipals`.

Estas opciones de la página **Configuración** están habilitadas de forma predeterminada. Para obtener más información, consulte los siguientes temas:
+ [Cambiar la configuración predeterminada de su lago de datos](change-settings.md)
+ [Actualización AWS Glue de los permisos de datos al AWS Lake Formation modelo](upgrade-glue-lake-formation.md)

### `SUPER_USER`
<a name="perm-super-user"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| Super user | Catalog | glue:GetCatalog  | 

Puede conceder el permiso `Super user` solo a entidades principales específicas sobre los catálogos del Catálogo de datos predeterminado. No puede conceder permisos `Super user` sobre el catálogo predeterminado ni sobre otros tipos de recursos, como bases de datos y tablas, ni a entidades principales de cuentas externas. El permiso `Super user` permite a una entidad principal efectuar todas las operaciones compatibles con Lake Formation en las bases de datos y tablas incluidas en el catálogo concedido. 

Con el permiso `Super user`, la entidad principal (beneficiario) puede realizar las siguientes acciones en los recursos (catálogos, bases de datos y tablas) del catálogo:
+ Permisos `CREATE_DATABASE` y `DESCRIBE` en el catálogo.
+ Permisos `DROP`, `ALTER`, `CREATE_TABLE` y `DESCRIBE` (en efecto, `SUPER`) en todas las bases de datos del catálogo.
+ Permisos `DROP`, `ALTER`, `DESCRIBE`, `SELECT`, `INSERT` y `DELETE` (en efecto, `SUPER`) en todas las tablas de todas las bases de datos del catálogo.
+ Permisos `All` (en efecto, SUPER) en los catálogos incluidos en el catálogo.
+ Permisos concesibles (la posibilidad de conceder estos permisos a otras entidades principales) en todos los catálogos, bases de datos y tablas del catálogo.

Con el permiso `Super user` en un recurso del catálogo, el beneficiario no puede realizar ni delegar las acciones `ALTER` y `DROP` en el catálogo.

### `ASSOCIATE`
<a name="perm-associate"></a>


| Permiso | Concedido sobre este recurso | El beneficiario también necesita | 
| --- | --- | --- | 
| ASSOCIATE | LF-Tag |   `glue:GetDatabase` `glue:GetTable`  `lakeformation:AddLFTagsToResource"` `lakeformation:RemoveLFTagsFromResource"` `lakeformation:GetResourceLFTags` `lakeformation:ListLFTags` `lakeformation:GetLFTag` `lakeformation:SearchTablesByLFTags` `lakeformation:SearchDatabasesByLFTags`  | 

Una entidad principal con este permiso en una etiqueta LF puede asignar esta a un recurso del Catálogo de datos. Al conceder `ASSOCIATE` está otorgando `DESCRIBE` de manera implícita.

**Example**  
En este ejemplo se concede al usuario `datalake_user1` el permiso `ASSOCIATE` sobre las etiquetas LF con la clave `module`. Concede permisos para ver y asignar todos los valores de esa clave, como indica el asterisco (\$1).  

```
aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "ASSOCIATE" --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["*"]}}'
```