تفعيل بروتوكول نقل النص التشعبي الأمن في الإقلاع او التمهيد الربيع Spring Boot Enabling HTTPS

تفعيل بروتوكول نقل النص التشعبي الأمن في الإقلاع او التمهيد الربيع

 Spring Boot Enabling HTTPS 

تفعيل بروتوكول نقل النص التشعبي الأمن في الإقلاع او التمهيد الربيع Spring Boot Enabling HTTPS 

بروتوكول نقل النص التشعبي الأمن (HTTPS) هو امتداد لبروتوكول نقل النص التشعبي (HTTP). يتم استخدامه للاتصال الأمن عبر شبكه الكمبيوتر ، ويستخدم علي نطاق واسع علي الإنترنت. في HTTPS ، يتم تشفير بروتوكول الاتصال باستخدام أمان طبقه النقل (TLS) أو سابقا ، طبقه ماخذ التوصيل الامنه (SSL). ولذلك غالبا ما يشار إلى البروتوكول أيضا HTTP عبر TLS ، أو HTTP عبر SSL.
بشكل افتراضي ، يستخدم تطبيق Spring Boot منفذ HTTP 8080 عند بدء تشغيل التطبيق.
Started Application on Tomcat port_8080
تحتاج إلى اتباع الخطوات الموضحة أدناه لتهيئة HTTPS والمنفذ 443 في تطبيق Spring Boot -

 الحصول على شهادة طبقة المقابس الآمنة - قم بإنشاء شهادة موقعة ذاتيا أو احصل على شهادة من مرجع مصدق

 تمكين HTTPS و 443 منفذ

شهادة موقعة ذاتيا Self-Signed Certificate

لإنشاء شهادة موقعة ذاتياً ، تأتي بيئة وقت تشغيل Java مرفقة مع أداة مفتاح الأداة المساعدة لإدارة الشهادة.  يتم استخدام هذه الأداة المساعدة لإنشاء شهادة موقعة ذاتيا.  يظهر في الكود الوارد هنا -
keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650
Enter keystore password:
   Re-enter new password:
   What is your first and last name?
   [Unknown]:
   What is the name of your organizational unit?
   [Unknown]:
   What is the name of your organization?
   [Unknown]:
   What is the name of your City or Locality?
   [Unknown]:
   What is the name of your State or Province?
   [Unknown]:
   What is the two-letter country code for this unit?
   [Unknown]:
   Is CN = Unknown, OU=Unknown, O = Unknown, L = Unknown, ST = Unknown, C = Unknown correct?
   [no]: yes
سيقوم هذا الرمز بإنشاء ملف keystore PKCS12 يسمى keystore.p12 ويكون اسم شهادة الاسم المستعار هو tomcat.

اعدادات Configure HTTPS

نحتاج إلى توفير منفذ الخادم كـ 443 ، ومسار ملف تخزين المفاتيح ، وكلمة مرور تخزين المفاتيح ، ونوع متجر المفاتيح ، واسم الاسم المستعار للمفتاح في ملف application.properties.  لاحظ الكود الوارد هنا -
server.port: 443
server.ssl.key-store: keystore.p12
server.ssl.key-store-password: springboot
server.ssl.keyStoreType: PKCS12
server.ssl.keyAlias: tomcat

يمكنك استخدام الكود التالي إذا كنت تستخدم خصائص YAML أدناه application.yml -
server:
   port: 443
   ssl:
      key-store: keystore.p12
      key-store-password: springboot
      keyStoreType: PKCS12
      keyAlias: tomcat

يمكنك إنشاء ملف JAR قابل للتنفيذ ، وتشغيل تطبيق الإقلاع في الربيع باستخدام أوامر Maven أو Gradle التالية.

 بالنسبة إلى Maven ، يمكنك استخدام الأمر التالي -
mvn clean install
بعد "BUILD SUCCESS" ، يمكنك العثور على ملف JAR
 تحت الدليل الهدف.
 بالنسبة إلى Gradle ، يمكنك استخدام الأمر
gradle clean build
بعد "BUILD SUCCESSFUL" ، يمكنك العثور على ملف JAR ضمن دليل build / libs.

 الآن ، قم بتشغيل ملف JAR باستخدام الأمر التالي -
java –jar 

الآن ، بدأ التطبيق على منفذ Tomcat 443 مع https كما هو موضح -
Started Application on Tomcat Port 443