Уведомление о переводе ИИ

Эта документация была автоматически переведена ИИ.

Переменные и секреты

Variables and secretsCommunity Edition+

Введение

Централизованная настройка и управление переменными окружения и секретами для хранения конфиденциальных данных, повторного использования конфигурационных данных и изоляции конфигураций окружения.

Отличия от .env

ХарактеристикаФайл .envДинамически настраиваемые переменные и секреты
Место храненияХранятся в файле .env в корневом каталоге проектаХранятся в таблице environmentVariables базы данных
Метод загрузкиЗагружаются в process.env с помощью таких инструментов, как dotenv, при запуске приложенияДинамически считываются и загружаются в app.environment при запуске приложения
Метод измененияТребуется прямое редактирование файла, изменения вступают в силу только после перезапуска приложенияПоддерживается изменение во время выполнения, изменения вступают в силу сразу после перезагрузки конфигурации приложения
Изоляция окруженийКаждое окружение (разработка, тестирование, производство) требует отдельного обслуживания файлов .envКаждое окружение (разработка, тестирование, производство) требует отдельного обслуживания данных в таблице environmentVariables
Сценарии примененияПодходит для фиксированных статических конфигураций, например, для основной информации о базе данных приложенияПодходит для динамических конфигураций, требующих частых корректировок или связанных с бизнес-логикой, например, для информации о внешних базах данных, файловых хранилищах и т.д.

Установка

Это встроенный плагин, его не нужно устанавливать отдельно.

Использование

Повторное использование конфигурационных данных

Например, если в нескольких местах рабочего процесса требуются узлы электронной почты и настройка SMTP, общую конфигурацию SMTP можно сохранить в переменных окружения.

20250102181045

Хранение конфиденциальных данных

Здесь можно хранить конфигурационную информацию различных внешних баз данных, ключи облачных файловых хранилищ и другие подобные данные.

20250102103513

Изоляция конфигураций окружения

В различных окружениях, таких как разработка, тестирование и производство, используются независимые стратегии управления конфигурацией, чтобы настройки и данные каждого окружения не мешали друг другу. Каждое окружение имеет свои независимые настройки, переменные и ресурсы, что позволяет избежать конфликтов между окружениями разработки, тестирования и производства, а также гарантирует, что система работает должным образом в каждом из них.

Например, конфигурация для служб файлового хранилища может отличаться в окружениях разработки и производства, как показано ниже:

Окружение разработки

FILE_STORAGE_OSS_BASE_URL=dev-storage.nocobase.com
FILE_STORAGE_OSS_BUCKET=dev-storage

Рабочее окружение

FILE_STORAGE_OSS_BASE_URL=prod-storage.nocobase.com
FILE_STORAGE_OSS_BUCKET=prod-storage

Управление переменными окружения

20250102155314

Добавление переменных окружения

  • Поддерживается добавление по одной и пакетное добавление
  • Поддерживается хранение в открытом виде и в зашифрованном виде

20250102155509

Добавление по одной

20250102155731

Пакетное добавление

20250102155258

Примечания

Перезапуск приложения

После изменения или удаления переменных окружения вверху появится уведомление о необходимости перезапуска приложения. Изменения вступят в силу только после перезапуска.

20250102155007

Зашифрованное хранение

Зашифрованные данные переменных окружения используют симметричное шифрование AES. ЗАКРЫТЫЙ КЛЮЧ для шифрования и дешифрования хранится в каталоге storage. Пожалуйста, храните его в безопасности; в случае потери или перезаписи зашифрованные данные не могут быть расшифрованы.

./storage/environment-variables/<app-name>/aes_key.dat

Плагины, поддерживающие переменные окружения

Действие: Пользовательский запрос

20250102180751

Аутентификация: CAS

20250102160129

Аутентификация: DingTalk

20250102160205

Аутентификация: LDAP

20250102160312

Аутентификация: OIDC

20250102160426

Аутентификация: SAML

20250102160652

Аутентификация: WeCom

20250102160758

Источник данных: Внешняя MariaDB

20250102160935

Источник данных: Внешний MySQL

20250102173602

Источник данных: Внешний Oracle

20250102174153

Источник данных: Внешний PostgreSQL

20250102175630

Источник данных: Внешний SQL Server

20250102175814

Источник данных: KingbaseES

20250102175951

Источник данных: REST API

20250102180109

Файловое хранилище: Локальное

20250102161114

Файловое хранилище: Aliyun OSS

20250102161404

Файловое хранилище: Amazon S3

20250102163730

Файловое хранилище: Tencent COS

20250102173109

Файловое хранилище: S3 Pro

Не адаптировано

Карты: AMap

20250102163803

Карты: Google

20250102171524

Настройки электронной почты

Не адаптировано

Уведомления: Электронная почта

20250102164059

Публичные формы

20250102163849

Системные настройки

20250102164139

Верификация: Aliyun SMS

20250102164247

Верификация: Tencent SMS

20250102165814

Рабочий процесс

20250102180537