Spring Boot uygulamalarında yapılandırma dosyası varsayılan olarak application.properties dosyasıdır. Spring Boot uygulamalarının SSL yapılandırmasını da application.properties dosyasından gerçekleştireceğiz. Sertifika otaritesinden aldığımız sertifikaları PKCS12 formatında Anahtar Deposu (=KeyStore) dosyasında saklıyoruz. PKCS12, kapalı anahtar ve sertifikaları depolamak ve uygulamalar tarafından erişilebilmesini sağlamak amacıyla geliştirlen dilden ve platformdan bağımsız bir saklama kabı standardıdır. PKCS12 dosyasını oluşturmak amacıyla aşağıdaki komutu çalıştırmanız gerekir:
Bu komut, parametre olarak kapalı anahtar (example.com.key) ve sertifikayı (example.com.cer) alıyor ve PKCS12 standardına uygun olarak /tmp/keystore.p12 isimli dosyada saklıyor. Komutu çalıştırdığımızda bizden bir parola isteyecektir. Parola olarak Secret_1234 karakter katarını girmiş olalım. Bu parola ile uygulamalar Anahtar Deposundaki anahtar ya da sertifikayı okuyabilirler. Anahtar Deposunda çok sayıda anahtar ve sertifika saklamak mümkündür. Bu nedenle Anahtar ve sertifikayı saklarken bir etiket atıyoruz. Örneğimizde, Anahtar Deposunda sakladığımız kapalı anahtar ve sertifikaya mywebapp etiketini verdik. Sonuç olarak, uygulamalar, Anahtar Deposunda sakladığımız anahtarı ve sertifikayı mywebapp etiketi ve Secret_1234 parolası ile okuyabilirler.
Artık Spring Boot uygulamasında SSL yapılandırması için application.properties dosyası içerisine gerekli tanımlamaları yapabiliriz:
Spring Boot uygulamalarından bağımsız olarak Java uygulamalarının sertifika dosyasını okuyabilmeleri için Java Sanal Makinasına aşağıdaki parametreleri geçirmek gerekir: