当使用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)。
答案 0 :(得分:0)
代理是否具有受信任的IP地址?
默认情况下,IP地址为10 / 8、192.168 / 16、169.254 / 16和127/8 值得信赖。您可以通过添加一个自定义阀门的配置 输入application.properties,如以下示例所示:
server.tomcat.internal-proxies = 192 \ .168 \。\ d {1,3} \。\ d {1,3}