spring-boot 添加http自动转向https
今天主要遇到的2個(gè)問(wèn)題,第一個(gè)是springboot遇到跨域的問(wèn)題,這個(gè)問(wèn)題解決完之后,還以為整個(gè)事情就結(jié)束了。萬(wàn)萬(wàn)沒(méi)想到,由于我們前端的所有訪問(wèn)都是https的,所以springboot也需要配置https的訪問(wèn),所以用jdk自帶的生成ssl,然后配置打包,這下OK了。
SSL是為網(wǎng)絡(luò)通信提供安全以及保證數(shù)據(jù)完整性的的一種安全協(xié)議,SSL在網(wǎng)絡(luò)傳輸層對(duì)網(wǎng)絡(luò)連接進(jìn)行加密。
什么是https
要說(shuō)https我們得先說(shuō)SSL(Secure Sockets Layer,安全套接層),這是一種為網(wǎng)絡(luò)通信提供安全及數(shù)據(jù)完整性的一種安全協(xié)議,SSL在網(wǎng)絡(luò)傳輸層對(duì)網(wǎng)絡(luò)連接進(jìn)行加密。SSL協(xié)議可以分為兩層:SSL記錄協(xié)議(SSL Record Protocol),它建立在可靠的傳輸協(xié)議如TCP之上,為高層協(xié)議提供數(shù)據(jù)封裝、壓縮、加密等基本功能支持;SSL握手協(xié)議(SSL Handshake Protocol),它建立在SSL記錄協(xié)議之上,用于在實(shí)際數(shù)據(jù)傳輸開(kāi)始之前,通信雙方進(jìn)行身份認(rèn)證、協(xié)商加密算法、交換加密密鑰等。在Web開(kāi)發(fā)中,我們是通過(guò)HTTPS來(lái)實(shí)現(xiàn)SSL的。HTTPS是以安全為目標(biāo)的HTTP通道,簡(jiǎn)單來(lái)說(shuō)就是HTTP的安全版,即在HTTP下加入SSL層,所以說(shuō)HTTPS的安全基礎(chǔ)是SSL,不過(guò)這里有一個(gè)地方需要小伙伴們注意,就是我們現(xiàn)在市場(chǎng)上使用的都是TLS協(xié)議(Transport Layer Security,它來(lái)源于SSL),而不是SSL,只不過(guò)由于SSL出現(xiàn)較早并且被各大瀏覽器支持因此成為了HTTPS的代名詞,。你可以把HTTPS和SSL的關(guān)系理解成iPhone和富土康的關(guān)系,大概就是這樣哈。
例:cas 的單點(diǎn)登陸就用到了SSL
一、安全證書的生成
1、可以使用jdk自帶的證書生成工具,jdk自帶一個(gè)叫keytool的證書管理工具,可以用它來(lái)實(shí)現(xiàn)簽名的證書。
2、先配置好基本的java環(huán)境,ctrl+r 輸入cmd ,進(jìn)入java 的目錄
3、例:生成一個(gè)別名叫tomcat 的證書?? 先使用命令進(jìn)入jdk的bin?? 這里的密碼是123456
keytool -genkey -alias tomcat -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -keystore D:/keys/tomcat.keystore -storepass 123456
4、獲取一個(gè)tomcat.keystore的文件,將這個(gè)文件放到項(xiàng)目的目錄中
二、配置SSL
1、編輯application.properties這個(gè)文件
server.port=8443 server.ssl.key-store=tomcat.keystore server.ssl.key-password=123456 server.ssl.key-store-type=JKS server.ssl.key-alias=tomcat總結(jié)
以上是生活随笔為你收集整理的spring-boot 添加http自动转向https的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: fastjson对json字符串JSON
- 下一篇: hdfs统计某个目录下的文件数