Las 3 claves que necesitan la mayoría de los despliegues
Empieza aquí. Consulta el catálogo completo de permisos a continuación solo cuando necesites una clave con un ámbito más estrecho y personalizado. Ver también Distribución recomendada de claves y Crear claves.
Permisos
El servidor aplica un catálogo fijo de permisos; cada uno protege rutas HTTP específicas. Una clave admin los tiene todos; una clave con ámbito tiene el subconjunto que otorgues al crearla. Las cadenas de permisos desconocidas son rechazadas al crear una clave.Nota: Dos permisos válidos son exclusivos para humanos/dashboard y no pueden asignarse a una API key:orgs:admin(administración de la instancia, exclusiva para operadores) ykeys:update. Una solicitud aPOST /keysoPATCH /keys/:idque intente otorgar cualquiera de los dos es rechazada con HTTP 422. Consulta la filakeys:updatea continuación para entender por qué una clave bearer puede crear claves pero nunca editarlas.
Ingesta y consulta de eventos
Sesiones y evaluaciones
Dashboards
Consultas guardadas (compositor SQL)
Asistente de IA
API keys
Usuarios del dashboard
Estos permisos respaldan la página Users del dashboard, donde los ámbitos otorgados a cada miembro se muestran como chips:

Configuración operacional

