【问题标题】:Upload a file from a Power Automate flow into a GCS bucket将文件从 Power Automate 流上传到 GCS 存储桶
【发布时间】:2022-10-09 17:33:40
【问题描述】:
我正在尝试将自动电源流中的文件上传到 GCS 存储桶中。
由于有发出 HTTP 请求的动作,所以我尝试使用它;我所做的是:
- 在 GCP 上创建服务帐号
- 授予此服务帐户存储桶上 GCS 对象创建者的角色
- 创建 p12 密钥
- 在电源自动操作中:我选择了身份验证模式“客户端凭据”,对于字段 PFX,我给出了转换为 base64 的 p12 文件的输出 + 我还给出了与 p12 文件关联的密码。
但是当我测试流程时,我收到 401 未经授权的响应,说匿名调用者没有权限 storage.objecy.create。
有没有人做过类似的事情并可以帮助我?欢迎任何想法:-)。
谢谢
【问题讨论】:
标签:
google-cloud-platform
power-automate
gcs
【解决方案1】:
检查您的客户端或任何中间代理是否未将 Authorization 标头添加到对 Cloud Storage 的请求中。任何带有 Authorization 标头的请求,即使是空的,也会被验证,就好像它是身份验证尝试一样。这就是 401 授权问题的原因。
并检查下面的未经授权的原因和描述
AuthenticationRequiredRequesterPays
访问请求者付款存储桶需要身份验证。
授权错误
此错误表示对 Cloud Storage 的请求中提供的授权存在问题。以下是会发生这种情况的一些情况:
OAuth 访问令牌已过期,需要刷新。这可以通过提前刷新访问令牌来避免,但代码也可以捕获此错误,刷新令牌并自动重试。
提供了多个不匹配的授权;只选择一种模式。
OAuth 访问令牌的绑定项目与提供的开发者密钥关联的项目不匹配。
授权标头的格式无法识别或使用了不受支持的凭据类型。
锁定域名过期
从经过 cookie 验证的站点下载内容时,例如,使用存储浏览器,响应将重定向到临时域。如果在域过期后访问所述域,则会发生此错误。再次发出原始请求,并接收新的重定向。
必需的
访问了需要授权的非公共方法,但未在 Authorization 标头中或通过其他方式提供。
推荐文件