如何简单地将其设为私有 public?无需为我的脚本更改任何内容

How to simply make it private for general public? Without changing anything for my script

我是 AWS 的新手。我有以下数据:

bucket ARN: arn:aws:s3:::my-bucket555
user: my-user-555
Access Key ID: "some key"
Secret access key: "some secret key"

我有这个桶的政策:

      {
      "Version": "2012-10-17",
      "Statement": [
          {
              "Effect": "Allow",
              "Principal": {
                  "AWS": "*"
              },
              "Action": "s3:ListBucket",
              "Resource": "arn:aws:s3:::my-bucket555"
          },
          {
              "Effect": "Allow",
              "Principal": {
                  "AWS": "*"
              },
              "Action": [
                  "s3:PutObject",
                  "s3:GetObject",
                  "s3:DeleteObject"
              ],
              "Resource": "arn:aws:s3:::my-bucket555/*"
          }
      ]
  }

而且我在 VPS 上有一个 bash 脚本,它使用标准 cli 实用程序 API 通过 API 对一些员工使用我的 AWS 帐户 [=30] =] 的亚马逊。 和 API 键

问题: 我的存储桶在“https://s3.eu-west-2.amazonaws.com/my-bucket555”公开可用。 url 被混淆了。

问题:如何实现 private/non-public 并且仍然允许我的 bash 脚本继续执行它正在执行的工作?

你有几种方法可以做到这一点。

首先,将您的存储桶设为私有。

备选方案

  1. 创建一个 IAM 组并为其设置该策略,在该组中创建一个用户并在您的 bash 脚本中使用访问密钥。
  2. 向策略添加 Condition 以仅接受来自特定 IP 的访问。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "s3:ListBucket",
      "Resource": "arn:aws:s3:::my-bucket555",
      "Condition": {
        "ForAnyValue:IpAddress": {
          "aws:SourceIp": [
            "210.75.12.75/16",
            "210.75.24.75/16"
          ]
        }
      }
    },
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": [
        "s3:PutObject",
        "s3:GetObject",
        "s3:DeleteObject"
      ],
      "Resource": "arn:aws:s3:::my-bucket555/*",
      "Condition": {
        "ForAnyValue:IpAddress": {
          "aws:SourceIp": [
            "210.75.12.75/16",
            "210.75.24.75/16"
          ]
        }
      }
    }
  ]
}