AWS S3

整合版本:4.0

應用實例

  1. 管理值區
  2. 從 bucket 下載檔案
  3. 把檔案上傳到 Bucket

在 Google Security Operations 中設定 AWS S3 整合

如需在 Google SecOps 中設定整合功能的詳細操作說明,請參閱「設定整合功能」。

整合參數

請使用下列參數設定整合:

參數顯示名稱 類型 預設值 為必填項目 說明
執行個體名稱 字串 不適用 您要設定整合的執行個體名稱。
說明 字串 不適用 執行個體的說明。
AWS 存取金鑰 ID 字串 不適用 用於整合的 AWS 存取金鑰 ID。
AWS 密鑰 密碼 不適用 用於整合的 AWS 私密金鑰。
AWS 預設區域 字串 不適用 要在整合中使用的 AWS 預設區域,例如 us-west-2。
遠端執行 核取方塊 已取消勾選 勾選這個欄位,即可遠端執行設定的整合項目。勾選後,系統會顯示選取遠端使用者 (服務專員) 的選項。

動作

乒乓

說明

在 Google Security Operations Marketplace 分頁的整合設定頁面中,使用提供的參數測試與 AWS S3 的連線。

用途

測試連線。

執行時間

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_success True/False is_success:False
案件總覽
結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

如果成功:

「已使用提供的連線參數,成功連線至 AWS S3 伺服器!」

動作應會失敗並停止執行應對手冊:

如果未成功:

「無法連線至 AWS S3 伺服器!Error is {0}".format(exception.stacktrace)

一般

列出值區

說明

從 AWS S3 擷取儲存空間清單。

執行時間

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_success True/False is_success:False
JSON 結果
{
    "Buckets": [
        {
            "CreationDate": %Y-%m-%dT%H:%M:%S,
            "Name": "testsiemplify"
        }
    ],
    "Owner": {
        "DisplayName": "lab_aws",
        "ID": "935dc3fed0e1d2c5b12242cf9927370824f2438681a2d3c0523f254dbde41aba"
    },
案件總覽
結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

如果狀態碼 == 200 (is_success = true)「Successfully listed available buckets in AWS S3」(已成功列出 AWS S3 中的可用 bucket)。

如果其他狀態碼 (is_success=false):「動作無法列出 AWS S3 中的可用值區。

動作應會失敗並停止執行應對手冊:

如果發生重大錯誤,例如憑證錯誤、無法連線至伺服器或其他問題:「Error executing action "List Buckets" (執行「列出 Bucket」動作時發生錯誤)。原因:{0}''.format(error.Stacktrace)

一般

取得值區政策

說明

從 AWS S3 擷取值區政策相關資訊。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
值區名稱 字串 不適用 指定要從哪個值區擷取政策資訊。

執行時間

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_success True/False is_success:False
JSON 結果
{
    "Policy": {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "AddPerm",
                "Effect": "Allow",
                "Principal": "*",
                "Action": "s3:GetObject",
                "Resource": "arn:aws:s3:::testsiemplify/*"
            }
        ]
    }
案件總覽
結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

If status code == 200 (is_success = true) "Successfully retrieved information about the policy of the "{0}" bucket in AWS S3".format(bucket_name)

如果出現其他狀態碼 (is_success=false):「Action wasn't able to return information about the policy of the '{0}' bucket in AWS S3」(動作無法傳回 AWS S3 中「{0}」儲存空間的政策資訊)。format(bucket_name)

動作應會失敗並停止執行應對手冊:

如果發生嚴重錯誤,例如憑證錯誤、無法連線至伺服器或其他問題:「Error executing action "Get Bucket Policy"。原因:{0}''.format(error.Stacktrace)

一般

設定值區政策

說明

在 AWS S3 的儲存空間中設定政策。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
值區名稱 字串 不適用 指定要更新政策的值區名稱。
政策 JSON 物件 字串 不適用 指定要為值區設定的政策 JSON 物件。如需範例,請參閱 https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html。

執行時間

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_success True/False is_success:False
JSON 結果
bucket_policy = {
    'Version': '2012-10-17',
    'Statement': [{
        'Sid': 'AddPerm',
        'Effect': 'Allow',
        'Principal': '*',
        'Action': ['s3:GetObject'],
        'Resource': f'arn:aws:s3:::{bucket_name}/*'
    }]
}
案件總覽
結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

如果狀態碼 == 204 (is_success = true)「Successfully updated policy of the "{0}" bucket in AWS S3」。format(bucket_name)

如果其他狀態碼 (is_success=false): "Action wasn't able to update the policy of the '{0}' bucket in AWS S3".format(bucket_name)

