1

我有一个使用 Cloud KMS 加密的加密文本,我需要从 Cloud ML Engine 中运行的代码的上下文中对其进行解密。但是我遇到了以下错误:

    shaded.com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden 
    { 
      "code" : 403,
      "errors" : [ {  
      "domain" : "global",  
      "message" : "Request had insufficient authentication scopes.", 
      "reason" : "forbidden"  
      } ], 
     "message" : "Request had insufficient authentication scopes.", 
     "status" : "PERMISSION_DENIED" 
    }  
at shaded.com.google.api.client.googleapis.json.GoogleJsonResponseException.from(GoogleJsonResponseException.java:146) 
at shaded.com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:113) 
at shaded.com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:40) 
at shaded.com.google.api.client.googleapis.services.AbstractGoogleClientRequest$1.interceptResponse(AbstractGoogleClientRequest.java:321) 
at shaded.com.google.api.client.http.HttpRequest.execute(HttpRequest.java:1049) 
at shaded.com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419) 
at shaded.com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352) 
at shaded.com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469)

我尝试使用和范围创建GoogleCredential对象,但最终出现相同的错误。如果我在这里遗漏了什么,请告诉我。"https://www.googleapis.com/auth/cloudkms""https://www.googleapis.com/auth/cloud-all"

PS:我确实有一个有效的GoogleCredential对象,因为我可以打印访问令牌。

4

1 回答 1

2

目前它不起作用,因为我们限制了 VM 上的 API 范围。我们正在开发允许 KMS 的功能。敬请关注!

更新:我们已推送更改,因此您现在应该可以访问 KMS。请试一试。

于 2018-04-05T06:52:30.983 回答