Я пытаюсь вызвать двустороннюю систему, защищенную SSL, используя ключ и сертификат с RestTemplate.Я использовал хранилище ключей для настройки сертификата и ключа.Вот шаги для генерации хранилища ключей.
openssl pkcs12 -export -in cert.pem -inkey "privateKey.pem" -certfile cert.pem -out myProject_keyAndCertBundle.p12
keytool -importkeystore -srckeystore myProject_keyAndCertBundle.p12 -srcstoretype PKCS12 -destkeystore keystore.jks.jks
Затем я настроил его в своем главном классе, как показано ниже.
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
System.setProperty("javax.net.ssl.keyStore", "keystore.jks");
System.setProperty("javax.net.ssl.keyStorePassword", "password");
System.setProperty("javax.net.ssl.keyStoreType", "JKS");
}
}
Он успешно работает.
Мой вопрос: есть ли способ установить хранилище ключей в application.yml
Я пробовал, как показано ниже.Но в этом случае мне также нужен сертификат для подключения к моему приложению с весенней загрузкой.
server:
port: 8443
ssl:
key-store: classpath:keystore.jks
key-store-password: password
security:
headers:
hsts: NONE