Crie o segredo do cliente JWT e a chave privada JWT

Use as informações neste tópico para criar um JWT do segredo do cliente e um JWT da chave privada para autenticação de cliente.

Reclamação de carga útil do portador de JWT

A carga útil do portador de JWT deve conter as seguintes reclamações:
Tabela 1. Reivindicações da MUST
Nome da reclamação Descrição Valores válidos
iss Identificador exclusivo para a entidade que emitiu o JWT O ID do cliente.
sub Identificador de assunto principal O ID do cliente.
aud O valor válido é o emissor do servidor de autorização, conforme publicado no endpoint conhecido (https://<tenantId>/oidc/endpoint/default/.well-known/openid-configuration). https://<tenantId>/oidc/endpoint/default
exp Tempo de expiração do JWT O número de segundos de 1970-01-01T0:0:0Z, conforme medido em UTC.
Observação: O prazo de validade do JWT não pode ser superior a 86.400 segundos no futuro.
jti Identificador JWT Uma sequência opaca gerado aleatoriamente.
A carga útil do portador do JWT pode conter as reclamações a seguir:
Tabela 2. Alegações da MAY
Nome da reclamação Descrição Valores válidos
nbf JWT não antes do tempo O número de segundos de 1970-01-01T0:0:0Z, conforme medido em UTC.
iat Horário de criação do JWT O número de segundos de 1970-01-01T0:0:0Z, conforme medido em UTC.
Observação: a data de criação do JWT não pode estar a mais de 86.400 segundos no passado.

Exemplo de carga útil do JWT

```
{
  "iss": "29e81c80-b507-463c-b542-5a1177b37808",
  "sub": "29e81c80-b507-463c-b542-5a1177b37808",
  "aud": "https://sometenant.ice.com/oidc/endpoint/default/token",
  "exp": 1324298520,
  "jti": "araiov8werli2awerlj"
}
```

Algoritmos suportados

Tabela 3. Algoritmos compatíveis
Objetivo Algoritmos suportados
O 'alg' do JWS para Assinatura 'RS256', 'RS384', 'RS512', 'HS256', 'HS384', 'HS512', 'PS256', 'PS384', 'PS512
O JWT deve ser assinado. Assegure-se de que qualquer chave que for usada para assinar o JWT seja publicada no jwks_uri. Se o jwks_uri não estiver disponível, inclua o certificado público no sistema. Consulte "Gerenciamento de certificados".

Assegure-se de que o JWT assinado inclua o cabeçalho `kid` para identificar exclusivamente a chave usada.

Exemplo de solicitação

Após o token JWT ser criado, uma solicitação poderá ser enviada para o terminal do token usando esse JWT como a asserção de cliente.
```
curl -ki https://<tenantId>/v1.0/endpoint/default/token
 -d "grant_type=password&client_id=87df91dc-63de-4765-8701-b59cc8bd9e11&scope=openid
&client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer
&client_assertion=eyJhbGci..."
```

O client_assertion_type deve ser sempre urn:ietf:params:oauth:client-assertion-type:jwt-bearer.