【问题标题】:Google App Engine SSL Version 2.7.11 Library Un/SupportedGoogle App Engine SSL 版本 2.7.11 库不受/支持
【发布时间】:2017-06-12 16:25:27
【问题描述】:

根据文档...

https://cloud.google.com/appengine/docs/python/sockets/ssl_support https://cloud.google.com/appengine/docs/python/tools/built-in-libraries-27

SSL 版本 2.7.11 支持 TLS v1.0、v1.1 和 v1.2(我需要 TLSv1.2 来进行 APNs 通信)。

还有

Google App Engine/Python 支持 SSL 版本 2.7.11(截至 2016 年 7 月)

当我将它添加到我的 app.yaml ...

libraries:
  - name: ssl
    version: 2.7.11

...并尝试部署应用程序(通过命令行上的 appcfig.py 或启动器上的“部署”)我收到错误...

Error parsing ./app.yaml: ssl version "2.7.11" is not supported, use one of: "2.7"

如果我指定版本 2.7 或“最新”,我将获得不支持 TLS v1.1 或 v1.2 的 SSL 版本 2.7。如果我在 yaml 的“库”子句中省略 SSL,则导入时的应用程序不支持 ssl 模块。

我应该如何在 TLSv1.2 支持下继续“导入 ssl”? 还是我忽略了 app.yaml 配置选项?

我的 app.yaml 的相关部分如下...

api_version: '1'
runtime: python27
threadsafe: false

instance_class: F2
automatic_scaling:
  max_idle_instances: 4
  max_pending_latency: 250ms

builtins:
- remote_api: 'on'
- deferred: 'on'

libraries:
- name: django
  version: '1.2'
- name: ssl
  version: '2.7.11'

inbound_services:
- warmup

【问题讨论】:

  • 也许可以在code.google.com/p/googleappengine/issues/list提出问题?
  • 我相信 SSL 2.7 版确实提供了 TLSv1.2 支持。
  • @GAEfan 使用 app.yaml 中指定的“版本:'2.7'”,已部署应用程序中的 logging.debug(dir(ssl)) 仅确认协议 PROTOCOL_SSLv23、PROTOCOL_SSLv3 和 PROTOCOL_TLSv1 .
  • 确保您更新到最新版本的 SDK:cloud.google.com/appengine/docs/python/download 这样应该可以摆脱 2.7.11 错误
  • 可能还想要gcloud components install app-engine-python-extras。不确定 ssl 2.7.11 是否在那里。

标签: python python-2.7 google-app-engine ssl tls1.2


【解决方案1】:

确保您更新到最新版本的 SDK:

cloud.google.com/appengine/docs/python/download

这应该可以消除 2.7.11 错误。旧版本(2.7.11 之前)有这个错误。

【讨论】:

  • 这正是问题所在。是 GoogleAppEngineLauncher v1.9.36 (1.9.36.544)。今天早上下载并安装了v1.9.50(1.9.50.2),ssl v2.7.11部署没有错误。此外,logging.debug(ssl.__doc__) 和 logging.debug(dir(ssl)) 揭示了额外的 SSL 协议,PROTOCOL_TLSv1_1 和 PROTOCOL_TLSv1_2。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-07-25
  • 1970-01-01
  • 1970-01-01
  • 2012-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多