Skip to main content
此產品有較新版本可以使用。
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

StorageGRID S3 REST API 群組原則範例

使用本節中的範例為群組建置 StorageGRID 存取原則。

群組原則指定該原則所附加群組的存取權限。原則中沒有 Principal 元素,因為它是隱含的。群組原則可使用 Tenant Manager 或 API 進行設定。

範例:使用 Tenant Manager 設定群組原則

在 Tenant Manager 中新增或編輯群組時,您可以選擇群組原則來確定該群組成員將擁有哪些 S3 存取權限。請參閱"為 S3 租戶建立群組"

  • 無 S3 存取權限:預設選項。此群組中的使用者無法存取 S3 資源,除非透過儲存桶原則授予存取權限。如果選擇此選項,預設只有 root 使用者可以存取 S3 資源。

  • 唯讀存取:此群組中的使用者對 S3 資源擁有唯讀存取。例如,此群組中的使用者可以列出物件並讀取物件資料、中繼資料和標籤。選擇此選項後,唯讀群組原則的 JSON 字串將顯示在文字方塊中。您無法編輯此字串。

  • 完全存取:此群組中的使用者擁有對 S3 資源(包括儲存桶)的完全存取權。選取此選項後,文字方塊中將顯示完全存取群組原則的 JSON 字串。您無法編輯此字串。

  • Ransomware Mitigation:此範例原則適用於此租戶的所有儲存桶。此群組中的使用者可以執行常見操作,但無法從已啟用物件版本控制的儲存桶中永久刪除物件。

    擁有「管理所有儲存桶」權限的 Tenant Manager 使用者可以置換此群組原則。將「管理所有儲存桶」權限限制為受信任的用戶端,並在可用時使用多因素驗證 (MFA)。

  • 自訂:群組內使用者將獲得您在文字方塊中指定的權限。

範例:允許群組對所有儲存桶擁有完全存取

在本例中,除非儲存桶原則明確拒絕,否則群組的所有成員都可以完全存取租戶帳戶擁有的所有儲存桶。

{
  "Statement": [
    {
      "Action": "s3:*",
      "Effect": "Allow",
      "Resource": "arn:aws:s3:::*"
    }
  ]
}

範例:允許群組對所有儲存桶進行唯讀存取

在這個範例中,除非儲存桶原則明確禁止,否則群組中的所有成員都對 S3 資源擁有唯讀存取權限。例如,該群組中的使用者可以列出物件並讀取物件資料、中繼資料和標籤。

{
  "Statement": [
    {
      "Sid": "AllowGroupReadOnlyAccess",
      "Effect": "Allow",
      "Action": [
        "s3:ListAllMyBuckets",
        "s3:ListBucket",
        "s3:ListBucketVersions",
        "s3:GetObject",
        "s3:GetObjectTagging",
        "s3:GetObjectVersion",
        "s3:GetObjectVersionTagging"
      ],
      "Resource": "arn:aws:s3:::*"
    }
  ]
}

例如:允許群組成員僅對其在儲存桶中的「資料夾」擁有完全存取

在本例中,群組成員僅可列出及存取指定儲存桶中屬於他們的特定資料夾(鍵前綴)。請注意,在確定這些資料夾的隱私等級時,應考慮其他群組原則和儲存桶原則中的存取權限。

{
  "Statement": [
    {
      "Sid": "AllowListBucketOfASpecificUserPrefix",
      "Effect": "Allow",
      "Action": "s3:ListBucket",
      "Resource": "arn:aws:s3:::department-bucket",
      "Condition": {
        "StringLike": {
          "s3:prefix": "${aws:username}/*"
        }
      }
    },
    {
      "Sid": "AllowUserSpecificActionsOnlyInTheSpecificUserPrefix",
      "Effect": "Allow",
      "Action": "s3:*Object",
      "Resource": "arn:aws:s3:::department-bucket/${aws:username}/*"
    }
  ]
}