Включение-ssl-https для сервера ключей - PullRequest
0 голосов
/ 28 марта 2020

Я использую keycloak-8.0.1 в автономной конфигурации. Я пытаюсь включить SSL / Https для сервера Keycloak, работающего на моей тестовой машине (AB C .D), запрос токена будет запрошен с машины (XYZP).

(Будет ли какой-либо CORS / CSRF проблема для сгенерированного токена, похоже да? И поможет ли Keycloak через SSL решить эту проблему?) Тем не менее, мне нужно включить SSL.

Итак, мы продолжили работу с https://www.keycloak.org/docs/latest/server_installation/#enabling -ssl-https-for- the-keycloak-server

Шаг 1 Запустите команду:

keytool -genkey -alias localhost -keyalg RSA -keystore keycloak.jks -validity 10950

... два файла server.key и keycloak.jks созданы. Вопрос: должен ли я использовать localhost здесь или лучше использовать IP A.B.C.D моей тестовой машины? Хотя в документации написано localhost, так что продолжайте.

Шаг 2 Создайте запрос сертификата:

$ keytool -certreq -alias yourdomain -keystore keycloak.jks > keycloak.careq

Я также могу сгенерировать запрос сертификата, используя localhost / A.B.C.D.

Шаг 3. Отправьте сертификат CA, созданный в предыдущем шаге, в CA и загрузите сертификат root из CA (root.crt) и выполните импорт с помощью команды:

keytool -import -keystore keycloak.jks -file root.crt -alias root

У меня есть пропустить этот шаг для localhost и, если нет, как сгенерировать root .crt для localhost.

шаг 4: последний шаг - импорт сгенерированного CA сертификата в хранилище ключей

$ keytool -import -alias yourdomain -keystore keycloak.jks -file your-certificate.cer

Вопрос: Теперь у меня есть только два файла, сгенерированные в самом первом шаге «server.key» и keycloak.jks, и откуда я должен получить root.crt и your-certificate.cer? Я попытался загрузить CA запрос на CAcert.org, но они не создают сертификат для локального DNS.

Я уже прошел через множество ссылок link1 , link2 , link3 link4 и запутался Пожалуйста, помогите.

1 Ответ

0 голосов
/ 30 марта 2020

Ответ 1 - Если вы тестируете это на своем локальном компьютере, вы можете использовать localhost, но лучше будет, если вы используете IP-address или host name

Ответ 3 Опять, если это для вашего тестирования Вы можете использовать только самозаверяющий сертификат, нет необходимости go в Центре сертификации объявлений.

Ответ 4 - Так для локального или IP-адреса вашего компьютера просто создайте сертификат с помощью keytool

keytool -genkey -alias initcert -ext san=ip:xxx.xxx.xxx.xx -keyalg  RSA -keystore keycloak.jks-validity 365  -keysize 2048

Экспорт сертификатов

keytool -export -noprompt -trustcacerts -keystore keycloak.jks -alias initcert -file keycloak.cer -storepass changeit

Импорт сертификатов на клиентский компьютер Java Keystore

keytool -import -noprompt -trustcacerts -alias "initcert" -file keycloak.cer -keystore /workspace/tools/jdk/java-1.7.0-openjdk-1.7.0.25.x86_64/jre/lib/security/cacerts
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...