SSL сертификат

Если вы хотите подключить свой экземпляр GlarusBI Cloud или собственный экземпляр к базе данных, вы можете защитить соединение, используя шифрование Secure Socket Layer (SSL) с сертификатом.

Почему это стоит сделать:

  • Вы используете GlarusBI Cloud и хотите удостовериться в подлинности хранилища данных, к которому вы подключаетесь (например, PostgreSQL, MySQL).

  • Вы самостоятельно размещаете GlarusBI и хотите удостовериться в подлинности хранилища данных, размещенного у внешнего поставщика. Вы также можете использовать этот метод, чтобы убедиться, что вы используете самые строгие параметры подключения при подключении к базе данных приложения.

Если вы используете GlarusBI Cloud, база данных приложения поддерживается за вас, поэтому вам нужно будет только защитить подключения к хранилищам данных, которые вы добавляете в свою GlarusBI.

Предпосылки

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

Шаг 1: Скачайте корневой сертификат у вашего провайдера

Если вы используете GlarusBI через контейнер Docker, у вас уже должны быть сертификаты для AWS и Azure.

Вы найдете сертификаты в каталоге /app/certs/ в образе Docker GlarusBI:

  • AWS RDS: /app/certs/rds-combined-ca-bundle.pem

  • Сертификат Azure: /app/certs/DigiCertGlobalRootG2.crt.pem

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

Шаг 2: Сохраните сертификат

Собственный хостинг

Сохраните загруженный сертификат в том же каталоге, где хранится файл glarusBI.jar. Технически вы можете хранить сертификат где угодно, но рекомендуется хранить его в том же каталоге, что и ваш файл glarusBI.jar. Путь к сертификату указывается в строке подключения.

Облако GlarusBI

Сначала вам необходимо выполнить Шаг 3: Добавьте базу данных.

Сделав это, вы можете перейти в Администрирование > Базы данных и выбрать свою базу данных. Найдите раздел Сертификат клиента SSL и нажмите Выберите файл, чтобы загрузить загруженный сертификат.

Шаг 3: Добавьте базу данных

Например, допустим, вы хотите защитить соединение с базой данных PostgreSQL. Следуйте инструкциям в приложении, чтобы добавить базу данных. Чтобы узнать больше о настройке подключения к базе данных, ознакомьтесь с нашей документацией по добавлению базы данных.

Шаг 4. Включите параметр «Использовать безопасное соединение (SSL)».

Если ваша база данных поддерживает подключение JDBC, GlarusBI предоставит вам поле для ввода дополнительных параметров в строку подключения. GlarusBI будет использовать параметры в строке подключения для установки безопасного соединения.

Шаг 5. Добавьте дополнительные параметры строки подключения

Вам нужно будет указать расположение сертификата на сервере, на котором работает GlarusBI.

Например, при подключении к базе данных PostgreSQL вам потребуется добавить два параметра:

  • sslmode. Вы можете увидеть полный список параметров в документации PostgreSQL. Мы рекомендуем вам использовать verify-full; это наиболее безопасно, а накладные расходы минимальны.

  • sslrootcert. Здесь вы укажете путь к файлу сертификата.

Необходимо добавить амперсанд (&) для разделения каждого параметра. Например, в поле Добавить дополнительные параметры строки подключения вы должны добавить что-то вроде:

sslmode=verify-full&sslrootcert=/path/to/certificate.pem

Замените /path/to/certificate.pem на полный путь к сертификату, который вы скачали у своего провайдера. Вы можете узнать больше о поддержке SSL для PostgreSQL.

Защита подключения к базе данных приложения с помощью переменных окружения

Если вы самостоятельно размещаете GlarusBI, вы можете защитить соединение с базой данных вашего приложения, используя переменные среды.

Используемая переменная среды: MB_DB_CONNECTION_URI.

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

jdbc:postgresql://db.example.com:port/mydb?user=dbuser&password=dbpassword&ssl=true&sslmode=verify-full&sslrootcert=/path/to/certificate.pem

Хранилище доверенных сертификатов и хранилище ключей

С некоторыми базами данных, такими как PostgreSQL и Oracle, вы можете защищать соединения, используя хранилища доверенных сертификатов и хранилища ключей.

Трастовые хранилища

Если для проверки учетных данных предоставляется хранилище доверенных сертификатов, клиент (ваша GlarusBI) может аутентифицировать сервер (базу данных) и убедиться, что его личность соответствует ожиданиям.

Хранилища ключей

Если хранилище ключей используется для предоставления учетных данных, то сервер (базы данных) может запросить у клиента (вашей GlarusBI) аутентификацию с использованием этого хранилища ключей. Хранилища ключей используются реже, а в некоторых случаях использовать хранилища ключей невозможно (например, Amazon RDS запрещает хранилища ключей). Но вы можете использовать хранилище ключей, если размещаете у себя хостинг.