Page tree

Rutoken KeyBox работает с базами данных Microsoft SQL, PostgreSQL и Postgres Pro. База данных создается вручную, а для ее наполнения используются скрипты, входящие в состав дистрибутива Rutoken KeyBox.

Microsoft SQL 

Создание базы данных

Создайте базу данных в среде SQL Server Management Studio:

  1. В окне Обозреватель объектов (Object Explorer) нажмите правой кнопкой мыши на Базы данных (Databases).
  2. Выберите Создать базу данных... (New Database...).
  3. Укажите Имя базы данных: (Database name:) и нажмите OK.

Настройка сервисной учетной записи

Используйте локальную учетную запись SQL или учетную запись Active Directory и наделите ее необходимыми правами для работы с созданной базой данных. Эта учетная запись будет использоваться для выполнения операций чтения и записи в базу данных. Подключение к базе с использованием указанной учетной записи настраивается в Мастере настройки Rutoken KeyBox.

  1. Определите Имя для входа (Logins) для созданной базы.
  2. Нажмите Безопасность (Security)→Имя для входа (Logins), из списка выберите учетную запись.
  3. Перейдите на вкладку Сопоставление пользователей (User Mapping).
  4. Выдайте права на работу с базой для выбранного имени входа, укажите разрешения: db_owner и public и нажмите ОК.

Наполнение базы данных

Выберите в Обозревателе объектов (Object Explorer) созданную базу данных и выполните скрипт Storage.sql:

  1. Выберите меню Файл (File)→Открыть (Open)→Файл...(File...), укажите путь к файлу Storage.sql (\RutokenKeyBox.WindowsServer\Misc) и нажмите Открыть (Open).
  2. До запуска скрипта раскомментируйте: --USE[<database name>]--GO и укажите название базы данных, для которой применяется скрипт (RutokenKeyBox): --USE[RutokenKeyBox]--GO. Или выберите необходимую базу данных в выпадающем меню.
  3. Нажмите Выполнить (Execute).

PostgreSQL и Postgres Pro

Настройте базу данных одним из следующих способов:

  • в графическом интерфейсе pgAdmin:
  • с помощью командной строки psql.

В качестве примера для имени сервисной учетной записи в инструкциях используется servicepg, для имени базы данных — keyboxstorage.

pgAdmin

Создание сервисной учетной записи

  1. Откройте pgAdmin, укажите мастер пароль и подключитесь к серверу.

  2. В разделе Обозреватель (Browser) правой кнопкой мыши нажмите по пункту меню Роли входа/группы (Login/Group Roles)и выберите Создать  Роль входа/группы (Create → Login/Group Role…).

  3. На вкладке Общие (General) укажите имя пользователя в поле Имя (Name).

  4. Перейдите на вкладку Определение (Definition) и в поле Пароль (Password) укажите пароль пользователя. В поле Роль активна до (Account Expires) укажите значение No Expiry. При создании сервисной учетной записи требуется отключить срок действия пароля.

  5. На вкладке Права (Privileges) включите параметр Вход разрешен? (Can Login?), оставьте остальные значения по умолчанию и нажмите Сохранить (Save).

Создание и наполнение базы данных

  1. В окне Обозреватель (Browser) нажмите правой кнопкой мыши по пункту Базы данных (Databases) и выберите Создать (Create) → База данных...(Database...).

  2. На вкладке Общие (General) укажите название базы данных в поле База данных (Database), в списке Владелец (Owner) выберите пользователя (сервисную учетную запись) и нажмите Сохранить (Save).

    1. Нажмите Инструменты (Tools) → Запросник (Query Tool).
    2. В меню запросника нажмите  и укажите путь к файлу Storage-Postgre.sql (\RutokenKeyBox.Server\Misc). Нажмите Выбрать (Select).

      Выберите в Обозревателе (Browser) созданную базу данных и выполните скрипт Storage-Postgre.sql:

    1. Нажмите Выполнить (Execute/Refresh).
  3. Предоставьте сервисной учетной записи привилегии на таблицы базы данных:

    1. В меню запросника нажмите  и выберите Clear Query, чтобы очистить поле запроса к базе данных.


    2. Введите текст запроса, указав в запросе имя сервисной учетной записи:

      GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO servicepg;
    3. Нажмите Выполнить (Execute/Refresh) .

Командная строка psql

  1. Запустите командную строку от имени администратора.

  2. Подключитесь к серверу PostgreSQL от имени пользователя postgres:

    sudo -u postgres psql
  3. Создайте сервисную учетную запись и установите пароль:

    CREATE USER servicepg WITH PASSWORD 'password';
  4. Создайте базу данных и назначьте сервисную учетную запись ее владельцем:

    CREATE DATABASE keyboxstorage OWNER servicepg;
  5. Подключитесь к созданной базе данных:

    \c keyboxstorage  
  6. Наполните базу данных с помощью скрипта Storage-Postgre.sql. Файл скрипта находится в каталоге Misc дистрибутива KeyBox.

    \i KeyBox.Linux-<номер версии>\KeyBox.LinuxServer-<номер версии>\Misc\Storage-Postgre.sql
  7. Предоставьте сервисной учетной записи доступ к базе данных:

    GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO servicepg;

Удаленное подключение к базе данных

Откройте конфигурационный файл pg_hba.conf.

PostgreSQL

ОС Windows: C:\Program Files\PostgreSQL\<номер версии>\data
ОС Linux: /etc/postgresql/<номер версии>/main

Postgres Pro

ОС Linux: /var/lib/pgpro/<номер версии>/data

Добавьте строку следующего формата:

CONNECTIONTYPE DATABASE USER ADDRESS METHOD

Где:

  • CONNECTIONTYPE —  тип подключения. Укажите host, чтобы использовать подключение по TCP/IP,
  • DATABASE имя базы данных, для которой предоставляется доступ,
  • USER имя пользователя, для которого будет доступно подключение,
  • ADDRESS IP-адрес удаленного сервера RutokenKeyBox,
  • METHOD метод аутентификации пользователя.

Пример строки
host KeyBoxStorage servicepg 192.200.1.0/24 md5


  • No labels