

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

# Configurar a autenticação de credenciais do cliente OAuth 2.0 para ServiceNow
<a name="kb-managed-servicenow-oauth2-setup"></a>

Use a API ServiceNow de tabela com credenciais de cliente do OAuth 2.0 (2LO) para autenticação. Conclua todas as etapas a seguir em sua ServiceNow instância antes de configurar a fonte de dados no Amazon Bedrock.

## Etapa 1: habilitar o tipo de concessão de credenciais do cliente
<a name="kb-managed-servicenow-oauth2-step1"></a>

1. Em ServiceNow, navegue até `sys_properties.list` usar o navegador de filtros.

1. Crie uma nova propriedade do sistema com os seguintes valores:
   + **Nome**: `glide.oauth.inbound.client.credential.grant_type.enabled`
   + **Tipo**: `true | false`
   + **Value** (valor): `true`

## Etapa 2: criar uma conta de serviço dedicada
<a name="kb-managed-servicenow-oauth2-step2"></a>

1. Navegue até ** Administração de ** usuários ** > Usuários**.

1. Escolha ** Novo ** e preencha o formulário:
   + **ID de usuário ** — Um nome descritivo (por exemplo,`svc.amazon.quick.kb`).
   + **Somente acesso ao serviço Web ** — Marcado. Isso evita o login interativo.
   + **Senha ** — Defina uma senha forte. O conector usa OAuth, mas é necessária uma senha para a criação da conta.

1. Selecione **Enviar**.

## Etapa 3: atribuir funções de conta de serviço
<a name="kb-managed-servicenow-oauth2-step3"></a>

1. Abra a conta de serviço (**Administração de ** usuários ** > Usuários ** > sua conta de serviço).

1. **Na guia ** Funções, escolha ** Editar ** e adicione as seguintes funções:
   + `knowledge_admin`— Acesso completo de leitura a todos os artigos da base de conhecimento. Ignora as restrições de critérios de usuário por KB.
   + `catalog_admin`— Acesso total de leitura a todos os itens do catálogo de serviços. Ignora as restrições por catálogo.

1. Escolha **Salvar**.

**nota**  
Depois de salvar, você vê aproximadamente 14 funções no total. ServiceNowherda automaticamente as funções contidas das funções principais`_admin`. Você só atribui manualmente as duas funções listadas na etapa 2 (`knowledge_admin`e`catalog_admin`). Não atribua as `snc_read_only` funções `admin``itil`,, ou.

## Etapa 4: Registrar o aplicativo OAuth
<a name="kb-managed-servicenow-oauth2-step4"></a>

1. Navegue até ** System OAuth ** > ** Application Registry. **

1. Escolha ** Novo ** > ** Criar um endpoint da API OAuth para clientes externos. **

1. Preencha o formulário:
   + **Nome ** — Um nome descritivo (por exemplo,`Amazon-Quick-KB-Client`).
   + **URL de redirecionamento ** — Deixe em branco. Não é necessário para o fluxo de credenciais do cliente.

1. Selecione **Enviar**.

1. Copie imediatamente o ID ** do cliente ** e ** o segredo do cliente**. O segredo do cliente é exibido apenas uma vez.

**Importante**  
Você deve usar a página do interceptor para criar o aplicativo. Não crie o registro inserindo-o diretamente na `oauth_entity` tabela.

## Etapa 5: configurar o aplicativo OAuth
<a name="kb-managed-servicenow-oauth2-step5"></a>

1. Re-open o registro do aplicativo na lista do Registro de Aplicativos.

1. Se o ** campo Usuário do aplicativo ** OAuth não estiver visível, adicione-o usando ** Configurar ** > Construtor de ** formulários. **

1. Defina os seguintes campos:
   + **Usuário do aplicativo OAuth ** — Sua conta de serviço (por exemplo,`svc.amazon.quick.kb`).
   + **Restrição de escopo ** —`Broadly scoped`.
   + **Tipo de cliente ** —`integration_as_a_service`.

1. Selecione **Atualizar**.

## Etapa 6: configurar políticas de acesso à API
<a name="kb-managed-servicenow-oauth2-step6"></a>

Sem políticas de acesso à API, os tokens são autenticados, mas a API de tabela retorna HTTP 401. Conclua as duas subetapas abaixo.

