

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.

# Introducción al modo de permisos estándar en Amazon QLDB
<a name="getting-started-standard-mode"></a>

Utilice esta sección para conocer el modo de permisos estándar en Amazon QLDB. En esta sección se proporciona una tabla de referencia que le ayudará a redactar una política basada en la identidad en AWS Identity and Access Management (IAM) para las acciones de PartiQL y los recursos de tablas en QLDB. También incluye un step-by-step tutorial para crear políticas de permisos en IAM e instrucciones para encontrar un ARN de tabla y crear etiquetas de tabla en QLDB.

**Topics**
+ [El modo de permisos `STANDARD`](#standard-permissions-mode)
+ [Referencia de permisos PartiQL](#security_iam_partiql-reference)
+ [Búsqueda de un ID y un ARN de tabla](#security_iam_partiql-ref.table-arn)
+ [Etiquetar tablas](#security_iam_partiql-ref.table-tags)
+ [Tutorial de inicio rápido: Creación de políticas de permisos](#getting-started-standard-mode-tutorial)

## El modo de permisos `STANDARD`
<a name="standard-permissions-mode"></a>

QLDB ahora admite un modo de permisos `STANDARD` para los recursos del libro mayor. El modo de permisos estándar habilita el control de acceso con granularidad más precisa para libros mayores, tablas y comandos de PartiQL. De forma predeterminada, este modo deniega todas las solicitudes para ejecutar cualquier comando de PartiQL en cualquier tabla de un libro mayor.

**nota**  
Anteriormente, el único modo de permisos disponible para un libro mayor era `ALLOW_ALL`. El modo `ALLOW_ALL` habilita el control de acceso con granularidad de nivel de API para los libros mayores, y sigue siendo compatible, aunque no se recomienda, para los libros mayores de QLDB. Este modo permite a los usuarios que tengan el permiso de API `SendCommand` ejecutar todos los comandos de PartiQL en cualquier tabla del libro mayor que se especifique en la política de permisos (por lo tanto, los comandos «permitir todos» de PartiQL).  
Puede cambiar el modo de permisos de los libros mayores existentes de `ALLOW_ALL` a `STANDARD`. Para obtener información, consulte [Migración al modo de permisos estándar](ledger-management.basics.md#ledger-mgmt.basics.update-permissions.migrating).

Para permitir comandos en el modo estándar, debe crear una política de permisos en IAM para recursos de tabla y acciones PartiQL específicos. Esto se suma al permiso API `SendCommand` para el libro mayor. Para facilitar las políticas en este modo, QLDB introdujo [un conjunto de acciones de IAM](#security_iam_partiql-reference-table) para los comandos PartiQL y Amazon Resource Names ARNs () para las tablas de QLDB. Para obtener más información acerca del modelo de objeto de datos de QLDB, consulte [Conceptos básicos y terminología de Amazon QLDB](ledger-structure.md).

## Referencia de permisos PartiQL
<a name="security_iam_partiql-reference"></a>

En la siguiente tabla se muestra cada comando PartiQL de QLDB, las acciones de IAM correspondientes para las que debe conceder permisos para ejecutar el comando AWS y los recursos para los que puede conceder los permisos. Las acciones se especifican en el campo `Action` de la política y el valor del recurso se especifica en el campo `Resource` de la política.

**importante**  
Las políticas de IAM que conceden permisos a estos comandos PartiQL solo se aplican a su libro mayor si el modo de permisos `STANDARD` está asignado al libro mayor. Estas políticas no se aplican a los libros mayores en el modo de permisos `ALLOW_ALL`.  
Para obtener información sobre cómo especificar el modo de permisos al crear o actualizar un libro mayor, consulte [Operaciones básicas de libros mayores de Amazon QLDB](ledger-management.basics.md) o [Paso 1: crear un nuevo libro mayor](getting-started-step-1.md) en la *Introducción a la consola*.
Para ejecutar cualquier comando PartiQL en un libro mayor, también debe conceder permiso a la acción de la API `SendCommand` para el recurso del libro mayor. Esto se suma a las acciones de PartiQL y a los recursos de tabla que se muestran en la siguiente tabla. Para obtener más información, consulte [Ejecutar transacciones de datos](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-data-transactions).


**Comandos PartiQL de Amazon QLDB y permisos necesarios**  
<a name="security_iam_partiql-reference-table"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/qldb/latest/developerguide/getting-started-standard-mode.html)

Para ver ejemplos de documentos de políticas de IAM que conceden permisos a estos comandos PartiQL, vaya [Tutorial de inicio rápido: Creación de políticas de permisos](#getting-started-standard-mode-tutorial) a o consulte [Ejemplos de políticas basadas en identidades para Amazon QLDB](security_iam_id-based-policy-examples.md).

## Búsqueda de un ID y un ARN de tabla
<a name="security_iam_partiql-ref.table-arn"></a>

[Para encontrar el ID de una tabla, utilice Consola de administración de AWS o consulte la tabla information\$1schema.user\$1tables.](working.catalog.md) Para ver los detalles de la tabla en la consola o consultar esta tabla del catálogo del sistema, debe tener permiso `SELECT` sobre el recurso del catálogo del sistema. Por ejemplo, para encontrar el ID de tabla de la tabla `Vehicle`, puede ejecutar la siguiente instrucción.

```
SELECT * FROM information_schema.user_tables
WHERE name = 'Vehicle'
```

Esta consulta devuelve resultados en un formato similar al del ejemplo siguiente.

```
{
    tableId: "Au1EiThbt8s0z9wM26REZN",
    name: "Vehicle",
    indexes: [
        { indexId: "Djg2nt0yIs2GY0T29Kud1z", expr: "[VIN]", status: "ONLINE" },
        { indexId: "4tPW3fUhaVhDinRgKRLhGU", expr: "[LicensePlateNumber]", status: "BUILDING" }
    ],
    status: "ACTIVE"
}
```

Para conceder permisos para ejecutar instrucciones PartiQL en una tabla, debe especificar un recurso de tabla en el siguiente formato ARN.

```
arn:aws:qldb:${region}:${account-id}:ledger/${ledger-name}/table/${table-id}
```

A continuación, se muestra un ejemplo de un ARN de tabla para el ID de tabla `Au1EiThbt8s0z9wM26REZN`.

```
arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger/table/Au1EiThbt8s0z9wM26REZN
```

### Uso de la consola
<a name="security_iam_partiql-ref.table-arn.con"></a>

También puede utilizar la consola de QLDB para encontrar un ARN de tabla.

**Cómo encontrar el ARN de una tabla (consola)**

1. [Inicie sesión en y abra la Consola de administración de AWS consola de Amazon QLDB en /qldb. https://console.aws.amazon.com](https://console.aws.amazon.com/qldb)

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

1. En la lista de **Libros mayores**, elija el nombre del libro mayor cuyo ARN de tabla desee encontrar.

1. En la página de detalles del libro mayor, en la pestaña **Tablas**, busque el nombre de la tabla cuyo ARN desee encontrar. Para copiar el ARN, seleccione el icono de copia (![\[Copy icon.\]](http://docs.aws.amazon.com/es_es/qldb/latest/developerguide/images/copy.png)) situado junto a él.

## Etiquetar tablas
<a name="security_iam_partiql-ref.table-tags"></a>

Puede etiquetar los recursos de tabla. Para administrar las etiquetas de las tablas existentes, utilice las operaciones de la API Consola de administración de AWS o, y. `TagResource` `UntagResource` `ListTagsForResource` Para obtener más información, consulte [Etiquetado de recursos de Amazon QLDB](tagging.md).

**nota**  
Los recursos de la tabla no heredan las etiquetas de su recurso de registro raíz.  
 Actualmente, el etiquetado de tablas al crearlas solo se admite en los libros mayores en el modo de permisos `STANDARD`. 

También puede definir etiquetas de tabla mientras crea la tabla mediante la consola de QLDB o especificándolas en una instrucción PartiQL `CREATE TABLE`. En el siguiente ejemplo, se crea una tabla llamada `Vehicle` con la etiqueta `environment=production`.

```
CREATE TABLE Vehicle WITH (aws_tags = `{'environment': 'production'}`)
```

Para etiquetar las tablas al crearlas, es necesario acceder a las acciones `qldb:PartiQLCreateTable` y `qldb:TagResource`.

Al etiquetar los recursos en el momento de su creación, ya no es necesario ejecutar scripts de etiquetado personalizados después de la creación del recurso. Una vez etiquetada una tabla, puede controlar el acceso a la tabla en función de esas etiquetas. Por ejemplo, puede conceder acceso total solo a las tablas que tengan una etiqueta específica. Para ver una política de ejemplo JSON, consulte [Acceso completo a todas las acciones basadas en las etiquetas de las tablas](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-full-tags).

### Uso de la consola
<a name="security_iam_partiql-ref.table-tags.con"></a>

También puede usar la consola de QLDB para definir las etiquetas de la tabla mientras crea la tabla.

**Etiquetado de una tabla al crearla (consola)**

1. [Inicie sesión en y abra la Consola de administración de AWS consola de Amazon QLDB en /qldb. https://console.aws.amazon.com](https://console.aws.amazon.com/qldb)

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

1. En la lista de **Libros mayores**, elija el nombre del libro mayor donde quiere crear la tabla.

1. En la página de detalles del libro mayor, en la pestaña **Tablas**, elija **Crear tabla**.

1. En la página **Crear tabla**, haga lo siguiente:
   + **Nombre de tabla**: introduzca un nombre para la tabla.
   + **Etiquetas**: agregue metadatos a la tabla asociando etiquetas como pares de clave-valor. Puede agregar etiquetas a las tablas para que le resulte más fácil organizarlas e identificarlas.

     Elija **Agregar etiqueta** y, a continuación, introduzca cualquier par clave-valor según corresponda.

1. Cuando la configuración sea la deseada, elija **Create table** (Crear tabla).

## Tutorial de inicio rápido: Creación de políticas de permisos
<a name="getting-started-standard-mode-tutorial"></a>

Este tutorial lo guía por los pasos para crear políticas de permisos en IAM para un libro mayor de Amazon QLDB en el modo de permisos `STANDARD`. A continuación, puede asignar los permisos a los usuarios, grupos o roles.

Para ver ejemplos de documentos de políticas de IAM que conceden permisos a estos comandos PartiQL y recursos de tabla, consulte [Ejemplos de políticas basadas en identidades para Amazon QLDB](security_iam_id-based-policy-examples.md).

**Topics**
+ [Requisitos previos](#getting-started-standard-mode-prereqs)
+ [Creación de una política de solo lectura](#getting-started-standard-mode-read-only)
+ [Crear una política de acceso completo](#getting-started-standard-mode-full-access)
+ [Crear una política de solo lectura para una tabla específica](#getting-started-standard-mode-read-only-table)
+ [Asignar permisos](#getting-started-standard-mode-assign-permissions)

### Requisitos previos
<a name="getting-started-standard-mode-prereqs"></a>

Antes de comenzar, asegúrese de que hace lo siguiente:

1. Siga las instrucciones de AWS configuración que aparecen en[Acceso a Amazon QLDB](accessing.md), si aún no lo ha hecho. Estos pasos incluyen registrarse AWS y crear un usuario administrativo.

1. Cree un nuevo libro mayor y elija el modo de permisos `STANDARD` para el libro mayor. Para aprender a hacerlo, consulte [Paso 1: crear un nuevo libro mayor](getting-started-step-1.md) en *Introducción a la consola* o [Operaciones básicas de libros mayores de Amazon QLDB](ledger-management.basics.md).

### Creación de una política de solo lectura
<a name="getting-started-standard-mode-read-only"></a>

Para usar el editor de políticas JSON para crear una política de solo lectura para *todas las tablas* de un libro mayor en el modo de permisos estándar, haga lo siguiente:

1. Inicie sesión en la consola de IAM Consola de administración de AWS y ábrala en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En la columna de navegación de la izquierda, elija **Políticas**.

   Si es la primera vez que elige **Políticas**, aparecerá la página **Bienvenido a políticas administradas**. Elija **Comenzar**.

1. En la parte superior de la página, seleccione **Crear política**.

1. Seleccione la pestaña **JSON**.

1. Copie y pegue la siguiente política JSON. Este ejemplo de política concede acceso de *solo lectura* a todas las tablas de un libro mayor.

   Para usar esta política, sustituya *us-east-1**123456789012*, y *myExampleLedger* en el ejemplo, por su propia información.

   ```
   {
     "Version": "2012-10-17",
     "Statement": [
       {
         "Sid": "QLDBSendCommandPermission",
         "Effect": "Allow",
         "Action": "qldb:SendCommand",
         "Resource": "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger"
       },
       {
         "Sid": "QLDBPartiQLReadOnlyPermissions",
         "Effect": "Allow",
         "Action": [
           "qldb:PartiQLSelect",
           "qldb:PartiQLHistoryFunction"
         ],
         "Resource": [
           "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger/table/*",
           "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger/information_schema/user_tables"
         ]
       }
     ]
   }
   ```

1. Elija **Revisar política**.
**nota**  
Puede alternar entre las pestañas **Visual editor (Editor visual)** y **JSON** en cualquier momento. Sin embargo, si realiza cambios o elige **Review policy** en la pestaña **Visual editor**, IAM podría reestructurar la política para optimizarla para el editor visual. Para obtener más información, consulte [Reestructuración de política](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_policies.html#troubleshoot_viseditor-restructure) en la *Guía del usuario de IAM*.

1. En la página **Review Policy (Revisar política)**, ingrese un **Nombre** y una **descripción** (opcional) para la política que está creando. Revise el **Summary** (Resumen) de la política para ver los permisos concedidos por su política. A continuación, elija **Create policy** (Crear política) para guardar su trabajo.

### Crear una política de acceso completo
<a name="getting-started-standard-mode-full-access"></a>

Para crear una política de acceso total para todas las tablas de un libro mayor de QLDB en el modo de permisos estándar, haga lo siguiente:
+ Repita los [pasos anteriores](#getting-started-standard-mode-read-only) utilizando el siguiente documento de política. Esta política de ejemplo concede acceso a *todos los comandos PartiQL* de *todas las tablas* de un libro mayor, mediante el uso de caracteres comodín (\$1) para cubrir todas las acciones de PartiQL y todos los recursos de un libro mayor.
**aviso**  
Este es un ejemplo del uso de un carácter comodín (\$1) para permitir todas las acciones PartiQL, incluidas las administrativas read/write y las operaciones en todas las tablas de un libro mayor de QLDB. En su lugar, es una práctica recomendada especificar explícitamente cada acción que se va a conceder y solo lo que necesita ese usuario, rol o grupo.

  Para usar esta política, sustituya *us-east-1* y, *myExampleLedger* en el ejemplo*123456789012*, por su propia información.

  ```
  {
    "Version": "2012-10-17",
    "Statement": [
      {
        "Sid": "QLDBSendCommandPermission",
        "Effect": "Allow",
        "Action": "qldb:SendCommand",
        "Resource": "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger"
      },
      {
        "Sid": "QLDBPartiQLFullPermissions",
        "Effect": "Allow",
        "Action": [
          "qldb:PartiQL*"
        ],
        "Resource": [
          "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger/table/*",
          "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger/information_schema/user_tables"
        ]
      }
    ]
  }
  ```

### Crear una política de solo lectura para una tabla específica
<a name="getting-started-standard-mode-read-only-table"></a>

Para crear una política de acceso solo lectura para todas las tablas de un libro mayor de QLDB en el modo de permisos estándar, haga lo siguiente:

1. Busque el ARN de la tabla mediante Consola de administración de AWS o consultando la tabla del catálogo del sistema. `information_schema.user_tables` Para obtener instrucciones, consulte [Búsqueda de un ID y un ARN de tabla](#security_iam_partiql-ref.table-arn).

1. Utilice el ARN de tabla para crear una política que permita el acceso de solo lectura a la tabla. Para ello, repita los [pasos anteriores](#getting-started-standard-mode-read-only) utilizando el siguiente documento de política.

   Esta política de ejemplo concede acceso *de solo lectura* únicamente a la *tabla especificada*. En este ejemplo, el ID de tabla es `Au1EiThbt8s0z9wM26REZN`. Para usar esta política, sustituya*us-east-1*, *123456789012**myExampleLedger*, y *Au1EiThbt8s0z9wM26REZN* en el ejemplo por su propia información.

   ```
   {
     "Version": "2012-10-17",
     "Statement": [
       {
         "Sid": "QLDBSendCommandPermission",
         "Effect": "Allow",
         "Action": "qldb:SendCommand",
         "Resource": "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger"
       },
       {
         "Sid": "QLDBPartiQLReadOnlyPermissions",
         "Effect": "Allow",
         "Action": [
           "qldb:PartiQLSelect",
           "qldb:PartiQLHistoryFunction"
         ],
         "Resource": [
           "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger/table/Au1EiThbt8s0z9wM26REZN"
         ]
       }
     ]
   }
   ```

### Asignar permisos
<a name="getting-started-standard-mode-assign-permissions"></a>

Después de crear una política de permisos de QLDB, asigne los permisos de la siguiente manera.

Para dar acceso, agregue permisos a los usuarios, grupos o roles:
+ Usuarios y grupos en AWS IAM Identity Center:

  Cree un conjunto de permisos. Siga las instrucciones de [Creación de un conjunto de permisos](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtocreatepermissionset.html) en la *Guía del usuario de AWS IAM Identity Center *.
+ Usuarios gestionados en IAM a través de un proveedor de identidades:

  Cree un rol para la federación de identidades. Siga las instrucciones descritas en [Creación de un rol para un proveedor de identidad de terceros (federación)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp.html) en la *Guía del usuario de IAM*.
+ Usuarios de IAM:
  + Cree un rol que el usuario pueda aceptar. Siga las instrucciones descritas en [Creación de un rol para un usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html) en la *Guía del usuario de IAM*.
  + (No recomendado) Adjunte una política directamente a un usuario o añada un usuario a un grupo de usuarios. Siga las instrucciones descritas en [Adición de permisos a un usuario (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) de la *Guía del usuario de IAM*.