Google cloud storage 基于IP地址的Google存储访问

Google cloud storage 基于IP地址的Google存储访问,google-cloud-storage,Google Cloud Storage,有没有一种方法可以根据Google云存储桶的IP地址授予其访问权限 在Amazon s3上,您可以在访问策略中这样设置: "Condition" : { "IpAddress" : { "aws:SourceIp" : ["192.168.176.0/24","192.168.143.0/24"] } } 我不想使用已签名的url。更新:现在可以使用 不,这目前不可能 目前有一种方法可以通过IP地址限制google云存储桶。VPC服务控制[1]

有没有一种方法可以根据Google云存储桶的IP地址授予其访问权限

在Amazon s3上,您可以在访问策略中这样设置:

"Condition" :  {
       "IpAddress" : {
          "aws:SourceIp" : ["192.168.176.0/24","192.168.143.0/24"]
      }
}

我不想使用已签名的url。

更新:现在可以使用


不,这目前不可能


目前有一种方法可以通过IP地址限制google云存储桶。

VPC服务控制[1]允许用户围绕google云平台资源(如云存储桶(以及其他一些)定义安全边界,以限制VPC内的数据,并帮助缓解数据外泄风险


[1]

本页上更新的答案仅部分正确,不建议用于云存储对象访问控制的用例

访问上下文管理器(ACM)定义允许访问的规则(例如IP地址)

VPC服务控制在项目周围创建一个“孤岛”,可以附加ACM规则。这些规则是“入口”规则,而不是“出口”规则,意思是“该IP上的任何人都可以使用正确的IAM权限进入项目中的所有资源”


指定IP地址的ACM规则将允许该IP地址访问该项目拥有的所有云存储对象和所有其他受保护资源。这通常不是预期的结果。不能将IP地址规则应用于对象,只能应用于项目中的所有对象。专有网络服务控制旨在防止数据从项目中流出,而不是允许不受信任的匿名用户访问项目的资源。

我最近代表客户使用专有网络服务控制来尝试实现这一点。您不能使用VPC服务控件在单个存储桶上列出ip地址的白名单。Jterrace是对的。目前还没有这样的解决办法。但是,使用VPC服务控制,您可以在给定的项目中将Google云存储(GCS)服务作为一个整体绘制服务周界,然后对项目中的服务周界应用访问级别,以允许ip地址/ip地址范围访问服务(以及其中的资源)。这意味着在项目内创建的任何新桶都将在服务范围内创建,因此将由应用于服务范围的访问级别进行管理。所以你可能希望这是这个项目中唯一的一个桶

请注意,服务周界仅影响您指定的服务。它不能保护整个项目

开发人员权限:

实现这一目标的步骤:

  • 在您选择的项目中,使用VPC服务控件来控制整个Google云存储服务
  • 使用“访问上下文管理器”为您想要的ip地址以及将有权访问该服务的用户/组设置白名单
  • 在上一步中创建(此更改需要30分钟才能生效)

  • 注意:如果可能的话,最佳实践是使用服务帐户或用户/组ACL提供对bucket的访问。我知道情况并非总是如此。

    情况仍然如此吗?情况仍然如此。情况仍然如此。不再如此。请看我对这个问题的回答。@NathanGriffiths我写了一篇关于如何使用VPC服务控件以及一些地形配置来实现这一点的教程:。希望有帮助:)目前有一个限制谷歌云存储桶的IP地址。