docs: align agent auth model and fix session test
This commit is contained in:
+34
-15
@@ -2,7 +2,7 @@
|
||||
|
||||
## 1. Назначение документа
|
||||
|
||||
Этот документ фиксирует целевые HTTP-контракты административного API, через которое UI управляет workspace, operations, agents, platform access и observability.
|
||||
Этот документ фиксирует целевые HTTP-контракты административного API, через которое UI управляет workspace, operations, agents, machine access и observability.
|
||||
|
||||
Для потоковой модели детальные HTTP DTO вынесены отдельно в:
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
- `secrets`
|
||||
- `auth-profiles`
|
||||
- `agents`
|
||||
- `platform-api-keys`
|
||||
- `agent-keys`
|
||||
- `logs`
|
||||
- `usage`
|
||||
- `samples`
|
||||
@@ -110,6 +110,12 @@
|
||||
- `GET /api/admin/workspaces/{workspace_id}/operations/{operation_id}/export`
|
||||
- `POST /api/admin/workspaces/{workspace_id}/operations/import`
|
||||
|
||||
Контракт дополнительно включает:
|
||||
|
||||
- у операции задается обязательный `security_level`;
|
||||
- допустимые значения: `standard`, `elevated`, `strict`;
|
||||
- этот параметр определяет минимально допустимый режим машинного доступа при вызове через MCP.
|
||||
|
||||
### 5.4. Samples and descriptors
|
||||
|
||||
- `POST /api/admin/workspaces/{workspace_id}/operations/{operation_id}/samples/input-json`
|
||||
@@ -169,20 +175,32 @@
|
||||
- `POST /api/admin/workspaces/{workspace_id}/agents/{agent_id}/archive`
|
||||
- `POST /api/admin/workspaces/{workspace_id}/agents/{agent_id}/bindings`
|
||||
- `DELETE /api/admin/workspaces/{workspace_id}/agents/{agent_id}/bindings/{operation_id}`
|
||||
|
||||
### 5.7. Platform API keys
|
||||
|
||||
- `GET /api/admin/workspaces/{workspace_id}/platform-api-keys`
|
||||
- `POST /api/admin/workspaces/{workspace_id}/platform-api-keys`
|
||||
- `POST /api/admin/workspaces/{workspace_id}/platform-api-keys/{key_id}/revoke`
|
||||
- `DELETE /api/admin/workspaces/{workspace_id}/platform-api-keys/{key_id}`
|
||||
- `GET /api/admin/workspaces/{workspace_id}/agents/{agent_id}/keys`
|
||||
- `POST /api/admin/workspaces/{workspace_id}/agents/{agent_id}/keys`
|
||||
- `POST /api/admin/workspaces/{workspace_id}/agents/{agent_id}/keys/{key_id}/revoke`
|
||||
- `DELETE /api/admin/workspaces/{workspace_id}/agents/{agent_id}/keys/{key_id}`
|
||||
|
||||
Контракт:
|
||||
|
||||
- `POST /platform-api-keys` возвращает metadata ключа и одноразовый `secret`;
|
||||
- `secret` доступен только в create-response;
|
||||
- list endpoints возвращают только metadata, `prefix`, `status`, `scopes` и `last_used_at`.
|
||||
- `last_used_at` обновляется при успешной machine-auth аутентификации этим ключом в `mcp-server`.
|
||||
- `POST /agents/{agent_id}/keys` возвращает metadata ключа и одноразовый `secret`;
|
||||
- полное значение ключа доступно только в create-response;
|
||||
- list endpoints возвращают только metadata, `prefix`, `status`, `scopes`, `expires_at` и `last_used_at`;
|
||||
- ключ агента принадлежит одному `agent` и не должен использоваться как основной рабочий токен вызова в целевой защищенной схеме;
|
||||
- ключ агента используется для получения короткоживущего токена доступа к MCP endpoint.
|
||||
|
||||
### 5.7. Token issuance
|
||||
|
||||
Для расширенных редакций платформы:
|
||||
|
||||
- `POST /mcp-auth/v1/token`
|
||||
- `POST /mcp-auth/v1/token/one-time`
|
||||
|
||||
Контракт:
|
||||
|
||||
- `POST /mcp-auth/v1/token` выдает короткоживущий токен доступа для операций уровня `elevated`;
|
||||
- `POST /mcp-auth/v1/token/one-time` выдает одноразовый токен для операций уровня `strict`;
|
||||
- открытая редакция может не использовать эти конечные точки и работать только со статическим ключом агента;
|
||||
- детальная схема уровней и режимов доступа зафиксирована в `docs/agent-auth-model.md`.
|
||||
|
||||
### 5.8. Observability
|
||||
|
||||
@@ -245,8 +263,9 @@
|
||||
|
||||
Нужны:
|
||||
|
||||
- list/create/revoke/delete platform API keys;
|
||||
- one-time reveal значения ключа при создании.
|
||||
- list/create/revoke/delete agent keys;
|
||||
- one-time reveal значения ключа при создании;
|
||||
- для расширенных редакций — выдача короткоживущих и одноразовых токенов.
|
||||
|
||||
### Secrets
|
||||
|
||||
|
||||
Reference in New Issue
Block a user