本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWSSupport-EnableVPCFlowLogs
描述
AWSSupport-EnableVPCFlowLogs
运行手册为 AWS 账户中的子网、网络接口和 VPC 创建 Amazon Virtual Private Cloud (Amazon VPC)流日志。如果您为子网或 VPC 创建流日志,则会监控该子网或 Amazon VPC 中的每个网络接口。流日志数据将发布到亚马逊 CloudWatch 日志组或您指定的亚马逊简单存储服务 (Amazon S3) 存储桶。有关流日志的更多信息,请参阅《Amazon VPC 用户指南》中的 VPC 流日志。
重要
当您将流日志发布到 Logs 或 Amazon S3 时,会收取已售日志的数据摄取 CloudWatch 和存档费用。有关更多信息,请参阅流日志定价
注意
选择s3
作为日志目标时,请确保存储桶策略允许日志传输服务访问存储桶。有关更多信息,请参阅流日志的 Amazon S3 存储桶权限
文档类型
自动化
所有者
Amazon
平台
Linux、macOS、Windows
参数
-
AutomationAssumeRole
类型:字符串
描述:(可选)允许 Systems Manager Automation 代表您执行操作 AWS Identity and Access Management (IAM) 角色的 Amazon 资源名称(ARN)。如果未指定角色,Systems Manager Automation 将使用启动此运行手册的用户的权限。
-
DeliverLogsPermissionArn
类型:字符串
描述:(可选)允许亚马逊弹性计算云 (Amazon EC2) 将流日志发布到您账户中的日志组的 IAM 角色的 ARN。 CloudWatch 如果您为
LogDestinationType
参数指定了s3
,则不要为该参数提供值。有关更多信息,请参阅 Amazon VPC 用户指南中的向 CloudWatch 日志发布流日志。 -
LogDestinationARN
类型:字符串
描述:(可选)要向其发布流日志数据的资源的 ARN。如果
cloud-watch-logs
为LogDestinationType
参数指定,请提供要向其发布流 CloudWatch 日志数据的日志组的 ARN。或者,改用LogGroupName
。如果为LogDestinationType
参数指定了s3
,则必须为此参数指定您要向其发布流日志数据的 Amazon S3 存储桶的 ARN。您还可以指定存储桶中的文件夹。重要
选择
s3
作为时,LogDestinationType
您应确保所选存储段遵循 Amazon S3 存储桶安全最佳实践,并遵守您所在组织和地理区域的数据隐私法。 -
LogDestinationType
类型:字符串
有效值: cloud-watch-logs | s3
描述:(必需)确定流日志数据的发布位置。如果将
LogDestinationType
指定为s3
,则不要指定DeliverLogsPermissionArn
或LogGroupName
。 -
LogFormat
类型:字符串
描述:(可选)要包含在流日志中的字段,以及它们在记录中出现的顺序。有关可用字段的列表,请参阅《Amazon VPC 用户指南》中的流日志记录。如果不为该参数指定值,则使用默认的格式创建流日志。如果指定此参数,则必须至少指定一个字段。
-
LogGroupName
类型:字符串
描述:(可选)发布流 CloudWatch 日志数据的日志日志组的名称。如果您为
LogDestinationType
参数指定了s3
,则不要为该参数提供值。 -
ResourceIds
类型: StringList
描述:(必需)要为其创建流日志的子网、弹性网络接口或 VPC 的 ID 列表(以逗号分隔)。
-
TrafficType
类型:字符串
有效值:ACCEPT | REJECT | ALL
描述:(必需)要记录的流量的类型。您可以记录资源接受或拒绝的流量,或者记录所有流量。
所需的 IAM 权限
AutomationAssumeRole
参数需要执行以下操作才能成功使用运行手册。
-
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 S3) Simple Storage Service 是否有可能授予对其对象的读取或public
写入权限。 -
aws:executeScript
- 在没有为LogDestinationARN
参数指定任何值但为LogDestinationType
参数指定了cloud-watch-logs
时创建一个日志组值。 -
aws:executeScript
- 根据运行手册参数中指定的值创建流日志。