Рутокен KeyBox работает с базами данных Microsoft SQL, PostgreSQL и Postgres Pro. База данных создается вручную, а для ее наполнения используются скрипты, входящие в состав дистрибутива Rutoken KeyBox.
Microsoft SQL (версия 7.1)
Создание базы данных
Создайте базу данных в среде SQL Server Management Studio:
- В окне Обозреватель объектов (Object Explorer) нажмите правой кнопкой мыши на Базы данных (Databases).
- Выберите Создать базу данных... (New Database...).
- Укажите Имя базы данных: (Database name:) и нажмите OK.
Настройка сервисной учетной записи
Используйте локальную учетную запись SQL или учетную запись Active Directory и наделите ее необходимыми правами для работы с созданной базой данных. Эта учетная запись будет использоваться для выполнения операций чтения и записи в базу данных. Подключение к базе с использованием указанной учетной записи настраивается в Мастере настройки Rutoken KeyBox.
- Определите Имя для входа (Logins) для созданной базы.
- Нажмите Безопасность (Security)→Имя для входа (Logins), из списка выберите учетную запись.
- Перейдите на вкладку Сопоставление пользователей (User Mapping).
- Выдайте права на работу с базой для выбранного имени входа, укажите разрешения: db_owner и public и нажмите ОК.
Наполнение базы данных
Выберите в Обозревателе объектов (Object Explorer) созданную базу данных и выполните скрипт Storage.sql:
- Выберите меню Файл (File)→Открыть (Open)→Файл...(File...), укажите путь к файлу Storage.sql (\RutokenKeyBox.WindowsServer\Misc) и нажмите Открыть (Open).
- До запуска скрипта раскомментируйте: --USE[<database name>]--GO и укажите название базы данных, для которой применяется скрипт (RutokenKeyBox): --USE[RutokenKeyBox]--GO. Или выберите необходимую базу данных в выпадающем меню.
- Нажмите Выполнить (Execute).
PostgreSQL и Postgres Pro
Настройте базу данных одним из следующих способов:
- в графическом интерфейсе pgAdmin:
- с помощью командной строки psql.
В качестве примера для имени сервисной учетной записи в инструкциях используется servicepg, для имени базы данных — keyboxstorage.
pgAdmin
Создание сервисной учетной записи
Откройте pgAdmin, укажите мастер пароль и подключитесь к серверу.
В разделе Обозреватель (Browser) правой кнопкой мыши нажмите по пункту меню Роли входа/группы (Login/Group Roles)и выберите Создать → Роль входа/группы (Create → Login/Group Role…).
На вкладке Общие (General) укажите имя пользователя в поле Имя (Name).
Перейдите на вкладку Определение (Definition) и в поле Пароль (Password) укажите пароль пользователя. В поле Роль активна до (Account Expires) укажите значение No Expiry. При создании сервисной учетной записи требуется отключить срок действия пароля.
На вкладке Права (Privileges) включите параметр Вход разрешен? (Can Login?), оставьте остальные значения по умолчанию и нажмите Сохранить (Save).
Создание и наполнение базы данных
В окне Обозреватель (Browser) нажмите правой кнопкой мыши по пункту Базы данных (Databases) и выберите Создать (Create) → База данных...(Database...).
На вкладке Общие (General) укажите название базы данных в поле База данных (Database), в списке Владелец (Owner) выберите пользователя (сервисную учетную запись) и нажмите Сохранить (Save).
- Нажмите Инструменты (Tools) → Запросник (Query Tool).
- В меню запросника нажмите и укажите путь к файлу Storage-Postgre.sql (\RutokenKeyBox.Server\Misc). Нажмите Выбрать (Select).
Выберите в Обозревателе (Browser) созданную базу данных и выполните скрипт Storage-Postgre.sql:
- Нажмите Выполнить (Execute/Refresh).
Предоставьте сервисной учетной записи привилегии на таблицы базы данных:
В меню запросника нажмите и выберите Clear Query, чтобы очистить поле запроса к базе данных.
Введите текст запроса, указав в запросе имя сервисной учетной записи:
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO servicepg;Нажмите Выполнить (Execute/Refresh) .
Командная строка psql
Запустите командную строку от имени администратора.
Подключитесь к серверу PostgreSQL от имени пользователя postgres:
sudo -u postgres psql
Создайте сервисную учетную запись и установите пароль:
CREATE USER servicepg WITH PASSWORD 'password';
Создайте базу данных и назначьте сервисную учетную запись ее владельцем:
CREATE DATABASE keyboxstorage OWNER servicepg;
Подключитесь к созданной базе данных:
\c keyboxstorage
Наполните базу данных с помощью скрипта Storage-Postgre.sql. Файл скрипта находится в каталоге Misc дистрибутива KeyBox.
\i KeyBox.Linux-<номер версии>\KeyBox.LinuxServer-<номер версии>\Misc\Storage-Postgre.sql
Предоставьте сервисной учетной записи доступ к базе данных:
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO servicepg;
Удаленное подключение к базе данных
Откройте конфигурационный файл pg_hba.conf.
Добавьте строку следующего формата:
CONNECTIONTYPE DATABASE USER ADDRESS METHOD
Где:
CONNECTIONTYPE— тип подключения. Укажитеhost, чтобы использовать подключение по TCP/IP,DATABASE— имя базы данных, для которой предоставляется доступ,USER— имя пользователя, для которого будет доступно подключение,ADDRESS— IP-адрес удаленного сервера RutokenKeyBox,METHOD— метод аутентификации пользователя.
host KeyBoxStorage servicepg 192.200.1.0/24 md5



