AWSSupport-EnableVPCFlowLogs - AWS Systems Manager 自動化手冊參考

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWSSupport-EnableVPCFlowLogs

Description

AWSSupport-EnableVPCFlowLogs Runbook 為您的. 中的子網路、網路界面和 VPC 建立 Amazon Virtual Private Cloud (Amazon VPC) 流程日誌。 AWS 帳戶如果您為子網路或 VPC 建立流程記錄,則會監控該子網路或 Amazon VPC 中的每個彈性網路界面。流程日誌資料會發佈到您指定的 Amazon CloudWatch 日誌日誌群組或 Amazon Simple Storage Service (Amazon S3) 儲存貯體。如需流程日誌的詳細資訊,請參閱 Amazon VPC 使用者指南中的 VPC 流程日誌

重要

將 CloudWatch 流程日誌發佈到日誌或 Amazon S3 時,需支付付費用日誌的資料擷取和存檔費用。如需詳細資訊,請參閱流程記錄定價

運行此自動化(控制台)

注意

選取s3做為記錄目的地時,請確定儲存貯體政策允許記錄傳遞服務存取值區。如需詳細資訊,請參閱流程日誌的 Amazon S3 儲存貯體許

文件類型

 自動化

擁有者

Amazon

平台

Linux,macOS, Windows

參數

  • AutomationAssumeRole

    類型:字串

    說明:(選用) 允許 Systems Manager 自動化代表您執行動作的 AWS Identity and Access Management (IAM) 角色的 Amazon 資源名稱 (ARN)。如果未指定角色,Systems Manager 自動化會使用啟動此 runbook 的使用者的權限。

  • DeliverLogsPermissionArn

    類型:字串

    說明:(選用) IAM 角色的 ARN,該角色允許 Amazon Elastic Compute Cloud (Amazon EC2) 將流程日誌發佈到您帳戶中的 CloudWatch 日誌日誌群組。如果您s3LogDestinationType參數指定,請勿提供此參數的值。有關詳情,請參閱 Amazon VPC 使用者指南中的將流程 CloudWatch 日誌發佈到日誌。

  • LogDestinationARN

    類型:字串

    描述:(選擇性) 流程記錄資料發佈至的資源 ARN。如果cloud-watch-logsLogDestinationType參數指定,請提供您要將流程 CloudWatch 記錄資料發佈至的記錄檔群組的 ARN。或者,請改用 LogGroupName。如果s3LogDestinationType參數指定,則必須為此參數指定要向其發佈流程日誌資料的 Amazon S3 儲存貯體的 ARN。您也可以在值區中指定資料夾。

    重要

    選擇s3為時,LogDestinationType您應確保所選儲存貯體遵循 Amazon S3 儲存貯體安全性最佳實務,並遵守組織和地理區域的資料隱私權法律。

  • LogDestinationType

    類型:字串

    有效值: cloud-watch-logs | 3

    描述:(必要) 決定發佈流程記錄資料的位置。如果指定LogDestinationTypes3,請勿指定DeliverLogsPermissionArnLogGroupName

  • LogFormat

    類型:字串

    說明:(選用) 要包含在流程記錄中的欄位,以及它們在記錄中的顯示順序。如需可用欄位的清單,請參閱 Amazon VPC 使用者指南中的流程記錄。如果您未為此參數提供值,則會使用預設格式建立流程記錄。如果您指定此參數,則必須至少指定一個欄位。

  • LogGroupName

    類型:字串

    說明:(選用) 發佈流程 CloudWatch 記錄資料的記錄檔群組名稱。如果您s3LogDestinationType參數指定,請勿提供此參數的值。

  • ResourceIds

    類型: StringList

    說明:(必要) 您要為其建立流程記錄的子網路、彈性網路介面或 VPC ID 的逗號分隔清單。

  • TrafficType

    類型:字串

    有效值:接受 | 拒絕 | 全部

    描述:(必要)要記錄的流量類型。您可以記錄資源接受或拒絕的流量,或所有流量的日誌。

必要的 IAM 許可

AutomationAssumeRole參數需要下列動作才能成功使用 runbook。

  • ssm:StartAutomationExecution

  • ssm:GetAutomationExecution

  • ec2:CreateFlowLogs

  • ec2:DeleteFlowLogs

  • ec2:DescribeFlowLogs

  • iam:AttachRolePolicy

  • iam:CreateRole

  • iam:CreatePolicy

  • iam:DeletePolicy

  • iam:DeleteRole

  • iam:DeleteRolePolicy

  • iam:GetPolicy

  • iam:GetRole

  • iam:TagRole

  • iam:PassRole

  • iam:PutRolePolicy

  • iam:UpdateRole

  • logs:CreateLogDelivery

  • logs:CreateLogGroup

  • logs:DeleteLogDelivery

  • logs:DeleteLogGroup

  • logs:DescribeLogGroups

  • logs:DescribeLogStreams

  • s3:GetBucketLocation

  • s3:GetBucketAcl

  • s3:GetBucketPublicAccessBlock

  • s3:GetBucketPolicyStatus

  • s3:GetBucketAcl

  • s3:ListBucket

  • s3:PutObject

樣品政策

{ "Version": "2012-10-17", "Statement": [ { "Sid": "SSM Execution Permissions", "Effect": "Allow", "Action": [ "ssm:StartAutomationExecution", "ssm:GetAutomationExecution" ], "Resource": "*" }, { "Sid": "EC2 FlowLogs Permissions", "Effect": "Allow", "Action": [ "ec2:CreateFlowLogs", "ec2:DeleteFlowLogs", "ec2:DescribeFlowLogs" ], "Resource": "arn:{partition}:ec2:{region}:{account-id}:{instance|subnet|vpc|transit-gateway|transit-gateway-attachment}/{resource ID}" }, { "Sid": "IAM CreateRole Permissions", "Effect": "Allow", "Action": [ "iam:AttachRolePolicy", "iam:CreateRole", "iam:CreatePolicy", "iam:DeletePolicy", "iam:DeleteRole", "iam:DeleteRolePolicy", "iam:GetPolicy", "iam:GetRole", "iam:TagRole", "iam:PassRole", "iam:PutRolePolicy", "iam:UpdateRole" ], "Resource": [ "arn:{partition}:iam::{account-id}:role/{role name}", "arn:{partition}:iam::{account-id}:role/AWSSupportCreateFlowLogsRole" ] }, { "Sid": "CloudWatch Logs Permissions", "Effect": "Allow", "Action": [ "logs:CreateLogDelivery", "logs:CreateLogGroup", "logs:DeleteLogDelivery", "logs:DeleteLogGroup", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": [ "arn:{partition}:logs:{region}:{account-id}:log-group:{log group name}", "arn:{partition}:logs:{region}:{account-id}:log-group:{log group name}:*" ] }, { "Sid": "S3 Permissions", "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetBucketPublicAccessBlock", "s3:GetAccountPublicAccessBlock", "s3:GetBucketPolicyStatus", "s3:GetBucketAcl", "s3:ListBucket", "s3:PutObject" ], "Resource": [ "arn:{partition}:s3:::{bucket name}", "arn:{partition}:s3:::{bucket name}/*" ] } ] }

文件步驟

  • aws:branch-根據為LogDestinationType參數指定的值進行分支。

  • aws:executeScript-檢查目標 Amazon Simple Storage Service (Amazon S3) 是否可能授與其物件的public取或寫入存取權限。

  • aws:executeScript-如果未為參數指定值且已為LogDestinationARN參數指定,cloud-watch-logs則建立記錄群組。LogDestinationType

  • aws:executeScript-根據 runbook 參數中指定的值建立流程記錄。