【发布时间】:2018-05-03 21:47:11
【问题描述】:
我无法让我的应用程序在 Google AppEngine 上正常运行。我有一个 Flask 应用程序,其内容安全策略 (CSP) 由 flask-talisman 管理
我正在阻止对http://my-project.appspot.com/api/foo 的 API 调用,因为它们违反了“connect-src”政策。对该 URL 的请求类型为 xhr。实际消息如下:
Refused to connect to 'http://review-dot-my-project.appspot.com/api/foo' because it violates the following Content Security Policy directive: "connect-src 'self' *.appspot.com".
在生产中,我的网址是https://my-project.appspot.com
对于评论应用,我的网址是http://review-dot-my-project.appspot.com
在我的评论应用中使用 http 协议,在生产中使用的是 https。
我的CSP的相关部分如下:
...
Talisman(app, content_security_policy={
'default-src': ["'self'", "*.google.com"],
...
'connect-src': ["'self'", "*.appspot.com"]
})
我已经尝试过多次迭代我的 CSP 的 connect-src 部分
'connect-src': ["'self'", "*://*.appspot.com"]
'connect-src': ["'self'", "*://*my-project.appspot.com"]
'connect-src': ["'self'", "*.appspot.com"]
'connect-src': ["'self'", "*.appspot.com*"]
我似乎找不到关于通配符如何工作的明确文档。由于 Flask Talisman 来自 Google Cloud Platform 组织,我希望能够找到更多示例
【问题讨论】:
-
嘿,我遇到了类似的问题,GAE 正在为我(节点)设置 CSP 标头,我在哪里以及如何覆盖它?
标签: python google-app-engine flask google-cloud-platform