创建 VSS 快照的托管策略 - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

创建 VSS 快照的托管策略

Amazon 托管策略是 Amazon 为 Amazon 客户提供的独立策略。Amazon 托管策略旨在为常见使用案例授予权限。您无法更改 Amazon 托管策略中定义的权限。但是,您可以复制该策略并将其用作特定于您的使用案例的客户管理型策略的基准。

有关 Amazon 托管策略的更多信息,请参阅《IAM 用户指南》中的Amazon 托管策略

要使用 AWSEC2VssSnapshotPolicy 策略(托管策略),您可以将其附加到 IAM 角色,该角色已附加到您的 EC2 Windows 实例。此策略允许 EC2 VSS 解决方案为亚马逊机器映像(AMI)和 EBS 快照创建和添加标签。要附加策略,请参阅 将启用 VSS 的快照策略附加到实例配置文件

AWSEC2VssSnapshotPolicy 授予的权限

AWSEC2VssSnapshotPolicy 策略包含以下 Amazon EC2 权限:

  • ec2:CreateTags – 向 EBS 快照和 AMI 添加标签,以帮助识别和分类资源。

  • ec2:DescribeInstanceAttribute – 检索附加到目标实例的 EBS 卷和相应的块设备映射。

  • ec2:CreateSnapshots – 创建 EBS 卷的快照。

  • ec2:CreateImage – 从正在运行的 EC2 实例创建 AMI。

  • ec2:DescribeImages – 检索 EC2 AMI 和快照的信息。

  • ec2:DescribeSnapshots – 确定快照的创建时间和状态以验证应用程序一致性。

策略示例

以下是 AWSEC2VssSnapshotPolicy 策略的示例。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DescribeInstanceInfo", "Effect": "Allow", "Action": [ "ec2:DescribeInstanceAttribute" ], "Resource": [ "arn:aws:ec2:*:*:instance/*" ], "Condition": { "StringLike": { "ec2:SourceInstanceARN": "*${ec2:InstanceId}" } } }, { "Sid": "CreateSnapshotsWithTag", "Effect": "Allow", "Action": [ "ec2:CreateSnapshots" ], "Resource": [ "arn:aws:ec2:*:*:snapshot/*" ], "Condition": { "StringLike": { "aws:RequestTag/AwsVssConfig": "*" } } }, { "Sid": "CreateSnapshotsAccessInstance", "Effect": "Allow", "Action": [ "ec2:CreateSnapshots" ], "Resource": [ "arn:aws:ec2:*:*:instance/*" ], "Condition": { "StringLike": { "ec2:SourceInstanceARN": "*${ec2:InstanceId}" } } }, { "Sid": "CreateSnapshotsAccessVolume", "Effect": "Allow", "Action": [ "ec2:CreateSnapshots" ], "Resource": [ "arn:aws:ec2:*:*:volume/*" ] }, { "Sid": "CreateImageWithTag", "Effect": "Allow", "Action": [ "ec2:CreateImage" ], "Resource": [ "arn:aws:ec2:*:*:snapshot/*", "arn:aws:ec2:*:*:image/*" ], "Condition": { "StringLike": { "aws:RequestTag/AwsVssConfig": "*" } } }, { "Sid": "CreateImageAccessInstance", "Effect": "Allow", "Action": [ "ec2:CreateImage" ], "Resource": [ "arn:aws:ec2:*:*:instance/*" ], "Condition": { "StringLike": { "ec2:SourceInstanceARN": "*${ec2:InstanceId}" } } }, { "Sid": "CreateTagsOnResourceCreation", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": [ "arn:aws:ec2:*:*:snapshot/*", "arn:aws:ec2:*:*:image/*" ], "Condition": { "StringEquals": { "ec2:CreateAction": [ "CreateImage", "CreateSnapshots" ] } } }, { "Sid": "CreateTagsAfterResourceCreation", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": [ "arn:aws:ec2:*:*:snapshot/*", "arn:aws:ec2:*:*:image/*" ], "Condition": { "StringLike": { "ec2:ResourceTag/AwsVssConfig": "*" }, "ForAllValues:StringEquals": { "aws:TagKeys": [ "AppConsistent", "Device" ] } } }, { "Sid": "DescribeImagesAndSnapshots", "Effect": "Allow", "Action": [ "ec2:DescribeImages", "ec2:DescribeSnapshots" ], "Resource": "*" } ] }

简化特定使用案例的权限(高级)

AWSEC2VssSnapshotPolicy 托管策略包括创建启用 VSS 的快照的所有方式的权限。您可创建仅包含所需权限的自定义策略。

使用案例:创建 AMI,使用案例:使用 Amazon Backup 服务

如果您只使用 CreateAmi 选项,或者仅通过 Amazon Backup 服务创建启用 VSS 的快照,则可以按如下方式简化策略语句。

  • 忽略由以下语句 ID(SID)标识的策略语句:

    • CreateSnapshotsWithTag

    • CreateSnapshotsAccessInstance

    • CreateSnapshotsAccessVolume

  • 按如下方式调整 CreateTagsOnResourceCreation 语句:

    • 从资源中删除 arn:aws:ec2:*:*:snapshot/*

    • ec2:CreateAction 条件中删除 CreateSnapshots

  • 调整 CreateTagsAfterResourceCreation 语句以从资源中删除 arn:aws:ec2:*:*:snapshot/*

  • 调整 DescribeImagesAndSnapshots 语句以从语句操作中删除 ec2:DescribeSnapshots

使用案例:仅限快照

如果您不使用 CreateAmi 选项,则可以按如下方式简化策略语句。

  • 忽略由以下语句 ID(SID)标识的策略语句:

    • CreateImageAccessInstance

    • CreateImageWithTag

  • 按如下方式调整 CreateTagsOnResourceCreation 语句:

    • 从资源中删除 arn:aws:ec2:*:*:image/*

    • ec2:CreateAction 条件中删除 CreateImage

  • 调整 CreateTagsAfterResourceCreation 语句以从资源中删除 arn:aws:ec2:*:*:image/*

  • 调整 DescribeImagesAndSnapshots 语句以从语句操作中删除 ec2:DescribeImages

注意

为确保您的自定义策略按预期执行,建议您定期查看托管策略并将其更新纳入其中。