> **Can't find what you're looking for?** Use `search_docs` on the docs MCP server at `https://naturgy-comer-documentation-p5mde.vercel.app/api/mcp` to find what you need.

# Autorización y acciones protegidas

TeLeo tiene una sesión de agente y una API M2M de integración. Son identidades
diferentes y deben aplicar permisos diferentes.

## Matriz de acciones

| Acción | Agente | Supervisor | Admin | Controles adicionales |
|---|:---:|:---:|:---:|---|
| Leer ticket propio | Sí | Sí | Sí | Filtrado por sesión y entorno. |
| Tomar ticket sin asignar | Sí | Sí | Sí | Operación atómica y capacidad disponible. |
| Leer abierto asignado a otro | Según política | Sí, según alcance | Sí, según alcance | Privacidad del ticket activo. |
| Responder públicamente | Sí, en alcance | Sí | Sí | Persistencia y webhook. |
| Añadir nota privada | Sí, en alcance | Sí | Sí | Nunca se entrega al cliente. |
| Aparcar, reabrir o cerrar | Según contrato | Sí | Sí | Registrar actor, estado y motivo. |
| Reasignar | Según permiso | Sí | Sí | Destino disponible y trazabilidad. |
| Gestionar equipos y tags | No | Según permiso | Sí | Clasificación, no ACL. |
| Gestionar usuarios y roles | No | No | Sí | Revocación y auditoría. |
| Llamar API M2M | No por ser agente | No por ser supervisor | No por ser admin | Solo servicios autorizados server-side. |

Esta tabla es una guía de diseño. La fuente de verdad es la política del tenant
y la respuesta server-side; un rol indicado en una cookie, UI o tag no basta.

## Reglas de mínimo privilegio

* Filtra tickets en la consulta, no solo en el renderizado.
* Verifica el rol actual antes de cada mutación sensible.
* Deniega si la identidad o el entorno no se pueden verificar.
* No reutilices la clave M2M de integración para una sesión de navegador.
* Audita asignación, cierre, notas, cambios de permisos y descargas.
* Redacta credenciales y PII de los logs.

## Separación de ámbitos

El permiso para atender un ticket no concede acceso directo a:

* ficha de Omega;
* Salesforce, Mulesoft o casos externos;
* runs o transcripts fuera del ticket;
* credenciales de HappyRobot o Twin;
* tickets de otro tenant o entorno.

Cada sistema debe aplicar su propia autorización. TeLeo puede mostrar un enlace a
Omega solo si existe un identificador autorizado; no debe inferirlo ni usar un
ticket como token.
