问题描述
我正在尝试使用 Postman 向 Cloud Document AI API 发送 POST 请求。我尝试发送包含 API 密钥的 POST 请求,并提供 OAuth 访问令牌作为 OAuth 2.0 授权(使用 gcloud auth 应用程序默认打印访问令牌生成)。但是,返回此错误:
{
"error": {
"code": 403,"message": "Permission 'documentai.processors.processOnline' denied on resource '//documentai.googleapis.com/projects/<project id>/locations/us/processors/<processor id>' (or it may not exist).","status": "PERMISSION_DENIED","details": [
{
"@type": "type.googleapis.com/google.rpc.ErrorInfo","reason": "IAM_PERMISSION_DENIED","domain": "documentai.googleapis.com","Metadata": {
"resource": "projects/<project id>/locations/us/processors/<processor id>","permission": "documentai.processors.processOnline"
}
}
]
}
我认为这是服务帐户权限的问题。如果是这样,如果我无权更改角色,有什么办法可以解决这个问题?
解决方法
只是为了更新这个问题。问题与服务帐户权限有关。如果不设置具有正确权限的服务帐户,就无法解决此问题。正确设置服务帐户后,使用该帐户的服务帐户密钥,您应该可以解决此问题。
TLDR;正确遵循文档 (https://cloud.google.com/document-ai/docs/setup#auth)。如果您无权访问 Google 帐户(就像我一样),请尝试访问它。如果没有,我认为没有其他方法可以解决。