Alertas e incidentes
Auditorías
Nota: Para dar a una clave acceso a la superficie de auditorías, otórgale audits:* explícitamente. Ver Notas de actualización y compatibilidad con versiones anteriores para saber cómo se migraron los titulares existentes cuando se lanzó Audits.
El endpoint del selector de destinatariosGET /alerts/recipients(que lista los emails de los miembros a los que puede notificar un editor de alertas) es accesible por un titular dealerts:readoalerts:write, de modo que los editores de alertas pueden llenar el selector sin necesitarusers:read.
Un visualizador de dashboards necesita tantodashboards:read(para cargar las vistas guardadas) comoevaluations:read(las métricas de salud se calculan a partir de datos de evaluaciones). Otorgadashboards:writepara que un usuario pueda crear o editar dashboards, ydashboards:deletepara eliminarlos.
/healthy/auth/*(solicitud OTP, verificación OTP, comprobación de sesión, cierre de sesión) no requieren autenticación por diseño; forman el flujo de inicio de sesión y la sonda de disponibilidad.GET /access-grantersrequiere una clave válida pero ningún permiso específico, por lo que cualquier usuario conectado puede ver qué administradores contactar sobre cambios de acceso.
Conjuntos de permisos
Los conjuntos de permisos te permiten aplicar un rol con nombre en lugar de seleccionar tokens individuales cada vez. En vez de elegir una docena de permisos uno por uno para cada nuevo usuario del dashboard o API key, eliges un conjunto, y todos los asignados a él llevan un otorgamiento consistente y revisable. Editar un conjunto personalizado vuelve a aplicar el nuevo otorgamiento a todos los usuarios ya asignados a él, de modo que un cambio de rol es una sola edición en lugar de recorrer cada miembro. Cada organización se inicializa con tres conjuntos integrados:
Los tres conjuntos integrados son inmutables; sus nombres siempre significan lo mismo, por lo que
read-only, standard y admin son seguros para referenciar en políticas e incorporaciones. Un operador puede crear conjuntos personalizados adicionales para modelar roles específicos de su organización (por ejemplo, un rol de “autor de dashboard” o un rol de “solo collector”).
Los conjuntos están disponibles en el dashboard y se gestionan a través de la API en GET /permission-sets (listar, protegido por users:read) y POST /permission-sets / PUT /permission-sets/:name / DELETE /permission-sets/:name (crear, editar, eliminar un conjunto personalizado, protegido por settings:write). Eliminar o editar un conjunto integrado está prohibido.
La pertenencia a conjuntos respalda otras dos funcionalidades:
DEFAULT_USER_PERMISSIONS(el otorgamiento preseleccionado cuando un admin abre + nuevo usuario) usa como valor predeterminado el conjuntostandard.- El flag
--setenagenteye-orgctl(gestión de miembros por el operador) inicia un miembro desde un conjunto con nombre, que luego puedes ajustar con--add/--remove.
Nota: Cuando un conjunto incluye un permiso que no se puede asignar a claves (por ejemplo, un conjunto personalizado que lleva keys:update), inicializar una clave desde ese conjunto descarta los tokens no asignables; de lo contrario el servidor rechazaría la clave con HTTP 422. Los usuarios del dashboard no están sujetos a esa restricción.
Clave Admin de Bootstrap
La clave admin es la credencial raíz única que permite a un operador poner en marcha el acceso desde cero: con ella puedes crear todas las demás claves con ámbito, invitar a los primeros usuarios del dashboard y configurar la instancia antes de que exista cualquier otra clave. Es la única clave que no se crea a través de la API de claves; se provisiona desde el entorno para que el servidor sea accesible en el primer arranque. Establece la variable de entornoADMIN_KEY en el servidor. En cada inicio, el servidor hace un upsert de este valor como clave admin con todos los permisos.
Para rotarla: cambia ADMIN_KEY por un nuevo secreto y reinicia el servidor.
Ámbito de organización
Las organizaciones se crean y gestionan fuera de banda por un operador, no a través de esta API de claves. El ciclo de vida de orgs y miembros (crear / renombrar / eliminar / purgar una org; agregar / actualizar / eliminar un miembro) se realiza con la CLIagenteye-orgctl; no existe una API HTTP ni un botón en el dashboard para ello. Lo que sí permanece igual: las API keys por organización se siguen creando en el dashboard (o mediante esta API de claves) por los miembros de la org.
En un despliegue multi-org, cada clave que crea un miembro de una org (a través de esta API de claves o la página Keys del dashboard) pertenece a una organización y solo puede leer o escribir los datos de esa org; la org queda estampada en la clave al crearla y se aplica en cada solicitud. Las dos claves de bootstrap son la única excepción: la clave admin (inicializada desde ADMIN_KEY) y la clave dashboard-assistant (inicializada desde AGENT_API_KEY) tienen ámbito de instancia (no llevan org). El dashboard se autentica con la clave admin para poder proxiar solicitudes por organización en nombre de los miembros conectados. Los despliegues de un solo tenant no necesitan preocuparse por esto; todas las claves pertenecen a la org default integrada.
Crear claves
Usa la clave admin (o cualquier clave con permisokeys:create) para crear claves adicionales con ámbito.
Clave de collector (solo ingesta)
Clave de dashboard (solo lectura)
key; elige un secreto robusto y guárdalo de forma segura. (El dashboard funciona al revés: genera un secreto robusto por ti y lo muestra una sola vez al crearlo; ver Gestión de claves en el dashboard.) La respuesta confirma que la clave fue creada:
Listar claves
Deshabilitar una clave
Deshabilitar revoca el acceso de inmediato sin eliminar el registro de la clave.Regenerar una clave
Genera un nuevo secreto para una clave existente. El secreto anterior se invalida de inmediato.Gestión de claves en el dashboard
La página Keys del dashboard proporciona una interfaz de usuario para todas las operaciones anteriores. Necesitas una clave con permisokeys:read para ver el listado, y keys:create / keys:update / keys:disable / keys:regenerate para las acciones de crear / editar / deshabilitar / regenerar respectivamente. Editar los permisos de una clave (keys:update) es independiente de crearla (keys:create), por lo que puedes otorgar a un operador la capacidad de crear claves sin la capacidad de cambiar el ámbito de las existentes, o viceversa. La clave admin cubre todas estas acciones.
Cuando creas una clave desde el dashboard no proporcionas el secreto; el dashboard genera un secreto robusto por ti y lo muestra una sola vez al crearlo. Cópialo de inmediato y guárdalo de forma segura; nunca se vuelve a mostrar, exactamente igual que con una regeneración. Puedes seguir seleccionando los permisos de la clave directamente, o inicializarlos desde un conjunto de permisos (ver más abajo).

Distribución recomendada de claves
Nota: La clave del asistente se inicializa automáticamente por el servidor desde la variable de entornoAGENT_API_KEY(el mismo secreto que el agente presenta comoAGENTEYE_API_KEY); no hay un paso manual de creación de clave ni se involucra la clave admin. Sus permisos están fijos en el código fuente para que el ámbito no pueda ampliarse por una mala configuración: lectura sobre eventos / evaluaciones / dashboards, más escritura de dashboards y lectura / escritura / ejecución de consultas para el flujo de autoría “Pídele a la IA que escriba una consulta”. Todo el SQL sigue pasando por el mismo rol de solo lectura y la misma ruta de SQL protegido que una consulta escrita por un usuario, por lo que esto amplía la superficie de autoría, no la superficie de datos; las operaciones destructivas (queries:delete,dashboards:delete) se excluyen deliberadamente de la clave del asistente. Al igual que la claveadmin, está protegida: no puede deshabilitarse ni regenerarse a través de la API de claves, solo rotarse cambiandoAGENT_API_KEYy reiniciando. Los usuarios del dashboard también necesitan el permisoagent:usepara ver y usar el asistente. Si habilitas la auto-instrumentación, dale al asistente una clave separada con soloevents:add.
Notas de actualización y compatibilidad con versiones anteriores
Solo necesitas estas notas si estás actualizando una instancia existente; los nuevos despliegues pueden omitirlas.Cuando se lanzó Audits, los titulares existentes fueron ampliados siguiendo las mismas formas de rol que las alertas: cada usuario y conjunto de permisos que teníaalerts:readobtuvoaudits:read, y cada titular dealerts:writeobtuvoaudits:write. Las API keys existentes no fueron ampliadas. Otorgaaudits:*a una clave explícitamente si necesita acceso a la superficie de auditorías.
Los otorgamientos almacenados del token heredadoalerts:ackse interpretan comoincidents:ackpara que los operadores de guardia conserven el acceso sin necesidad de regenerar claves. El token ya no se puede asignar desde el editor de usuarios del dashboard; la matriz ofreceincidents:acken su lugar.
Próximos pasos
- SDK de Python: cómo se autentica el código de tu agente al enviar eventos.
- Seguridad: cómo funcionan el inicio de sesión, el control de acceso y el aislamiento de datos por organización.

