Skip to content

Deividgv/agentic-iam

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Agentic IAM - "O Okta dos Agentes"

Este é o MVP hiper-focado da nossa plataforma de governança para IA.

Como funciona?

Ele é dividido em duas partes:

  1. Backend (Control Plane): Onde os CISOs registram os agentes e definem as políticas de segurança. Ele emite um JWT de curta duração.
  2. Gateway (Data Plane): O "pedágio" que fica na frente da API de destino (ex: Stripe, OpenAI). Ele intercepta, valida o JWT, checa se a política permite acessar aquele endpoint, e então faz o proxy.

Como testar localmente:

1. Inicie o Control Plane

Abra um terminal:

cd backend
npm install
npx ts-node src/index.ts

(Deve rodar na porta 4000)

2. Inicie o Gateway (Pedágio de Segurança)

Abra outro terminal:

cd gateway
npm install
npx ts-node src/index.ts

(Deve rodar na porta 8000)

3. Simulando um fluxo (Usando cURL ou Postman)

Passo A: Registre um Agente de Vendas

curl -X POST http://localhost:4000/api/agents/register \
-H "Content-Type: application/json" \
-d '{"name": "Sales_Agent_01", "policy": {"allowed_endpoints": ["/v1/customers", "/v1/charges"], "max_daily_spend": 1000}}'

Guarde o agentId e o clientSecret retornados.

Passo B: O Agente solicita um Token (Auth)

curl -X POST http://localhost:4000/api/auth/token \
-H "Content-Type: application/json" \
-d '{"agentId": "COLE_O_ID_AQUI", "clientSecret": "COLE_O_SECRET_AQUI"}'

Copie o access_token (JWT).

Passo C: O Agente tenta acessar uma API através do nosso Gateway Se ele tentar acessar um endpoint permitido (ex: /v1/customers na API do Stripe):

curl -X GET http://localhost:8000/proxy/v1/customers \
-H "Authorization: Bearer COLE_O_TOKEN_AQUI" \
-H "x-target-url: https://api.stripe.com"

O gateway validará a política e, como é permitido, encaminhará o proxy.

Passo D: Tentativa Bloqueada (Segurança em Ação) Se o agente tentar acessar um banco de dados restrito:

curl -X GET http://localhost:8000/proxy/v1/disputas \
-H "Authorization: Bearer COLE_O_TOKEN_AQUI" \
-H "x-target-url: https://api.stripe.com"

Resultado: 403 Forbidden - Policy Violation: Endpoint not allowed for this agent.

Próximos Passos

  • Integrar com banco de dados real (PostgreSQL).
  • Criar o Painel Front-end em Next.js para o CISO gerenciar isso visualmente.
  • Criar a camada de log forense (Vault Incorruptível).

About

Secure, Agentic Identity and Access Management (IAM) platform with Next.js, Node.js, and Model Context Protocol (MCP) integrations.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors