Google cloud platform 为语音API设置gs bucket对象的权限
我想把一个长的音频文件转录成文本 所以我创建了一个bucket,并使用Google cloud platform 为语音API设置gs bucket对象的权限,google-cloud-platform,google-cloud-storage,google-speech-api,gsutil,Google Cloud Platform,Google Cloud Storage,Google Speech Api,Gsutil,我想把一个长的音频文件转录成文本 所以我创建了一个bucket,并使用 gsutil acl set private gs://bucket 然后,我设置了从特定帐户只能上传的访问权限 gsutil acl ch-umyaccount@provider.com:WRITE gs://bucket 然后我将服务帐户的读取权限设置为bucket gsutil acl ch-uprojectname@projectname-a、 iam.gserviceaccount.com:R gs://bucke
gsutil acl set private gs://bucket
然后,我设置了从特定帐户只能上传的访问权限
gsutil acl ch-umyaccount@provider.com:WRITE gs://bucket
然后我将服务帐户的读取权限设置为bucket
gsutil acl ch-uprojectname@projectname-a、 iam.gserviceaccount.com:R gs://bucket/
然后,我使用python程序发送了一个请求,但它返回403
,但如果我将对象设置为public,它将返回200
,但我不想将文件的权限设置为public
还有什么我能做的吗
是否必须将音频文件公开以生成文本
我按照此设置服务帐户权限:通过ACL授予用户对bucket的读取权限,而不仅仅是列出内容。 您可以对对象本身设置ACL读取权限:
gsutil acl ch -u projectname@projectname-a.iam.gserviceaccount.com:R gs://bucket/file.xxx
或者您可以授权访问整个存储桶的内容。您的python程序在哪里运行?你的本地机器?应用程序引擎应用程序?它正在试图写入bucket吗?@LundinCast Python程序正在本地运行,我正在将bucket对象位置作为有效负载传递。它只是将POST请求发送到speech API