$ gsutil acl get gs://mybucket/xyz.css
GSResponseError: status=403, code=AccessDenied, reason="Forbidden", message="Access denied.", detail="Access denied to mybucket/xyz.css"
我应该如何诊断问题?
我是桶的主人。但正如答案所指出的,我不是该对象的所有者。
$ gsutil acl get gs://mybucket/xyz.css
GSResponseError: status=403, code=AccessDenied, reason="Forbidden", message="Access denied.", detail="Access denied to mybucket/xyz.css"
我应该如何诊断问题?
我是桶的主人。但正如答案所指出的,我不是该对象的所有者。
只有被授予 FULL_CONTROL 访问权限的用户才能读取对象的 ACL。你知道是谁创建了这个对象吗?如果是这样,您可以要求该人对其运行 gsutil acl get 命令;然后你可以看到谁被授予 FULL_CONTROL 访问权限。
要查看对象的 ACL,您必须具有该对象的 FULL_CONTROL 权限(存储桶权限无关紧要)。有多种原因可能会导致您无法访问此对象,但最明显的原因是您使用 gsutil 的帐户对该对象没有 FULL_CONTROL 权限。拥有对象的帐户始终具有 FULL_CONTROL 权限。
您是否创建了此存储桶?你创建了这个对象吗?您是否使用配置 gsutil 的同一帐户创建它们?也许您已经使用服务帐户设置了 gsutil,但该对象归您的用户帐户所有?
以下是导致这种情况的一些可能原因:
以下是一些随机的故障排除思路: