

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.

# Concesión de permisos
<a name="s3-tables-grant-permissions"></a>

 Tras integrar las tablas de S3 AWS Lake Formation, puede conceder permisos sobre el catálogo de tablas de S3 y los objetos del catálogo (depósitos de tablas, bases de datos, tablas) a otros roles y usuarios de IAM de su cuenta. Los permisos de Lake Formation permiten definir controles de acceso en el nivel de tabla, columna y fila para los usuarios de motores de análisis integrados, como Amazon Redshift Spectrum y Athena. 

 Puede conceder permisos utilizando el método de recursos con nombre o el método de control de acceso basado en etiquetas de Lake Formation (LF-TBAC). Antes de conceder permisos mediante etiquetas LF y expresiones de etiquetas LF, debe definirlas y asignarlas a los objetos del Catálogo de datos. 

Para obtener más información, consulte [Gestión de etiquetas LF para el control de acceso a los metadatos](managing-tags.md).

Puede compartir bases de datos y tablas con AWS cuentas externas concediendo permisos de Lake Formation a las cuentas externas. A continuación, los usuarios pueden ejecutar consultas y trabajos para unir y consultar tablas en varias cuentas. Cuando comparte un recurso del catálogo con otra cuenta, las entidades principales de esa cuenta pueden operar con ese recurso como si estuviera en su Catálogo de datos. 

Al compartir bases de datos y tablas con cuentas externas, el permiso de **superusuario** no está disponible. 

 Para obtener instrucciones detalladas sobre la concesión de permisos, consulte la sección [Administrar los permisos de Lake Formation](managing-permissions.md). 

## AWS CLI ejemplo de concesión de permisos en una tabla de Amazon S3
<a name="w2aac13c27c29c15"></a>

```
aws lakeformation grant-permissions \
--cli-input-json \
'{
    "Principal": {
        "DataLakePrincipalIdentifier":"arn:aws:iam::111122223333:role/DataAnalystRole"
    },
    "Resource": {
        "Table": {
            "CatalogId":"111122223333:s3tablescatalog/amzn-s3-demo-bucket1",
            "DatabaseName":"S3 table bucket namespace <example_namespace>",
            "Name":"S3 table bucket table name <example_table>"
        }
    },
    "Permissions": [
        "SELECT"
    ]
}'
```

 Se deben incluir los siguientes parámetros en el comando: 
+ DataLakePrincipalIdentifier — ARN de usuario, rol o grupo de IAM para conceder permisos
+ CatalogId — ID de AWS cuenta de 12 dígitos propietario del catálogo de datos
+ DatabaseName — Nombre del espacio de nombres del bucket de la tabla Amazon S3
+ Name: nombre de la tabla del bucket de tablas de Amazon S3
+ Permissions: permisos que se van a conceder Las opciones incluyen: SELECT, INSERT, DELETE, DESCRIBE, ALTER, DROP, ALLL y SUPER.

# Acceso a las tablas de Amazon S3 compartidas
<a name="s3-tables-cross-account-sharing"></a>

 Después de conceder permisos entre cuentas en una base de datos o tabla del catálogo de tablas de S3, para acceder a los recursos, debe crear enlaces de recursos para las bases de datos y tablas compartidas. 

1.  En la cuenta de destino (la cuenta que recibe los recursos compartidos), cree un enlace a los recursos de la base de datos. Para obtener instrucciones detalladas, consulte [Crear un enlace de recursos a una base de datos de Catálogo de datos compartida](create-resource-link-database.md). 

   Ejemplo de la CLI para crear un enlace a los recursos de la base de datos

   ```
   aws glue create-database 
   --region us-east-1 
   --catalog-id "111122223333" 
   --database-input \
   '{
     "Name": "s3table_resourcelink",
     "TargetDatabase": {
       "CatalogId": "011426214932:s3tablescatalog/chmni-s3-table-bucket-011426214932",
       "DatabaseName": "s3_table_ns"
     },
     "CreateTableDefaultPermissions": []
   }'
   ```

1.  Conceda permisos entre cuentas para la tabla. 

   Ejemplo de la CLI para la concesión de permisos entre cuentas

   ```
   aws lakeformation grant-permissions \
   --region us-east-1 \
   --cli-input-json \
   '{
       "Principal": {
           "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:role/S3TablesTestExecRole"
       },
       "Resource": {
           "Table": {
               "CatalogId": "011426214932:s3tablescatalog/chmni-s3-table-bucket-011426214932",
               "DatabaseName": "s3_table_ns",
               "Name": "test_s3_iceberg_table"
           }
       },
       "Permissions": [
           "ALL"
       ]
   }'
   ```

1.  Conceda el permiso `DESCRIBE` de Lake Formation en el enlace de recursos. 

    Ejemplo de la CLI para conceder el permiso Describe en el enlace de recursos. 

   ```
   aws lakeformation grant-permissions \
       --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:role/S3TablesTestExecRole
       --resource Database='{CatalogId=111122223333;, Name=s3table_resourcelink}' \
       --permissions DESCRIBE
   ```