What's the risk in using project-id in GCS bucket names?

Cal*_*ene 5 google-cloud-storage google-cloud-platform

我一直在我的 GCS 存储桶名称中使用 project-id 作为前缀,以便轻松获得唯一名称。当我阅读GCS 最佳实践时

它明确表示不要使用项目名称或项目编号(与 projectId:s 无关)但另一方面,当我启动 GAE 时,会自动创建两个包含项目 ID 的存储桶。

是谷歌没有遵循他们自己的最佳实践还是我错过了什么?

由于存储桶名称是公开可见的,因此在存储桶名称中包含 projectId 的最大风险是我向有关该项目的潜在攻击者提供线索吗?

Dou*_*son 6

在某种程度上,谷歌确实似乎没有遵循其最佳实践(如该页面所列,假设项目名称和编号是指 GCP 名称和编号)。位于 GCP 之上的 Firebase 项目的默认存储桶也会执行相同的操作。

您链接的文档说明了避免使用项目名称的原因:

...因为任何人都可以探测桶的存在...

这个想法是,如果有人知道您的项目名称,他们可以使用它来构建存储桶的全名,并在攻击中使用该知识来获取其内容。但是,如果您的安全配置完全正确,那么知道存储桶的名称就不成问题。对于 Firebase 项目尤其如此,该项目使用安全规则来确定谁应该能够访问哪些对象。

我将文档中的建议作为一种通过模糊性实现的安全措施,以防止攻击者猜测您的存储桶的名称及其任何内容。但如果这不是您关心的问题,请忽略它。