Доступ через forward proxy
Помимо обращения к адресу шлюза (Прямой доступ к Gate API), StarGuard Gate может работать в режиме forward proxy. В этом режиме приложение продолжает обращаться к обычным адресам провайдеров — api.openai.com, api.anthropic.com и т.д. — и использует собственный ключ доступа к провайдеру, а шлюз перехватывает трафик и прозрачно применяет к нему проверки безопасности.
Такой режим удобен, когда менять базовый URL в приложении нельзя или нежелательно: достаточно указать прокси в переменных окружения.
Режим работы шлюза определяет администратор. Уточните у него, какой способ подключения используется в вашей организации.
1. Что нужно получить у администратора
-
Адрес и порт прокси — например,
gate.corp.example.com:8080. -
CA-сертификат перехвата в формате PEM — им шлюз подписывает перехваченные TLS-соединения.
-
Учётные данные, если на шлюзе включена авторизация: имя пользователя и токен.
2. Установка CA-сертификата
Чтобы приложение доверяло перехваченным соединениям, CA-сертификат необходимо добавить в хранилище доверенных корневых сертификатов.
-
Системное хранилище. Установите сертификат средствами операционной системы (в Linux — в каталог доверенных сертификатов дистрибутива с последующим обновлением хранилища; в Windows и macOS — через системный менеджер сертификатов).
-
Отдельные среды выполнения. Некоторые библиотеки используют собственное хранилище: для Python (
requests,httpx) укажите путь к PEM-файлу в переменнойSSL_CERT_FILEилиREQUESTS_CA_BUNDLE, для Node.js — вNODE_EXTRA_CA_CERTS.
Без установленного сертификата соединение будет прерываться ошибкой проверки TLS.
3. Настройка приложения
Укажите прокси в переменных окружения. Учётные данные передаются в адресе прокси:
export HTTPS_PROXY="http://<имя пользователя>:<токен>@gate.corp.example.com:8080"
export HTTP_PROXY="$HTTPS_PROXY"
Если авторизация на шлюзе не требуется, учётные данные опускаются:
export HTTPS_PROXY="http://gate.corp.example.com:8080"
Имя пользователя должно совпадать с вашим именем в платформе (тем же, что показано на верхней панели портала), а токен — это персональный токен из карточки «Персональный токен» на дашборде (Дашборд).
После этого приложение работает без изменений:
curl https://api.openai.com/v1/chat/completions \
-H "Authorization: Bearer <ваш ключ провайдера>" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"messages": [{"role": "user", "content": "Привет!"}]
}'
Официальные клиентские библиотеки OpenAI и Anthropic, а также большинство HTTP-клиентов, используют переменные HTTPS_PROXY и HTTP_PROXY.
|
Ключ провайдера остаётся вашим. Шлюз не подменяет заголовок |
4. Что делает шлюз с трафиком
-
Запросы к языковым моделям по адресам, которые администратор отметил как контролируемые, проходят полный конвейер проверок: детекторы, маскирование персональных данных, проверку ответа.
-
Заблокированный запрос возвращается приложению как обычный ответ модели, текст которого объясняет причину блокировки, — так же, как при прямом обращении к шлюзу (Прямой доступ к Gate API).
-
Обращения к прочим адресам передаются без изменений либо блокируются — в зависимости от политики, заданной администратором.
-
Загрузка файлов в хранилище провайдера (
POST /v1/files) по контролируемым адресам блокируется: содержимое такого файла шлюз проверить не может. Чтение уже загруженных файлов при этом не ограничивается.
5. Возможные ошибки
| Код | Причина | Действие |
|---|---|---|
|
Учётные данные не переданы, недействительны, истёк срок токена или имя пользователя не совпадает с именем в токене |
Обновите токен (повторный вход в портал) и проверьте имя пользователя в адресе прокси |
|
Учётные данные верны, но доступ к запрошенному адресу вам не разрешён; либо адрес не контролируется шлюзом при политике «Блокировать»; либо запрос отправлен по незашифрованному HTTP при включённой настройке «Только HTTPS» |
Обратитесь к администратору платформы |
|
Тело запроса превышает предельный размер |
Уменьшите объём запроса или вложений |
Ошибка проверки TLS-сертификата |
CA-сертификат перехвата не установлен в доверенные |
Выполните шаги раздела 7.2 |
|
Внимание. Если вы обращались к прокси по незашифрованному HTTP, ваш токен был передан по сети открытым текстом. Выполните повторный вход в портал, чтобы получить новый токен, и убедитесь, что приложение использует HTTPS. |