Docs
PlataformaAgentes

Identidade do agente

Os dois jeitos de um agente obter um token. A chave do agente para o modo headless, e o card Harness login para harnesses de código.

Um agente obtém um token Xokepoint em um de dois modos, e pode usar os dois (Agentes):

  • Headless: o agente roda como serviço, prova quem é com uma chave própria e troca o token da pessoa por um token Xokepoint. O card Key cuida disso.
  • Interativo: uma pessoa entra a partir de um harness de código, como o Claude Code, e consente. O agente não precisa de chave neste modo. O card Harness login cuida disso.

Os dois cards ficam na aba Identity do agente.

Aba Identity

Harness login

Card Harness login

O card Harness login é o segundo card da aba, abaixo da chave. Um harness de código faz o login de uma pessoa pelo navegador, e só os harnesses listados aqui podem entrar neste agente.

MCP URL for developers tem uma linha para cada server do agente, com botão de copiar. O ingress precisa do server, então cada server tem a sua URL: <origin>/api/v1/mcp/<workspace>/<ambiente>/<server_id>. Entregue essas URLs aos desenvolvedores (Conectar um harness de código). Antes de o agente ter tools publicadas, o card diz "Publish tools for this agent first. Then the MCP URL of each server appears here."

Allowed harnesses lista cada harness com o nome, lido do client metadata document dele, a URL e um botão de remover. Sem entrada, o card diz "No harness yet. Nobody can log in to this agent from a harness." Abaixo da lista, um botão para cada harness do catálogo que ainda não foi liberado. O catálogo tem Claude Code e Codex, os harnesses cujos fornecedores publicam um client metadata document.

O mesmo harness pode ser liberado em vários agentes, por exemplo "Claude Code — Developers" e "Claude Code — SRE", cada um com seus grupos e tools. A entrada então diz quais outros agentes o liberam. No login, uma pessoa elegível para mais de um deles escolhe um.

Another harness (client metadata URL), recolhido, adiciona um harness que não está no catálogo. Um harness se identifica com uma URL HTTPS pública, o seu client metadata document: um arquivo pequeno do fornecedor com o nome do harness e os endereços para onde ele volta depois do login. Peça essa URL ao fornecedor. O Xokepoint lê o documento no login, guarda em cache por no máximo 24 horas, e aceita só redirects loopback. Uma URL fora da lista é recusada no login.

Quem pode entrar é definido por provedor de identidade, no grafo do agente (Quem pode delegar). Quem está conectado fica na aba Harness sessions (Harness sessions).

Gerar a chave

A chave é do modo headless. Num agente sem chave, o card Key diz "No key yet. The agent can not get a token." e oferece Generate key and download. O que acontece:

  1. O navegador cria um par de chaves ECDSA P-256.
  2. O identificador da chave é o thumbprint da chave pública (RFC 7638), calculado no navegador. Ninguém digita.
  3. O Admin envia ao Xokepoint só a chave pública.
  4. O navegador baixa <agente>.chokepoint.json:
CampoConteúdo
client_idO ID do agente como cliente do authorization server
issuer, token_endpointOnde o agente faz o token exchange
kid, algO identificador da chave e o algoritmo (ES256)
private_keyA chave privada, em JWK

Uma faixa verde avisa que o arquivo é a única cópia da chave privada e que o Xokepoint não consegue mostrá-la de novo. Guarde como uma senha e entregue ao desenvolvedor por um canal seguro (Integrar o agente).

Com a chave criada, o bloco Key mostra Active key: o identificador, o algoritmo e "Created by {administrador} · {hora}".

Connection details e How the agent connects

Detalhes de conexão e passos do agente

Connection details traz Client ID, Issuer e Token endpoint, cada um com botão de copiar. São os mesmos valores do arquivo, para quem configura o agente à mão.

How the agent connects resume os três passos: a pessoa entra no provedor de identidade e o agente recebe o token dela; o agente troca esse token no Xokepoint, assinando com a chave privada; o agente chama as tools com o token Xokepoint, que vale 5 minutos. Uma troca recusada devolve invalid_client ou invalid_grant, e o motivo aparece no Investigate.

Use my own public key

Para equipes que guardam a chave privada num cofre e não querem que o Admin gere arquivo:

Usar chave pública própria

O campo Public key (JWK or PEM) recebe só a chave pública. Key ID (kid) é opcional; sem ele, o backend usa o kid do JWK e, se o JWK não tiver um, o thumbprint dele. O agente precisa enviar esse mesmo kid no header da client assertion. O campo recusa uma chave privada ("Paste only the public key") e formatos desconhecidos. Use this key registra.

Girar a chave

Rotate key pede confirmação antes de agir:

Confirmação de rotação de chave

O aviso diz: "The current key stops working now. Give the new file to the agent at once." Rotate and download gera o par novo e baixa o arquivo. A chave anterior para de funcionar na hora; tokens já emitidos continuam valendo até expirar, em no máximo 5 minutos.

Gire a chave quando o arquivo pode ter vazado, quando alguém com acesso a ele saiu da equipe ou quando o Investigate mostra trocas recusadas com invalid_client vindas de onde não deveriam.

Agente desativado

Com o agente desativado, a aba mostra "This agent is disabled. It gets no token, and its next call is rejected." Isso vale para os dois modos: sem troca, sem harness login e sem refresh. A chave e os harnesses liberados ficam guardados.