【发布时间】:2014-09-07 00:12:42
【问题描述】:
我在 GAE 中有一个应用程序,我正在使用服务帐户来调用一些谷歌服务。当我在仪表板中创建服务帐户时,向我提供了一个 JSON 密钥。 json的内容是这样的:
{
"private_key_id": "bar-foo",
"private_key": "-----BEGIN PRIVATE KEY-----foo-bar\n-----END PRIVATE KEY-----\n",
"client_email": "foo-bar@developer.gserviceaccount.com",
"client_id": "bar-foo.apps.googleusercontent.com",
"type": "service_account"
}
如何在我的 java 代码中使用此 private_key 来生成 GoogleCredential 对象?
我可以使用setServiceAccountPrivateKeyFromP12File 方法做到这一点,但为此我需要创建一个 p12 文件并将其存储在某处。使用 json 私钥,我可以在我的属性文件中配置它。
我在GoogleCredential.Builder 中找到了一个setServiceAccountPrivate 方法,它接收一个PrivateKey 对象作为参数,但我不知道如何从json 中的值生成这个对象。我发现的所有示例都使用 p12 文件。
【问题讨论】:
标签: java json google-app-engine service-accounts