O id token é um JWT único a cada sessão e que contém informações de identidade do usuário.

O JSON referente à identidade do usuário é assinado pelo provedor de identidades do parceiro utilizando as chaves publica e privada implementadas no endpoint de JWKs criada tornando-se assim o JWT.

Para garantir a identidade do usuário, o id token deve ser construído seguindo um formato específico:

{
  "sub": "{cpf do usuario logado}",
  "jti": "e2e3b202-19e9-46dc-b061-c5f22eb34194",
  "name": "NOME DO USUARIO",
  "email": "[email protected]",
  "phone_number": "{telefone do usuario}", // ex:5511000000000
  "exp": 1706299657,
  "iss": "{base path do endpoint jwks}", //ex: https://id.sandbox.btgpactual.com/.well-known/jwks
  "aud": "btg:empresas:companies:{cnpj}"
}

Na sessão sobre SSO entraremos em detalhe quanto à construção deste JSON.