

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.

# Uso de JSON
<a name="create-index-access-control-tokens-json"></a>

Los siguientes ejemplos muestran cómo usar JASON para el control de acceso de los usuarios al crear un índice.

**aviso**  
El token JSON es una carga no validada. Solo debe usarse cuando las solicitudes a Amazon Kendra provienen de un servidor de confianza y nunca de un navegador. 

------
#### [ Console ]

1. Elija **Crear índice** para empezar a crear un índice nuevo.

1. En la página **Especificar detalles de índice**, proporcione a su índice un nombre y una descripción. 

1. Para **el rol de IAM**, seleccione un rol o seleccione **Crear un nuevo rol** y especifique un nombre para crear un nuevo rol. El rol de IAM tendrá el prefijo “AmazonKendra-”. 

1. No cambie los demás valores predeterminados. Elija **Siguiente**.

1. En la página **Configurar el control de acceso de los usuarios**, en **Configuración de control de acceso**, seleccione **Sí** para utilizar los tokens para el control de acceso. 

1. En **Configuración de token**, seleccione **JSON** como **Tipo de token**. 

1. Especifique un **Nombre de usuario** para usarlo en la verificación de la ACL.

1. Especifique uno o más **Grupos** para usarlos en la verificación de la ACL.

1. Elija **Siguiente**.

1. En la página **Detalles de aprovisionamiento**, elija la **Edición para desarrolladores**.

1. Elija **Crear** para crear el índice.

1. Espere a que se cree el índice. Amazon Kendra aprovisiona el hardware para su índice. Esta operación puede llevar algún tiempo.

------
#### [ CLI ]

Para crear un índice con la AWS CLI utilizando un archivo de entrada JSON, cree primero un archivo JSON con los parámetros que desee:

```
{
    "Name": "user-context",
    "Edition": "ENTERPRISE_EDITION",
    "RoleArn": "arn:aws:iam::account-id:role:/my-role",
    "UserTokenConfigurations": [
        {
            "JsonTokenTypeConfiguration": {
                "UserNameAttributeField": "user",
                "GroupAttributeField": "group"
            }
        }
    ],
    "UserContextPolicy": "USER_TOKEN"
}
```

A continuación, llame a `create-index` usando el archivo de entrada. Por ejemplo, si el nombre de su archivo JSON es `create-index-openid.json`, puede usar lo siguiente: 

```
aws kendra create-index --cli-input-json file://create-index-openid.json
```

Si no utiliza Open ID para AWS IAM Identity Center, puede enviarnos el token en formato JSON. Si lo hace, debe especificar qué campo del token JSON contiene el nombre de usuario y qué campo contiene los grupos. Los valores del campo de los grupos deben ser una matriz de cadenas JSON. Por ejemplo, si utiliza SAML, su token debería ser similar al siguiente:

```
{
     "username" : "user1", 
     "groups": [
        "group1", 
        "group2"
     ]
}
```

La `TokenConfiguration` especificaría el nombre de usuario y los nombres del campo de los grupos:

```
{
    "UserNameAttributeField":"username",
    "GroupAttributeField":"groups"
}
```

------
#### [ Python ]

```
response = kendra.create_index(
    Name='user-context',
    Edition='ENTERPRISE_EDITION',
    RoleArn='arn:aws:iam::account-id:role:/my-role',
    UserTokenConfigurations=[
        {
            "JwtTokenTypeConfiguration": {
                "UserNameAttributeField": "user",
                "GroupAttributeField": "group",
            }
        }
    ],
    UserContextPolicy='USER_TOKEN'
)
```

------