[英]Spring Boot project with SSL / HTTPS not working on AWS Elastic Beanstalk
當使用p12證書在本地服務時,我的Spring Boot項目在https / ssl上可以正常工作,但是在上載到AWS Elastic Beanstalk時失敗。
以下是application.properties配置:
security.require-ssl=true
server.use-forward-headers=true
server.port=8443
server.ssl.key-store: classpath:keystore.p12
server.ssl.key-store-password: jonathan
server.ssl.keyStoreType: PKCS12
server.ssl.keyAlias: tomcat
WebSecurityConfigurerAdapter子類的configure(HttpSecurity http)方法包含以下行,以啟用HTTPS / SSL:
http.requiresChannel().antMatchers("/**").requiresSecure();
附件是AWS Elastic beantalk控制台內部的經典負載配置器配置:
這是在AWS Certificate Manager下隨grasshapper.net域頒發的SSL證書:
我在.ebextensions下也有設置,帶有路徑的文件是src / main / resources / .ebextensions / .config(不確定是否需要):
option_settings:
aws:elb:listener:8443:
SSLCertificateId: [keeping private]
ListenerProtocol: HTTPS
InstancePort: 80
InstanceProtocol: HTTP
aws:elb:listener:80:
ListenerEnabled: false
注意(SSLCertifcateId):ID是從ARN(我的AWS Certifcate管理器SSL證書)獲取的(如果您展開SSL證書,則會看到ARN)。
代理是否具有受信任的IP地址?
默認情況下,信任10 / 8、192.168 / 16、169.254 / 16和127/8中的IP地址。 您可以通過在application.properties中添加一個條目來自定義閥門的配置,如以下示例所示:
server.tomcat.internal的代理= 192 \\ .168 \\。\\ d {1,3} \\。\\ d {1,3}
參考: https : //docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/html/howto-embedded-web-servers.html#howto-customize-tomcat-behind-a-proxy-server
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.