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 запрещает хранилища ключей). Но вы можете использовать хранилище ключей, если размещаете у себя хостинг.