亚马逊CloudFront隐藏源站域名设置

出于安全方面的考虑,有时我们希望对客户端隐藏服务器的域名或IP地址,这时可以利用亚马逊CloudFront服务来实现。

(1)Origins设置页中的Origin Protocol Policy选择“HTTP Only”。
(2)Behavior设置页中的Viewer Protocol Policy选择“HTTPS Only”。
    Forward Headers选择“All”。
    Forward Cookies选择“All”。
    Forward Query Strings选择“Yes”。
其他选项默认。
(3)Tomcat需关闭80到443端口的跳转,即TOMCAT_HOME\conf\server.xml中的

<Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000" redirectPort="443"/>

“redirectPort="443"”去掉。
(4)应用的 web.xml 文件中的

<security-constraint>
    <web-resource-collection>
        <web-resource-name>yourapp</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>

CONFIDENTIAL 改为 NONE
这样就可以用类似https://d36iu8eatn52r6.cloudfront.net/api/user的域名访问服务器的API,而不暴露源站的域名或IP地址。

猜你喜欢

转载自blog.csdn.net/blueblood1/article/details/82724695