Google cloud storage gsutil给定失败:PyCrpto库不支持PKCS12格式

Google cloud storage gsutil给定失败:PyCrpto库不支持PKCS12格式,google-cloud-storage,gsutil,Google Cloud Storage,Gsutil,我正在尝试中指定的对象存储通知配置 我遵循了确切的步骤,但是在运行“gsutil ls”命令时,我发现以下错误: /usr/local/gsutil/gsutil ls Failure: PKCS12 format is not supported by the PyCrpto library. Try converting to a "PEM" (openssl pkcs12 -in xxxxx.p12 -nodes -nocerts > privatekey.pem) or usi

我正在尝试中指定的对象存储通知配置

我遵循了确切的步骤,但是在运行“gsutil ls”命令时,我发现以下错误:

/usr/local/gsutil/gsutil ls 
Failure: PKCS12 format is not supported by the PyCrpto library. Try converting to a "PEM" (openssl pkcs12 -in xxxxx.p12 -nodes -nocerts > privatekey.pem) or using PyOpenSSL if native code is an option..
我尝试按照错误消息中的指示转换为PEM,并使用gsutil config-e重新配置,但它返回了与PEM格式相同的错误

我的gsutil版本是3.37 我已经编译并安装了pycrypto-2.6


请帮我摆脱这个错误

所以,这里的幕后似乎有几件事情出错了。其中之一是向您报告此错误的gsutil所使用的库无法正确识别PEM文件,这就是为什么在运行该命令后仍然无法工作的原因。我们将在下一版本的gsutil中修复此问题

短期内,您可以安装PyOpenSSL吗?这应该适用于PKCS12文件。您可以通过以下方式完成此操作:

easy_install pyOpenSSL


(您可能需要为此使用sudo)

我解决这个问题的方法(对于任何谷歌用户来说)是在运行应用程序指定的命令之后,我编辑了这个键(在Vim中,但任何文本编辑器都可以工作),并删除了文件开头的额外信息

编辑前:

Bag Attributes
    friendlyName: privatekey
    localKeyID: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Key Attributes: <No Attributes>
-----BEGIN RSA PRIVATE KEY-----
...
-----END RSA PRIVATE KEY-----

您能否将运行/usr/local/gsutil/gsutil ls-D的输出发送给我们。请删除Authorization:headers。如果您不想在公共论坛上发布调试信息,可以将其发送给gs-team@google.com.I使用yum安装pyOpenSSL-0.10-2.el6.x86_64失败,“gsutil ls”删除pyOpenSSL-0.10-2.el6.x86_64,尝试pip安装pyOpenSSL,pyOpenSSL安装失败。我必须安装python-devel软件包才能使“pip-install-pyOpenSSL”成功。在此之后,“gsutil ls”命令没有返回任何错误。为我工作!或者,通过使用两种不同的转换工具来实现相同的结果,从而生成一个没有头的pem文件。
Bag Attributes
    friendlyName: privatekey
    localKeyID: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Key Attributes: <No Attributes>
-----BEGIN RSA PRIVATE KEY-----
...
-----END RSA PRIVATE KEY-----
-----BEGIN RSA PRIVATE KEY-----
...
-----END RSA PRIVATE KEY-----