Pular para o conteúdo principal

Autenticação

A autenticação envolve a criação de um token de ID OpenID Connect assinado pelo Google. Para gerar o token, você precisa ter uma Conta de Serviço.

Aqui está um exemplo de como obter uma Conta de Serviço:

Através do frontend em https://app.santoid.com.br, navegue até o menu lateral "Identity" e depois "Service Accounts":

Figura 1: Abrir listagem de Contas de Serviço.

Figura 1: Abrir listagem de Contas de Serviço.

Após clicar em "+ Add" e criar uma nova Conta de Serviço, clique em download para obter o arquivo JSON account-data.json:

Figura 2: Baixar arquivo account-data.json.

Figura 2: Baixar arquivo account-data.json.

Nota: Tokens de ID são JSON Web Tokens (JWT) que expiram aproximadamente uma hora após a criação. Decodifique o token e verifique o tempo exp (unix epoch em segundos) para ver se precisa atualizá-lo.

Exemplo da estrutura do JWT decodificado

{
"iss": <string>,
"azp": <string>,
"aud": <string>,
"sub": <string>,
"hd": <string>,
"email": <string>,
"email_verified": <bool>,
"at_hash": <string>,
"iat": <int>,
"exp": <int>
}

Como decodificar o token

Via Shell

sudo apt install jq -y
jq -R 'split(".") | .[1] | @base64d | fromjson' <<< "<substitua pelo seu token aqui>"

Via Python (requer pacote PyJWT)

import jwt

decoded = jwt.decode(<token>, options={"verify_signature": False})
# exp é o tempo de expiração do token em inteiro no formato Unix Epoch
exp = decoded["exp"]

Gerando um JWT assinado e usando-o para requisições

Refresh Token

Requisição

info

Página para exemplos de requisições clique aqui.