Пример: файл конфигурации Microsoft Certificate Store

Приведен пример создания хранилища ключей сервера и корневого сертификата сервера для Rational DOORS, а также настройки Microsoft Certificate Store (MCS) для проверки сертификата сервера. После примера приведено описание команд и параметров.

Пример файла

REM Создание
файла хранилища ключей сервера
gsk8capicmd -keydb -create -db server.kdb -pw ser123 -stash

REM Создание корневого сертификата сервера в файле server.kdb и его добавление в MCS
gsk8capicmd -cert -create -db server.kdb -pw ser123 -label "IBMEDCA1" -dn "CN=IBMEDCA1"
gsk8capicmd -cert -extract -db server.kdb -pw ser123 -label "IBMEDCA1" -target temp1.arm
gsk8capicmd -cert -add -db GSK_MS_CERTIFICATE_STORE -label "IBMEDCA1" -file temp1.arm

REM Создание и подписание сертификата сервера
gsk8capicmd -certreq -create -db server.kdb -label IBMSV1 -dn "CN=IBMEDSERV,dc=ukednode1" -file temp2.arm
gsk8capicmd -cert -sign -db server.kdb -pw ser123 -label IBMEDCA1 -file temp2.arm -target temp3.arm
gsk8capicmd -cert -receive -file temp3.arm -db server.kdb -pw ser123

REM Извлечение корневого сертификата из MCS и его добавление в файл kdb сервера
gsk8capicmd -cert -extract -db GSK_MS_CERTIFICATE_STORE -label "CN=Coy Root" -target temp4.arm
gsk8capicmd -cert -add -db server.kdb -pw ser123 -label "CN=Coy Root" -file temp4.arm

Создание файла хранилища ключей сервера

gsk8capicmd -keydb -create -db server.kdb -pw ser123 -stash
gsk8capicmd -keydb -create
Команда gsk8capicmd предназначена для управления ключами, сертификатами и запросами сертификатов в базе данных ключей. Синтаксис команды gsk8capicmd: gsk8capicmd модификаторы объект действие опции. В этом примере -keydb - это объект базы данных ключей, -create - выполняемое действие, а -db - опция. Команда создает базу данных.
-db server.kdb -pw ser123
База данных ключей с именем server.kdb и паролем (-pwd). В этом примере применяется пароль ser123.
-stash
Шифрование пароля ключа базы данных после создания. Файл бумажника применяется в качестве автоматического способа предоставления пароля. При обращении к базе данных ключей система сначала проверяет существование файла бумажника. Если он существует, то его содержимое расшифровывается и применяется в качестве пароля. Если тег -stash указан для действия создания, то пароль добавляется в файл бумажника со следующим именем: имя-базы-данных-ключей.sth.

Создание корневого сертификата сервера в хранилище ключей и его добавление в MCS

Корневой сертификат применяется для создания сертификата сервера. Поскольку корневой сертификат расположен в MCS, клиенты Rational DOORS могут проверить сертификат сервера с помощью MCS.
gsk8capicmd -cert -create -db server.kdb -pw ser123 -label "IBMEDCA1" -dn "CN=IBMEDCA1"
-cert -create
Это команда create certificate (действие -create и объект -cert).
-label "IBMEDCA1"
В сертификат добавляется метка. В этом примере применяется метка "IBMEDCA1". Она служит для однозначной идентификации сертификата пользователем.
-dn "CN=IBMEDCA1"
Отличительное имя -dn выполняет роль уникального идентификатора сертификата. Укажите строку в кавычках в следующем формате (обязательным является только параметр CN):
  • CN=общее имя
  • O=организация
  • OU=подразделение организации
  • L=расположение
  • ST=область
  • C=страна
  • DC=компонент домена
  • EMAIL=адрес электронной почты
