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
+20 -7
View File
@@ -98,16 +98,29 @@
## 7.1. MCP authentication
`mcp-server` использует workspace-scoped `platform API keys` как machine credentials.
Целевая модель машинной аутентификации для `mcp-server` строится вокруг AI-агента, а не вокруг рабочей области целиком. При этом допустимый способ вызова определяется не только агентом, но и уровнем защиты самой операции.
Контракт:
- клиент передает `Authorization: Bearer crk_...`;
- ключ должен принадлежать workspace из path;
- `read` разрешает `initialize`, `notifications/initialized`, `ping`, `tools/list`;
- `write` разрешает `tools/call`;
- `deploy` сейчас включает те же MCP права, что и `write`, и зарезервирован для deploy-scoped automation;
- успешная аутентификация обновляет `platform_api_keys.last_used_at`.
- каждому published agent соответствует собственный длинноживущий `agent key`;
- `agent key` принадлежит одновременно `workspace` и `agent`;
- в редакции `Community` вызовы допускаются по статическому `agent key`;
- в управляемой платформе для операций уровня `elevated` должен использоваться короткоживущий токен;
- в редакции `Enterprise` для операций уровня `strict` должен использоваться одноразовый токен;
- операция задает обязательный `security_level`, и `mcp-server` обязан отклонять вызов, если представленный credential слабее требуемого уровня;
- детальная модель уровней зафиксирована в `docs/agent-auth-model.md`.
Уровни защиты операции:
- `standard`
- `elevated`
- `strict`
Правило применения:
- `standard` допускает статический ключ агента, короткоживущий токен и одноразовый токен;
- `elevated` допускает короткоживущий токен и одноразовый токен;
- `strict` допускает только одноразовый токен.
## 8. MCP lifecycle