

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

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

Os exemplos a seguir mostram como usar o JSON para controle de acesso do usuário ao criar um índice.

**Atenção**  
O token JSON é uma carga não validada. Ele só deve ser usado quando as solicitações de Amazon Kendra vêm de um servidor confiável e nunca de um navegador. 

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

1. Escolha **Criar índice** para começar a criar um novo índice.

1. Na página **Especificar detalhes do índice**, dê um nome e uma descrição ao índice. 

1. Para a **função do IAM**, selecione uma função ou selecione **Criar uma nova função** para e especifique um nome de função para criar uma nova função. A função IAM terá o prefixo "AmazonKendra-". 

1. Deixe os outros campos nos padrões determinados. Escolha **Próximo**.

1. Na página **Configurar controle de acesso do usuário**, em **Configurações de controle de acesso**, escolha **Sim** para usar tokens o para controle de acesso. 

1. Em **Configuração de token**, selecione **JSON** como o **Tipo de token**. 

1. Especifique um **Nome de usuário** a ser usado na verificação da ACL.

1. Especifique um ou mais **Grupos** a serem usados na verificação da ACL.

1. Escolha **Próximo**.

1. Na página de **Detalhes do provisionamento**, escolha **Developer Edition**.

1. Escolha **Criar** para criar seu índice.

1. Aguarde até que o índice seja criado. O Amazon Kendra provisiona o hardware para seu índice. Essa operação pode levar algum tempo.

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

Para criar um índice da AWS CLI usando um arquivo de entrada JSON, crie primeiro um arquivo JSON com os parâmetros desejados:

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

Em seguida, chame `create-index` usando o arquivo de entrada. Por exemplo, se o nome do arquivo JSON for `create-index-openid.json`, faça o seguinte: 

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

Se você não estiver usando o Open ID para Centro de Identidade do AWS IAM, poderá nos enviar o token no formato JSON. Se você fizer isso, deverá especificar qual campo no token JSON contém o nome do usuário e os grupos. Os valores do campo de grupos devem ser uma matriz de sequências de caracteres JSON. Por exemplo, se estiver usando SAML, o token será semelhante ao seguinte:

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

O `TokenConfiguration` especificaria o nome do usuário e os nomes dos campos do grupo:

```
{
    "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'
)
```

------