В этом примере применяется отличительное имя "CN=IBMEDCA1".
gsk8capicmd -cert -extract -db server.kdb -pw ser123 -label "IBMEDCA1" -target temp1.arm
-cert -extract -label "IBMEDCA1"
Это команда extract certificate (действие -extract и объект -cert). Команда извлекает данные сертификата (-label"IBMEDCA1") из базы данных ключей и сохраняет их в файле.
-target temp1.arm
Файл для извлечения сертификата.
gsk8capicmd -cert -add -db GSK_MS_CERTIFICATE_STORE -label "IBMEDCA1" -file temp1.arm
-cert -add -db GSK_MS_CERTIFICATE_STORE
Это команда add certificate (действие -add и объект -cert). Команда добавляет извлеченный сертификат (-label"IBMEDCA1" -file temp1.arm) в (-db GSK_MS_CERTIFICATE_STORE).

Создание сертификата, подписанного с помощью корневого сертификата

Сертификат сервера хранится в хранилище ключей. В этом примере отличительное имя записывается для сервера, который запущен на компьютере с именем IBMEDSERV.
gsk8capicmd -certreq -create -db server.kdb -label IBMSV1 -dn "CN=IBMEDSERV,dc=ukednode1" -file temp2.arm
-certreq -create
Это команда создания запроса сертификата (действие -create и объект -certreq).
-label IBMSV1
В сертификат добавляется метка. В этом примере применяется имя IBMSV1. Она служит для однозначной идентификации сертификата пользователем. IBMSV1 - это имя сертификата по умолчанию, применяемое сервером Rational DOORS, если имя не указано при запуске сервера.
-dn "CN=IBMEDSERV,dc=ukednode1"
Отличительное имя -dn выполняет роль уникального идентификатора сертификата. В этом примере применяется отличительное имя "CN=IBMEDSERV,dc=ukednode1".
Прим.: В качестве IBMEDSERV следует указать имя сервера или значение опции -serverhostname (если эта опция была указана при запуске сервера).
-file temp2.arm
Имя файла, в который сертификат был извлечен в ходе создания запроса сертификата.
gsk8capicmd -cert -sign -db server.kdb -pw ser123 -label IBMEDCA1 -file temp2.arm -target temp3.arm
-cert -sign
Это команда подписания сертификата (действие -sign и объект -cert). Она позволяет подписать запрос сертификата с помощью существующего сертификата, сохраненного в базе данных ключей. Команда принимает запроса сертификата и сведения о сертификате, содержащем личный ключ для подписания.
-file temp2.arm
Имя и расположение запроса сертификата для подписания.
-target temp3.arm
Имя файла, который должен содержать подписанный сертификат.
gsk8capicmd -cert -receive -file temp3.arm -db server.kdb -pw ser123
-cert -receive
Это команда приема сертификата (действие -receive и объект -cert). Она сохраняет сертификат, завершенный для подписания запроса сертификата. Имя файла принимаемого сертификата.
-file temp3.arm
Имя файла принимаемого сертификата.

Копирование корневого сертификата из MCS и его добавление в хранилище ключей сервера

Эта часть примера позволяет проверить сертификаты на сервере.
gsk8capicmd -cert -extract -db GSK_MS_CERTIFICATE_STORE -label "CN=Coy Root" -target temp4.arm
-cert -extract -db GSK_MS_CERTIFICATE_STORE -label -"CN=Coy Root" target temp4.arm
Это команда извлечения сертификата (действие -extract и объект -cert). Команда извлекает данные сертификата (-label"CN=Coy Root") из базы данных MCS (-db GSK_MS_CERTIFICATE_STORE) и сохраняет их в файле (temp4.arm).
gsk8capicmd -cert -add -db server.kdb -pw ser123 -label "CN=Coy Root" -file temp4.arm
-cert -add -label "CN=Coy Root" -file temp4.arm
Это команда добавления сертификата (действие -add и объект -cert). Она добавляет сертификат в указанное хранилище ключей.
Прим.: В этих командах применяется корневой сертификат CN=Coy Root. Фактическое имя сертификата может быть более длинным. Кроме того, если организация использует несколько корневых сертификатов, то каждый из них следует извлечь и добавить отдельно. Например, один корневой сертификат может применяться для 500 пользователей, а другой - для 2000 пользователей. В этом случае оба сертификата необходимо добавить в файл server.kdb.

Комментарии