Env и конфиг

Секреты и переменные окружения для serverless-функций

Задавайте переменные окружения на функцию из тестовой панели («Настройки» → «Окружение») или через API: значения подставляются в контейнер при запуске, а похожие на секреты строки маскируются в логах и трассах. Это инструмент конфигурации функций, а не отдельный корпоративный менеджер секретов.

Дальше по теме

Начать бесплатно

Настроить, вызвать, прочитать из окружения

1

Задайте переменные окружения

В тестовой панели редактора откройте «Настройки» и разверните «Окружение» — или вызовите updateFunction с полем envVars. Значения хранятся в записи функции в базе приложения.

2

Вызовите функцию

При каждом вызове платформа объединяет переменные слоёв и функции и передаёт результат в среду выполнения.

3

Читайте в хендлере

Читайте значения через process.env, os.environ или os.Getenv — как в любом другом деплое. Не логируйте сырые учётные данные: маскирование помогает, но не заменяет полноценный менеджер секретов.

Чувствительные данные без хардкода в коде

Переменные на функцию

Настраивайте ключи и значения для каждой функции, не трогая код, а поля-пароли в UI снижают риск подглядывания при вводе.

Подстановка при запуске

Вызовы через шлюз, задачи и ручные запуски получают переменные окружения в контейнере по одному и тому же пути подстановки.

Маскирование в логах и трассах

Типичные шаблоны секретов — токены, пароли, API-ключи — маскируются в сохранённых логах и трассах везде, где отрабатывает маскирование.

Вместе с вашим пайплайном деплоя

Долгоживущие продакшен-учётные данные подставляйте из CI/CD или окружения хоста, чтобы поверхность базы данных оставалась минимальной, — переменные функции подходят для значений, которые вы готовы хранить в записи функции.

Переменные окружения и использование в функции

set-env.js
// Per-function env vars (Config → Environment in the editor, or API):
await api.updateFunction("function-id", {
  envVars: {
    OPENAI_API_KEY: "sk-...",
  },
});

// Values are stored on the function and injected into the container at invoke time
ai-summarizer/index.js
export async function handler(event, context) {
  // OPENAI_API_KEY comes from function env — avoid logging it
  const payload = typeof event.body === 'string' ? JSON.parse(event.body || '{}') : (event || {});
  const { prompt } = payload;
  const openai = new OpenAI({
    apiKey: process.env.OPENAI_API_KEY,
  });

  const completion = await openai.chat.completions.create({
    model: "gpt-4o-mini",
    messages: [{ role: "user", content: prompt }],
  });

  return {
    statusCode: 200,
    body: JSON.stringify({ result: completion.choices[0].message.content }),
  };
}

Начать бесплатно

Задеплойте первую функцию за несколько минут. Карта не нужна.

Начать бесплатно