**Criar o perfil de autenticação de entrada**

1. Navegue até ** System Web Services ** > Políticas de acesso à ** API ** > Perfil ** de autenticação de ** entrada.

1. Escolha ** Novo ** e defina:
   + **Nome ** — Por exemplo,`Amazon-Quick-KB-Client-Profile`.
   + **Digite** – `OAuth`.
   + **Entidade OAuth ** — Selecione seu aplicativo OAuth.

1. Selecione **Enviar**.

1. Re-open o perfil. Na lista ** relacionada Políticas de ** autenticação, escolha ** Editar ** e adicione ** Permitir política de acesso**. Escolha **Salvar**.

**Crie a política de acesso à API REST**

1. Navegue até ** System Web Services ** > Políticas de acesso à ** API ** > Políticas de acesso à API ** REST**.

1. Escolha ** Novo ** e defina:
   + **Nome ** — Por exemplo,`Table API Oauth access policy`.
   + **API REST ** —`Table API`.
   + **Caminho da API REST ** —`now/table`.
   + **Aplicar a todos os métodos ** — Marcado.
   + **Aplicar a todos os recursos ** — Marcado.
   + **Aplicar a todas as tabelas ** — Marcado.
   + **Aplicar a todas as versões ** — Marcado.

1. Selecione **Enviar**.

1. Re-open a política. Na lista ** relacionada de perfis de autenticação de ** entrada, escolha ** Editar ** e adicione seu perfil de autenticação de entrada. Escolha **Salvar**.

## Etapa 7: Verificar o fluxo do OAuth
<a name="kb-managed-servicenow-oauth2-step7"></a>

Antes de configurar a fonte de dados, verifique se o fluxo do OAuth funciona de ponta a ponta.

**Solicite um token: **

```
curl -s -X POST "https://{{INSTANCE}}.service-now.com/oauth_token.do" \
  -d "grant_type=client_credentials" \
  -d "client_id={{CLIENT_ID}}" \
  -d "client_secret={{CLIENT_SECRET}}"
```

**Verifique o acesso à API Table: **

```
curl -s "https://{{INSTANCE}}.service-now.com/api/now/table/kb_knowledge?sysparm_limit=1" \
  -H "Authorization: Bearer {{ACCESS_TOKEN}}"
```

A tabela a seguir descreve cada resultado da verificação e a ação a ser tomada.


**Resultados da verificação**  

| Resultado | Significado | Ação | 
| --- | --- | --- | 
| HTTP 200 com dados | Funcionando corretamente | Prossiga com a criação do segredo do Secrets Manager. | 
| HTTP 200 com matriz vazia | knowledge\_adminFunção ausente | Atribua a knowledge\_admin função à conta de serviço. | 
| HTTP: 401 | Política de acesso à API não configurada | Verifique o perfil de autenticação de entrada e a configuração da política de acesso da API REST. | 

## Etapa 8: Crie o segredo do Secrets Manager
<a name="kb-managed-servicenow-oauth2-step8"></a>

Armazene as credenciais em um AWS Secrets Manager segredo da Região da AWS mesma forma que sua base de conhecimento com os seguintes pares de valores-chave:

```
{
    "clientId": "{{your-client-id}}",
    "clientSecret": "{{your-client-secret}}",
    "instanceUrl": "https://{{YOUR_INSTANCE}}.service-now.com"
}
```


**Campos secretos**  

| Campo | Description | 
| --- | --- | 
| clientId | O ID do cliente do aplicativo da etapa 4. | 
| clientSecret | O segredo do App Client revelado no momento da criação na etapa 4. | 
| instanceUrl | URL da ServiceNow instância completa (incluirhttps://, sem barra final). | 

**Importante**  
Eles não `instanceUrl` devem ter uma barra final.

Crie o segredo com AWS Command Line Interface:

```
aws secretsmanager create-secret \
  --name {{bedrock-servicenow-creds}} \
  --secret-string file://secret.json
```

Registre o ARN secreto da resposta. Você o usa como fonte de dados`secretArn`.

## Próximas etapas
<a name="kb-managed-servicenow-oauth2-next"></a>

Depois de armazenar o segredo, crie a fonte de dados. Consulte [Conectar uma fonte ServiceNow de dados](kb-managed-ds-servicenow-connect.md).