Skip to content

072. Безопасность MCP: кто выдал агенту токен

September 30, 2026 · 59 min

Show notes

Одна из самых частых ошибок с MCP: один токен на всех агентов, без срока жизни и без проверок на бэкенде. По сути это admin-доступ, выданный модели, которая может ошибиться или выполнить чужую инструкцию.

В новом выпуске подкаста «AWS на русском» говорим с Виолой Лыковой (AWS Community Builder) о безопасности MCP-серверов и AI-агентов:

🔹 Почему MCP из слоя интеграции превращается в новую границу доступа, как только агент начинает вызывать тулы
🔹 Токены и scopes: отдельный ключ на каждого агента, TTL, почему токен не должен попадать в промпт
🔹 RBAC для агентов: у каждого свой ID, audit trail и цепочка approval (кто сделал, кто одобрил, когда)
🔹 Least privilege без wildcard, авторизация на уровне каждого тула, destructive actions только через human-in-the-loop
🔹 Prompt injection и tool poisoning: почему description тула уже часть поведения агента

💡 RBAC теперь нужен не только людям, но и агентам: у каждого агента свой ID, а в логах видно, какой агент что сделал, кто это одобрил (человек или другой агент) и когда.

💬 Как вы ограничиваете агентов у себя: отдельные токены, allow-list тулов или пока YOLO-режим?

#MCP #AIAgents #AISecurity #AWS #Подкаст #AWSнаРусском

Ссылки из выпуска
Статья Виолы про безопасность MCP-тулов на AWS: https://dev.to/aws-builders/how-to-secure-mcp-tools-on-aws-for-ai-agents-with-authentication-authorization-and-least-privilege-50ea
MCP Authorization (спецификация): https://modelcontextprotocol.io/specification/2025-11-25/basic/authorization
MCP Security Best Practices: https://modelcontextprotocol.io/specification/2025-11-25/basic/security_best_practices
Tool Poisoning Attacks (Invariant Labs): https://invariantlabs.ai/blog/mcp-security-notification-tool-poisoning-attacks
Amazon Bedrock Guardrails: https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-content-filters.html

Навигация (Podbean)
(0:00) Введение: тысячи MCP-серверов
(2:07) Что такое MCP и откуда вопрос security
(4:27) Кого ограничивать: MCP-сервер или агента
(7:02) Токены: отдельный ключ на клиента, TTL
(11:33) RBAC для агентов: сервисный аккаунт как в Kubernetes
(14:25) Remote MCP: Streamable HTTP и lifecycle
(18:25) Почему токен не должен попасть в промпт
(19:02) mcp.json, GitHub scopes и 401 для агента
(23:47) Кастомная авторизация: где начинается боль
(25:06) Больше чем RBAC: бэкенд и OAuth 2.1
(29:40) Guardrails в Bedrock против guardrails на бэкенде
(32:32) Identity агента и audit trail
(34:18) Prompt injection через фронтенд к базе
(39:03) Чек-лист для своего MCP-сервера
(40:12) Проверка агентов в CI/CD перед деплоем
(44:10) Отдельные scopes: analysis-агент и ops-агент
(45:38) Blast radius и авторизация на уровне тула
(47:20) Least privilege без wildcard
(49:01) Destructive actions и human-in-the-loop
(53:33) Prompt injection через источники, tool poisoning
(55:30) Tool description как часть поведения агента
(56:51) Итоги: без YOLO, детерминированные guardrails

Навигация (YouTube)
00:00:00 – Введение: тысячи MCP-серверов
00:02:07 – Что такое MCP и откуда вопрос security
00:04:27 – Кого ограничивать: MCP-сервер или агента
00:07:02 – Токены: отдельный ключ на клиента, TTL
00:11:33 – RBAC для агентов: сервисный аккаунт как в Kubernetes
00:14:25 – Remote MCP: Streamable HTTP и lifecycle
00:18:25 – Почему токен не должен попасть в промпт
00:19:02 – mcp.json, GitHub scopes и 401 для агента
00:23:47 – Кастомная авторизация: где начинается боль
00:25:06 – Больше чем RBAC: бэкенд и OAuth 2.1
00:29:40 – Guardrails в Bedrock против guardrails на бэкенде
00:32:32 – Identity агента и audit trail
00:34:18 – Prompt injection через фронтенд к базе
00:39:03 – Чек-лист для своего MCP-сервера
00:40:12 – Проверка агентов в CI/CD перед деплоем
00:44:10 – Отдельные scopes: analysis-агент и ops-агент
00:45:38 – Blast radius и авторизация на уровне тула
00:47:20 – Least privilege без wildcard
00:49:01 – Destructive actions и human-in-the-loop
00:53:33 – Prompt injection через источники, tool poisoning
00:55:30 – Tool description как часть поведения агента
00:56:51 – Итоги: без YOLO, детерминированные guardrails

YouTube: https://www.youtube.com/watch?v=VIDEO_ID&list=PLxtckYH8Cdy_WT5tcCITt_f61Zr2qQJbL
Podbean: https://awsinrussian.podbean.com/
Apple Podcast: https://podcasts.apple.com/by/podcast/aws-на-русском/id1600771698
Яндекс.Музыка: https://music.yandex.ru/album/20088544
Spotify: https://open.spotify.com/show/4kOoih4FvHqyK5mLF3E42J
RSS: https://feed.podbean.com/awsinrussian/feed.xml

All episodes of AWS на русском

Settings

Display

Language

Decides which stations you see first on the home page.

History

Recently played stations and episodes and your latest searches are only stored in this browser.

Notifications

A short notice when a podcast you follow has a new episode. Turn off single podcasts with the bell on their page.

Account

Save favorites – in the app and on the website.

Keyboard shortcuts

/
Open search
Space
Play or pause
← →
In the player: back 15 s, forward 30 s (episodes) · in a row: next tile
↑ ↓
In a row: target within the tile
Home / End
In a row: first or last tile
Esc
Close window or menu
?
This overview
Now playing

Go to station page

Play next

    Add episodes with “Play next” – they play after the current episode.