appengine (pycrypto 2.6 を使用) の SignedJwtAssertionCredentials は PKCS12 形式をサポートしていないため、どこでも提案されているように、代わりに PEM キーを使用しようとしています..
これは私のコードです:
f = file(os.path.join(os.path.dirname(__file__), KEY_FILE), "r")
key = f.read()
f.close()
credentials = SignedJwtAssertionCredentials(SERVICE_ACCOUNT_EMAIL, key,
scope="https://www.googleapis.com/auth/drive"
http = httplib2.Http()
http = credentials.authorize(http)
はKEY_FILE
PEMキーで、次のコマンドで変換されます:
openssl pkcs12 -in privatekey.p12 -nodes -nocerts > privatekey.pem
しかし、それがPEMキーであることを認識しなかったかのように、私はまだこのエラーを受け取ります:
NotImplementedError: 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.
ファイル名だけをコンストラクターに渡すと(ファイルの内容を読み取らずに)、同じエラーが発生します。
何か案が?