動作應會失敗並停止執行應對手冊:

如果發生嚴重錯誤,例如憑證錯誤、無法連線至伺服器等:「Error executing action "Set Bucket Policy". 原因:{0}''.format(error.Stacktrace)

列出 Bucket 物件

說明

可讓使用者停用使用者帳戶。要求主體包含要停用的使用者。帳戶的帳戶啟用屬性應設為 false。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
值區名稱 字串 不適用 指定要從哪個值區擷取物件。
要傳回的物件數量上限 整數 不適用 指定要傳回的物件數量。

執行時間

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_success True/False is_success:False
JSON 結果
"Contents": [
        {
            "Key": "text.txt",
            "LastModified": %Y-%m-%dT%H:%M:%S,
            "ETag": "d41d8cd98f00b204e9800998ecf8427e",
            "Size": 0,
            "StorageClass": "STANDARD",
            "Owner": {
                "DisplayName": "lab_aws",
                "ID": "935dc3fed0e1d2c5b12242cf9927370824f2438681a2d3c0523f254dbde41aba"
            }
        },
        {
            "Key": "text_1.txt",
            "LastModified": %Y-%m-%dT%H:%M:%S,
            "ETag": "d41d8cd98f00b204e9800998ecf8427e",
            "Size": 0,
            "StorageClass": "STANDARD",
            "Owner": {
                "DisplayName": "lab_aws",
                "ID": "935dc3fed0e1d2c5b12242cf9927370824f2438681a2d3c0523f254dbde41aba"
            }
        }
    ]
案件總覽
結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

If status code == 200 (is_success = true) "Successfully returned objects of the "{0}" bucket in AWS S3".format(bucket_name)

如果其他狀態碼 (is_success=false):「動作無法在 AWS S3 中傳回 '{0}' 值區的物件」。format(bucket_name)

動作應會失敗並停止執行應對手冊:

如果發生重大錯誤,例如憑證錯誤、無法連線至伺服器或其他問題:「Error executing action "List Bucket Objects". 原因:{0}''.format(error.Stacktrace)

一般
案件總覽表格

表格名稱:「{0}」值區物件

欄:

  • Key (對應為 Key)
  • 上次修改時間 (對應為 LastModified)
  • 大小 (位元組) (對應為「大小」)
  • 擁有者 (對應為擁有者/DisplayName)
  • 儲存空間類別 (對應為儲存空間類別)
一般

從值區下載檔案

說明

從 AWS S3 的 bucket 下載檔案。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
Bucket 檔案路徑 字串 s3://{bucket_name}/{file_name} 指定值區中檔案的路徑。例如:s3://siemplify/syslog/log.txt
下載路徑 字串 不適用 指定檔案的下載路徑。

執行時間

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_success True/False is_success:False
JSON 結果
{
"bucket_file_path": "s3://testsiemplify/test/123.txt"
"download_path": "/usr/bin/share/download.txt"
}

案件總覽

結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

如果狀態碼 == 200 (is_success = true) "Successfully downloaded '{0}' from AWS S3".format(bucket_file_path)

如果其他狀態碼 (is_success=false):「動作無法從 AWS S3 下載 '{0}'。原因:下載路徑中已有相同檔案。」

動作應會失敗並停止執行應對手冊:

如果發生致命錯誤,例如憑證錯誤、無法連線至伺服器、SDK 錯誤等:「Error executing action "Download File From Bucket". 原因:{0}''.format(error.Stacktrace)

一般

將檔案上傳至 bucket

說明

將檔案上傳至 AWS S3 中的 bucket。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
檔案路徑 字串 不適用 指定要上傳的檔案路徑。
值區上傳路徑 字串 s3://{bucket_name}/{file_name} 在 bucket 中指定路徑,指出要上傳路徑的位置。例如:s3://siemplify/syslog/log.txt

執行時間

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_success True/False is_success:False
JSON 結果
{
"bucket_upload_path": "s3://testsiemplify/test/123.txt"
"file_path": "/usr/bin/share/download.txt"
}
案件總覽
結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

If status code == 200 (is_success = true) "Successfully uploaded '{0}' to AWS S3 {1} bucket".format(file_path, bucket name aka first string after s3://)

如果檔案不存在 (is_success = false)「Action wasn't able to upload '{0}' to AWS S3. 原因:該上傳路徑的檔案不存在。」

動作應會失敗並停止執行應對手冊:

如果發生嚴重錯誤,例如憑證錯誤、無法連線至伺服器、SDK 錯誤等:「Error executing action "Upload File To Bucket". 原因:{0}''.format(error.Stacktrace)

一般

還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。