exec обмежені середовищем пісочниці. Режим підвищених привілеїв дає агенту змогу вийти з неї та натомість виконувати команди поза пісочницею, із налаштовуваними шлюзами схвалення.
Режим підвищених привілеїв змінює поведінку лише тоді, коли агент працює в пісочниці. Для агентів поза пісочницею
exec уже виконується на хості.Директиви
Керуйте режимом підвищених привілеїв для кожного сеансу за допомогою команд із похилою рискою:
Також доступно як
/elev on|off|ask|full.
Надішліть /elevated без аргументу, щоб переглянути поточний рівень.
Як це працює
1
Перевірте доступність
Режим підвищених привілеїв має бути ввімкнений у конфігурації, а відправник — перебувати в списку дозволених:
2
Установіть рівень
Надішліть повідомлення лише з директивою, щоб установити типове значення для сеансу:Або використайте її безпосередньо в повідомленні (застосовується лише до цього повідомлення):
3
Команди виконуються поза пісочницею
Коли режим підвищених привілеїв активний, виклики
exec виходять із пісочниці. Ефективним хостом
типово є gateway, або node, коли налаштованою чи сеансовою ціллю виконання
exec є node. У режимі full схвалення exec пропускаються, якщо визначена політика
схвалення режиму/хоста виконання вже є повністю дозвільною (security full,
ask off); інакше звичайна політика схвалення все одно застосовується. У режимі
on/ask налаштовані правила схвалення застосовуються завжди.Порядок визначення
- Вбудована директива в повідомленні (застосовується лише до цього повідомлення)
- Перевизначення сеансу (установлюється надсиланням повідомлення лише з директивою)
- Глобальне типове значення (
agents.defaults.elevatedDefaultу конфігурації)
Доступність і списки дозволених
- Глобальний шлюз:
tools.elevated.enabled(має бутиtrue) - Список дозволених відправників:
tools.elevated.allowFromзі списками для кожного каналу - Шлюз для окремого агента:
agents.list[].tools.elevated.enabled(може лише додатково обмежувати; і глобальний шлюз, і шлюз окремого агента мають бутиtrue) - Список дозволених для окремого агента:
agents.list[].tools.elevated.allowFrom(відправник має відповідати як глобальному списку, так і списку окремого агента) - Резервний список дозволених від каналу: Plugin каналів можуть необов’язково надавати резервний список дозволених через адаптерний хук SDK, який використовується, коли
tools.elevated.allowFrom.<provider>не налаштовано. Наразі жоден вбудований канал не реалізує цей хук, тому на практиці сьогодні кожному постачальнику потрібен явний записtools.elevated.allowFrom.<provider>. - Усі шлюзи мають бути пройдені; інакше режим підвищених привілеїв вважається недоступним
Чим режим підвищених привілеїв не керує
- Політика інструментів: якщо
execзаборонено політикою інструментів, режим підвищених привілеїв не може її перевизначити. - Політика вибору хоста: режим підвищених привілеїв не перетворює
autoна вільне перевизначення між хостами. Він використовує налаштовані або сеансові правила цілі виконання, вибираючиnodeлише тоді, коли ціллю вже єnode. - Окремо від
/exec: директива/execкоригує типові значення виконання для сеансу (хост, безпека, запит схвалення, Node) для авторизованих відправників і не потребує режиму підвищених привілеїв.
Команда чату bash (префікс
!; псевдонім /bash) має окремий шлюз, який вимагає ввімкнення tools.elevated на додачу до власного прапорця tools.bash.enabled. Вимкнення режиму підвищених привілеїв також блокує команди оболонки !.Пов’язані матеріали
Інструмент Exec
Виконання команд оболонки агентом.
Схвалення Exec
Система схвалень і списків дозволених для
exec.Ізоляція в пісочниці
Конфігурація пісочниці на рівні Gateway.
Пісочниця, політика інструментів і режим підвищених привілеїв
Як ці три шлюзи поєднуються під час виклику інструмента.