docs: align agent auth model and fix session test

This commit is contained in:
a.tolmachev
2026-05-03 10:38:12 +00:00
parent bf270336d9
commit 2d43db69c9
15 changed files with 578 additions and 61 deletions
+55 -6
View File
@@ -46,7 +46,7 @@
- `OperationVersion`
- `AuthProfile`
- `Agent`
- `PlatformApiKey`
- `AgentKey`
- `InvocationLog`
- `UsageRollup`
@@ -81,6 +81,22 @@
в рамках одной общей модели runtime и MCP publishing.
### 2.9. Уровень защиты задается операцией
Обязательная политика машинного доступа задается на уровне `Operation`, а не на уровне `Agent`.
Допустимые значения:
- `standard`
- `elevated`
- `strict`
Принцип:
- если операция требует более строгий режим доступа, агент не может его ослабить;
- один агент может публиковать операции с разной критичностью данных;
- `mcp-server` сравнивает тип представленного credential с требуемым `security_level`.
## 3. Корневые сущности
### 3.1. `Workspace`
@@ -119,6 +135,7 @@
- `input_mapping`
- `output_mapping`
- `execution_config`
- `security_level`
- `tool_description`
- `samples`
- `generated_draft`
@@ -224,27 +241,59 @@
- config ссылается на `secret_id` или пару `secret_id`, если auth-схема составная;
- runtime применяет profile к запросу только в момент вызова upstream.
### 3.9. `PlatformApiKey`
### 3.9. `AgentKey`
Отдельная сущность для доступа к самой платформе.
Отдельная сущность для машинного доступа к инструментам одного конкретного AI-агента.
Поля:
- `id`
- `workspace_id`
- `agent_id`
- `name`
- `prefix`
- `scopes`
- `status`
- `created_at`
- `last_used_at`
- `expires_at`
Секрет:
- полный secret показывается только один раз при создании;
- в persistent storage сохраняется только `secret_hash`.
- полное значение ключа показывается только один раз при создании;
- в persistent storage сохраняется только `secret_hash`;
- ключ не должен использоваться как основной рабочий токен вызова в целевой защищенной модели;
- ключ используется для выпуска короткоживущего токена доступа.
### 3.10. `User`
### 3.10. `IssuedAgentToken`
Учет выданных машинных токенов для вызова MCP-инструментов.
Поля:
- `id`
- `workspace_id`
- `agent_id`
- `agent_key_id`
- `platform_client_id`
- `token_kind`
- `status`
- `scopes`
- `max_uses`
- `used_count`
- `cnf_jkt`
- `expires_at`
- `created_at`
- `used_at`
Принцип:
- токен живет ограниченное время;
- токен может быть одноразовым;
- токен может быть привязан к ключевой паре клиента;
- токен выражает более узкие права, чем длинноживущий ключ агента.
### 3.11. `User`
Поля: