【问题标题】:Google App Engine, content security policy issuesGoogle App Engine,内容安全政策问题
【发布时间】:2018-06-26 09:58:44
【问题描述】:

我已经快要放弃转向应用引擎了。

目前我无法从我的服务器访问任何静态文件,因为应用引擎设置了一些 content-security-policy 标头,而在本地或计算引擎上运行时我没有遇到这种情况。

我只是想访问我的静态文件夹。

错误

The Content Security Policy directive 'default-src' contains 'frame-ancestors' as a source expression. Did you mean 'default-src ...; frame-ancestors...' (note the semicolon)?

响应标头

alt-svc: quic=":443"; ma=2592000; v="43,42,41,39,35"
content-encoding: gzip
content-security-policy: default-src 'self' frame-ancestors 'self' https://console.cloud.google.com https://*.corp.google.com:* http://*.corp.google.com:*
content-type: text/html; charset=utf-8
date: Tue, 26 Jun 2018 09:53:17 GMT
server: nginx/1.10.3
status: 404
vary: Accept-Encoding
via: 1.1 google
x-content-type-options: nosniff
x-powered-by: Express

我可以看到 CSP 存在问题,但我不确定我需要做些什么来影响它...

我正在使用 Express 和 Nodejs 的灵活环境,并且应用程序正在托管 @https://my-project-dot-blha.appspot.com

更新: 虽然我可以看到这很可能是语法错误,但我正在尝试自己设置标头,但如果有人知道如何影响这些将成为王牌的应用引擎标头,我无法做到!

提前致谢。

【问题讨论】:

  • 为什么使用 Express 来提供静态内容?当然这可以使用 Nginx 提供服务?
  • @ScottMcC 你的意思是使用 app.yaml 文件并在那里指定处理程序吗?但无论哪种方式,他们都支持这个cloud.google.com/appengine/docs/flexible/nodejs/…
  • 还有 Scott 这会消除这个问题吗?还是说我在单独的计算实例上运行 Nginx?
  • 你在 app.yml 中指定了 static_files 吗?
  • 我没有使用 app.yaml 来提供文件 - express 正在这样做。在您部署应用程序之前,是否还会使用 app.yaml?

标签: express google-app-engine http-headers google-cloud-platform content-security-policy


【解决方案1】:

已解决

当使用应用引擎网页预览时,GAE 服务器设置了内容安全策略,我想确保您不会共享或使用这些预览域。它们允许用户从控制台环境中打开它。

如果你想绕过它,你可以使用:https://chrome.google.com/webstore/detail/disable-content-security/ieelmcmcagommplceebfedjlakkhpden?hl=en

否则当我将应用部署到什么是prod环境时,这个问题就不存在了!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-03
    • 2015-09-05
    • 2021-09-29
    • 2015-07-13
    • 2019-04-15
    • 2022-08-19
    • 2015-07-22
    • 2016-10-03
    相关资源
    最近更新 更多