Usar o JSON - Amazon Kendra

Usar o JSON

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.

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

  3. 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-".

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

  5. 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.

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

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

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

  9. Escolha Próximo.

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

  11. Escolha Criar para criar seu índice.

  12. 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 AWS IAM Identity Center, 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' )