Token de API
Criar um token para scripts e agentes de IA
Quem pode criar um
Um token de longa duração permite que os scripts chamem a API sem a sua palavra-passe. A partir da 7.3.0 precisa da opção de função allowApiTokens:
roles:
- name: automation
groups:
- local/automation
options:
allowApiTokens: true
extendedTokenExpiration: true # also tokens that never expire
Até à 7.2.0, a opção era só extendedTokenExpiration. Uma função de antes da 7.3.0 que defina só essa opção recebe allowApiTokens, para manter os seus tokens; com ambas, também se pode criar um token que nunca expira. Ver Opções de função.
Criar um token
Novo token, na linha de título de Perfil > Tokens de API, abre um assistente em três passos:
- Detalhes: um nome, para reconhecer o token na lista, e durante quanto tempo se mantém válido. As opções são 30, 90, 180 ou 365 dias até
API_TOKEN_MAX_DAYS(90 por predefinição), esse próprio máximo, e Nunca expira comextendedTokenExpiration. Escolha o período mais curto de que o seu script precisa. - Confirmar: uma conta local ou LDAP introduz a sua palavra-passe, que não é guardada no token. Uma conta Microsoft Entra ID ou OIDC não tem aqui palavra-passe: o seu token é criado a partir da sua sessão, que tem de ter iniciado sessão no máximo 10 minutos antes, pelo que o fornecedor pode pedir-lhe primeiro que inicie sessão de novo.
- Copiar: o token, mostrado só uma vez. Copie-o com Copiar e guarde-o com o mesmo cuidado que uma palavra-passe.
Envie o token no cabeçalho Authorization de cada chamada à API:
curl -H "Authorization: Bearer $TOKEN" https://af.example.com/api/v2/job
Um token de API não pode criar outro. O token de uma conta SSO leva as funções do seu último início de sessão: uma mudança de grupo no fornecedor de identidade só lhe chega quando iniciar sessão de novo e criar um novo token.
Os seus tokens
Os tokens que criou são listados com o seu nome e quando cada um foi criado, expira e foi usado pela última vez; Revogar no menu de uma linha termina-o. Um administrador também os vê e revoga na sua página em Definições > Utilizadores. Um token termina na sua data de expiração, ou antes:
- uma revogação, a partir da lista;
- um fim de sessão com o token (
POST /api/v2/auth/logoutcom o token no cabeçalhoAuthorization), que o termina juntamente com a sessão em que foi criado; - uma alteração da palavra-passe, que termina todos os tokens e sessões da sua conta criados antes dela, e um bloqueio da sua conta.
Um token que nunca expira também termina nestes casos. Um script também pode pedir ele próprio um token através da API de início de sessão e do seu parâmetro expiryDays (POST /api/v2/auth/login?expiryDays=90, ou expiryDays=never); um expiryDays mais longo é reduzido a API_TOKEN_MAX_DAYS.