AWSSupport-ShareRDSSnapshot - AWS Systems Manager 自动化运行手册参考

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWSSupport-ShareRDSSnapshot

描述

AWSSupport-ShareRDSSnapshot 运行手册为知识中心文章如何与其他账户共享加密的 Amazon RDS 数据库快照?概述的过程提供了自动解决方案。如果您的 Amazon Relational Database Service (Amazon RDS) 快照使用默认快照进行加密 AWS 托管式密钥,则无法共享该快照。在这种情况下,您必须使用客户托管密钥复制该快照,然后将其与目标账户共享。此自动化使用您在 SnapshotName 参数中指定的值或为所选 Amazon RDS 数据库实例或集群找到的最新快照执行这些步骤。

注意

如果您没有为KMSKey参数指定值,则自动化会在您的账户中创建一个用于加密快照的新 AWS KMS 客户托管密钥。

运行此自动化(控制台)

文档类型

自动化

所有者

Amazon

平台

数据库

参数

  • AccountIds

    类型: StringList

    描述:(必需)要与之共享快照的账户 ID 列表(以逗号分隔)。

  • AutomationAssumeRole

    类型:字符串

    描述:(可选)允许 Systems Manager Automation 代表您执行操作 AWS Identity and Access Management (IAM) 角色的 Amazon 资源名称(ARN)。如果未指定角色,Systems Manager Automation 将使用启动此运行手册的用户的权限。

  • 数据库

    类型:字符串

    描述:(必需)要共享其快照的 Amazon RDS 数据库实例或集群的名称。如果您为 SnapshotName 参数指定一个值,则此参数可选。

  • KMSKey

    类型:字符串

    描述:(可选)用于加密快照的 AWS KMS 客户托管密钥的完整 Amazon 资源名称(ARN)。

  • SnapshotName

    类型:字符串

    描述:(可选)要使用的数据库集群或实例快照的 ID。

所需的 IAM 权限

AutomationAssumeRole 参数需要执行以下操作才能成功使用运行手册。

  • ssm:StartAutomationExecution

  • rds:DescribeDBInstances

  • rds:DescribeDBSnapshots

  • rds:CopyDBSnapshot

  • rds:ModifyDBSnapshotAttribute

AutomationAssumeRole 需要执行以下操作才能成功启动数据库集群的运行手册。

  • ssm:StartAutomationExecution

  • rds:DescribeDBClusters

  • rds:DescribeDBClusterSnapshots

  • rds:CopyDBClusterSnapshot

  • rds:ModifyDBClusterSnapshotAttribute

必须将用于运行此自动化的 IAM 角色添加为密钥用户,才能使用 ARNKmsKey 参数中指定的 KMS 密钥。有关添加密钥用户至 KMS 密钥的信息,请参阅AWS Key Management Service 《开发人员指南》中的更改密钥策略

如果您没有为 KMSKey 参数指定一个值,则 AutomationAssumeRole 需要执行以下额外操作才能成功启动运行手册。

  • kms:CreateKey

  • kms:ScheduleKeyDeletion

  • kms:CreateGrant

  • kms:DescribeKey

文档步骤

  1. aws:executeScript-检查是否为KMSKey参数提供了值,如果未找到任何值,则创建 AWS KMS 客户托管密钥。

  2. aws:branch - 检查是否为 SnapshotName 参数提供了一个值,并相应地进行了分支。

  3. aws:executeAwsApi - 检查提供的快照是否来自数据库实例。

  4. aws:executeScript - 格式化将冒号替换为连字符的 SnapshotName 参数。

  5. aws:executeAwsApi - 使用指定的 KMSKey 复制快照。

  6. aws:waitForAwsResourceProperty - 等待复制快照操作完成。

  7. aws:executeAwsApi - 与指定 AccountIds 的共享新快照。

  8. aws:executeAwsApi - 检查提供的快照是否来自数据库集群。

  9. aws:executeScript - 格式化将冒号替换为连字符的 SnapshotName 参数。

  10. aws:executeAwsApi - 使用指定的 KMSKey 复制快照。

  11. aws:waitForAwsResourceProperty - 等待复制快照操作完成。

  12. aws:executeAwsApi - 与指定 AccountIds 的共享新快照。

  13. aws:executeAwsApi - 检查为 Database 参数提供的值是否为数据库实例。

  14. aws:executeAwsApi - 检查为 Database 参数提供的值是否为数据库集群。

  15. aws:executeAwsApi - 检索指定 Database 的快照列表。

  16. aws:executeScript - 从在上一步汇总的列表中确定可用的最新快照。

  17. aws:executeAwsApi - 使用指定的 KMSKey 复制数据库实例快照。

  18. aws:waitForAwsResourceProperty - 等待复制快照操作完成。

  19. aws:executeAwsApi - 与指定 AccountIds 的共享新快照。

  20. aws:executeAwsApi - 检索指定 Database 的快照列表。

  21. aws:executeScript - 从在上一步汇总的列表中确定可用的最新快照。

  22. aws:executeAwsApi - 使用指定的 KMSKey 复制数据库实例快照。

  23. aws:waitForAwsResourceProperty - 等待复制快照操作完成。

  24. aws:executeAwsApi - 与指定 AccountIds 的共享新快照。

  25. aws:executeScript-如果您未为KMSKey参数指定值且自动化失败,则删除由自动化创建的 AWS KMS 客户托管密钥。