0

我们在谷歌云控制台上创建了云扳手实例和数据库。

以下我们正在执行的代码片段。

def getDatabaseList(self,):
    try:
        parent = "projects/"+self._PROJECT_NAME + "/instances/" + self._INSTANCE_NAME
        response = self.service.projects().instances().databases().list(parent=parent).execute()
    except Exception, e:
        logging.info("Exception while getDatabaseList %s", e)
        return False
    return response

在上面的代码片段中 self.service 是对象 googleapiclinet 库构建对象。

在使用服务帐户 ID 执行上述代码片段时,我们遇到了异常。

Exception while getDatabaseList <HttpError 403 when requesting https://spanner.googleapis.com/v1/projects/<projectName>/instances/<instanceName>/databases?alt=json&key=<APIKEY>

returned "Resource projects/<projectName>/instances/<instanceName> is missing IAM permission: spanner.databases.list.">

参考文档cloud spanner IAM

4

1 回答 1

0

有点晚了,但希望这会有所帮助:您是否正确设置了服务帐户的 json 文件的路径?我浪费了半天的时间来处理权限,直到我发现我只是错过了一个 env 密钥。

set export GOOGLE_APPLICATION_CREDENTIALS=/path/to/your/service_account/key.json
于 2017-10-05T15:10:16.997 回答