DPA. Импорт подписанного сертификата, содержащего полную цепочку доверия и закрытый ключ, в DPA — Windows
Summary: Импорт подписанного сертификата, содержащего полную цепочку доверия и закрытый ключ или сертификат с подстановочными знаками, на сервер приложений Data Protection Advisor (DPA).
Instructions
В некоторых случаях у источника сертификатов (ЦС) пользователя уже есть предоставленный подписанный сертификат. Некоторые пользовательские процедуры требуют, чтобы они создавали\извлекали сертификат таким образом. Обычно это происходит, когда CA выдает подстановочный сертификат или когда сервер использует несколько доменных имен.
В таких случаях можно просто импортировать подписанный сертификат в apollo.keystore. Тогда и только тогда, когда полученный подписанный сертификат содержит полную цепочку сертификатов и закрытый ключ.
Ниже перечислены форматы сертификатов, которые могут содержать закрытый ключ.
- PKCS#12 (.pfx или .p12) может хранить сертификат сервера, промежуточный сертификат и закрытый ключ в одном PFX-файле с защитой паролем. Поскольку эти файлы содержат полную цепочку и закрытый ключ, их можно импортировать непосредственно в apollo.keystore, но помните, что для этого необходимы псевдоним и пароль псевдонима (эта информация должна быть у владельца сертификата).
- Модуль PEM (.pem, .crt, .cer или .key) может содержать сертификат сервера, промежуточный сертификат и закрытый ключ в одном файле. Сертификат сервера и промежуточный сертификат также могут находиться в отдельных файлах .crt или .cer, а закрытый ключ может быть в файле .key. Если сертификаты\промежуточные сертификаты и ключ находятся отдельно, этого недостаточно для прямого импорта.
Проверьте, открыв файл сертификата в текстовом редакторе.
Каждый сертификат содержится между инструкциями ---- BEGIN CERTIFICATE---- и ----END CERTIFICATE----
Закрытый ключ содержится между ---- операторами BEGIN RSA PRIVATE KEY----- и -----END RSA PRIVATE KEY-----
Убедитесь, что количество сертификатов---- содержащихся в инструкциях ---- BEGIN CERTIFICATE и ----END CERTIFICATE---- совпадает с количеством сертификатов в цепочке (серверных и промежуточных) и заканчивается ---- BEGIN RSA PRIVATE KEY----- и -----END PRIVATE KEY.
Если файл не содержит полную цепочку сертификатов и закрытый ключ, сертификат необходимо импортировать в хранилище ключей, где он был создан. Если вы не уверены в цепочке сертификатов, см. статью базы знаний 532108: Как вручную отделить серверный, промежуточный и корневой сертификаты от одного подписанного сертификата
После того, как вся цепочка сертификатов и закрытый ключ находятся в одном файле, предоставляется все, что необходимо для импорта сертификата в DPA, выполнив следующие действия:
-
Создайте копию apollo.keystore и standalone.xml файлов в папке dpa\services\standalone\configuration и файл application-service.conf в папке dpa\services\executive. Если необходимо вернуться к первоначальной конфигурации, можно использовать эти файлы для восстановления работоспособности DPA. Поместите копии в папку на рабочем столе для безопасного хранения и во избежание путаницы.
-
Откройте копию файла standalone.xml и выполните поиск по запросу «key-alias». Должна появиться строка, содержащая псевдоним ключа и пароль, подобную этой:
<ssl name="ssl" key-alias="${apollo.keystore.alias:apollokey}" password="apollo"Запишите пароль в этой строке. Это пароль apollo.keystore, и он понадобится в следующих шагах.
-
Выполните следующую команду из каталога установки DPA в разделе services\_jre\bin:
keytool -importkeystore -srckeystore "c:\Program files\emc\dpa\services\standalone\configuration\wildcard.pfx" -srcstoretype pkcs12 -destkeystore "c:\Program files\emc\dpa\services\standalone\configuration\apollo.keystore" -deststoretype JKS
Примечание. Укажите правильное расположение подписанного файла сертификата (srckeystore) и apollo.keystore (destkeystore). Дополнительные сведения о том, что необходимо ввести, см. в примере ниже:D:\Program Files\EMC\DPA\services\_jre\bin keytool -importkeystore -srckeystore "c:\Program files\emc\dpa\services\standalone\configuration\wildcard.pfx" -srcstoretype pkcs12 -destkeystore "c:\Program files\emc\dpa\services\standalone\configuration\apollo.keystore" -deststoretype JKS Enter destination keystore password: (apollo.keystore password- check standalone.xml) Enter source keystore password: (alias password-owner of certificate will know this) Entry for alias my_alias successfully imported. Import command completed:1 entries successfully imported, 0 entries failed or cancelled
-
Перечислите содержимое apollo.keystore, чтобы убедиться, что подписанный сертификат импортирован правильно.
keytool -list -v -keystore "c:\Program files\emc\dpa\services\standalone\configuration\apollo.keystore"
(Введите пароль apollo.keystore)
Теперь он должен содержать запись для apollokey и новую запись с подстановочными знаками пользователя (независимо от того, какой псевдоним был назначен подписанному сертификату). Вы должны увидеть, что это PrivateKeyEntry, содержащая полную цепочку сертификатов.
-
Перезапустите службы приложения и попытайтесь войти в пользовательский интерфейс. Если перезапуск служб приводит к ошибке, svc приложения не запускается или на этом этапе невозможно получить доступ к пользовательскому интерфейсу:
- Откройте application-service.conf и выполните поиск по запросу «apollo.key». Вы должны увидеть, что псевдоним был обновлен до импортированного псевдонима (в данном случае wildcardalias).
- Откройте standalone.xml в текстовом редакторе и выполните поиск по запросу «key-alias». Вы должны увидеть строку, похожую на ту, что приведена ниже, которая показывает импортированный псевдоним:
key-alias="${apollo.keystore.alias:emcdpa}"
Если нет, измените псевдоним ключа, чтобы он совпадал с псевдонимом, связанным с подписанным сертификатом. Кроме того, убедитесь, что пароль совпадает с тем, который вы использовали все время.
Если необходимо изменить псевдоним или пароль в этих файлах, выполните следующие действия.
- Остановите службы приложений.
- Отредактируйте и сохраните файлы.
- Перезапустите службы.
- Если проблема не устранена, обратитесь в службу поддержки DPA.