0

Google现在提供in betamanaged security service用于向SSL应用程序自动部署SSL证书,目前这些应用程序由Let's Encrypt签署。托管安全服务是一个非常好的主意,特别是对于Windows用户,他们无法通过Let's Encrypt服务轻松生成SSL证书。Google App引擎管理的安全问题

我目前有一个自定义域映射到我的GAE应用程序加上它的www别名(这意味着'customdomain.com'和'www.customdomain.com'映射到我的应用程序)。另外,我已经为他们两个启用了托管安全性。

不幸的是,只有在使用www别名(www.customdomain.com)访问我的应用程序时才会强制执行HTTPS连接。如果没有确定子域名(customdomain.com),则所提供的连接是不安全的。当然,可以强制执行HTTPS连接(在'customdomain.com'之前添加'https://')。

这是为什么发生?这是一个服务错误吗?

+0

不幸的是,没有人能与此问题的帮助,所以这里是我做的至少避开它。 我重定向到'customdomain.com'的每个连接到其中一个子域,我选择它作为我的着陆页。因此,如果有人试图访问通过不安全连接完成的'customdomain.com',则会将其中一个重定向到'subdomain.customdomain.com',这是安全的,因为该URL包含别名。 –

+0

对不起,我没有提到原始问题,我的GAE应用程序是在标准环境中运行的Python应用程序。 –

回答

0

截至2017年9月,Google云端平台推出了托管SSL,默认情况下应该为您的自定义域实施SSL。

下面是this instructional post的摘录:

现在,当你在App Engine上构建应用程序,SSL是在默认情况下 - 你没有 不再需要担心或花时间来管理它。我们使用HTTPS简化了 :将域映射到您的应用程序,证明所有权,并且应用程序 引擎自动提供SSL证书并在必要时将其更新为 ,无需额外费用。购买和生成 证书,处理和保护密钥,管理您的SSL密码 套件,并担心续约日期 - 这些都是过去的 的事情。

您可以指定要确保里面的路径app.yaml

handlers: 
- url: /.* 
    script: main.app 
    secure: always 
+1

我之前已经尝试过使用url安全处理器的'secure'选项,但是当时我的应用程序没有像预期的那样工作。今天,在用更多的处理程序更新我的app.yaml文件(如此处所述:https://gist.github.com/darktable/873098)以处理另一个问题之后,我决定将“安全”选项添加到所有这些选项最后,我的GAE应用现在默认通过HTTPS提供服务,没有任何技巧。谢谢你的帮助! –