我正在尝试连接 FTC 的 fmltc(https://github.com/FIRST-Tech-Challenge/fmltc) 使用 Google Cloud 并训练数据集进行对象识别。我能够登录 fmltc,但立即收到以下错误:“错误:iam.gserviceaccount.com 没有对 Google Cloud Storage 存储桶的 storage.buckets.get 访问权限。”
我是 Google Cloud 的新手。我在 Google 上搜索了错误,但无法解决问题。我也按照 ReadMe.md 中的说明进行操作https://github.com/FIRST-Tech-Challenge/fmltc小心。
我搜索后发现“storage.buckets.get”是一种权限。由于此服务帐户已经是“计算机存储管理员”,因此我找不到其他哪个角色可以授予此权限。我不知道是否有其他角色与“存储”相关。如果有人能给我提示,我将不胜感激。
其次,我尝试创建存储桶“XXXXXX.iam.gserviceaccount.com”。我得到了以下信息:
存储桶名称只能使用点 (.) 来构成有效域名(例如 example.com)。如果您尚未验证您有权使用此域名,则必须验证才能创建此存储桶。
这个错误让我认为我不应该这样做。也许我需要创建一种 Google Cloud Storage 存储桶,我可以为其分配 storage.buckets.get 的权限。但我不知道随机存储桶如何连接到“xxxx.iam.gserviceaccount.com”服务帐户。如果有人能就此错误分享建议和意见,我将不胜感激。
谢谢你!
答案1
有多个具有以下权限的 IAM 角色storage.buckets.get
:
- 存储旧版存储桶读取器
- 存储旧版存储桶写入器
- 存储旧存储桶所有者
- 存储管理员
你提到了角色计算机存储管理员,确实存在。你的意思是存储管理员?
如果你拥有正确的角色,但收到没有权限的错误,那么你可能指定了错误的存储桶名称。
您提到的错误:
Error: iam.gserviceaccount.com does not have storage.buckets.get access to the Google Cloud Storage bucket.
iam.gserviceaccount.com
不是有效的服务帐户电子邮件地址。请仔细检查您指定的内容和错误消息。