

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

# `AWSSupport-ShareRDSSnapshot`
<a name="automation-aws-sharerdssnapshot"></a>

 **Description** 

 `AWSSupport-ShareRDSSnapshot` Runbook 為 知識中心文章中概述的程序提供自動化解決方案 [如何與其他帳戶共用加密的 Amazon RDS 資料庫快照？](https://aws.amazon.com/premiumsupport/knowledge-center/share-encrypted-rds-snapshot-kms-key/) 如果您的 Amazon Relational Database Service (Amazon RDS) 快照是使用預設值加密 AWS 受管金鑰，則無法共用快照。在這種情況下，您必須使用客戶受管金鑰複製快照，然後與目標帳戶共用快照。此自動化會使用您在 `SnapshotName` 參數中指定的值，或所選 Amazon RDS 資料庫執行個體或叢集的最新快照來執行這些步驟。

**注意**  
 如果您未指定 `KMSKey` 參數的值，自動化會在您的帳戶中建立新的 AWS KMS 客戶受管金鑰，用來加密快照。

 [執行此自動化 （主控台）](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-ShareRDSSnapshot) 

**文件類型**

 自動化

**擁有者**

Amazon

**平台**

資料庫

**參數**
+ AccountIds

  類型：StringList

  描述：（必要） 共用快照的帳戶 IDs 逗號分隔清單。
+ AutomationAssumeRole

  類型：字串

  描述：（選用） 允許 Systems Manager Automation 代表您執行動作的 (IAM) 角色的 AWS Identity and Access Management Amazon Resource Name (ARN)。如果未指定角色，Systems Manager Automation 會使用啟動此 Runbook 的使用者許可。
+ 資料庫

  類型：字串

   描述：（必要） 您要共用其快照的 Amazon RDS 資料庫執行個體或叢集名稱。如果您指定 參數的值，則此`SnapshotName`參數為選用。
+ KMSKey

  類型：字串

  描述：（選用） 用於加密快照的客戶受管金鑰的完整 Amazon Resource Name (ARN) AWS KMS 。
+ SnapshotName

  類型：字串

  描述：（選用） 您要使用的資料庫叢集或執行個體快照 ID。

**必要的 IAM 許可**

`AutomationAssumeRole` 參數需要下列動作才能成功使用 Runbook。
+  `ssm:StartAutomationExecution` 
+  `rds:DescribeDBInstances` 
+  `rds:DescribeDBSnapshots` 
+  `rds:CopyDBSnapshot` 
+  `rds:ModifyDBSnapshotAttribute` 

 `AutomationAssumeRole` 需要下列動作，才能成功啟動資料庫叢集的 Runbook。
+  `ssm:StartAutomationExecution` 
+  `rds:DescribeDBClusters` 
+  `rds:DescribeDBClusterSnapshots` 
+  `rds:CopyDBClusterSnapshot` 
+  `rds:ModifyDBClusterSnapshotAttribute` 

 用來執行自動化的 IAM 角色必須新增為金鑰使用者，才能使用 `ARNKmsKey` 參數中指定的 KMS 金鑰。如需有關將金鑰使用者新增至 KMS 金鑰的資訊，請參閱《 *AWS Key Management Service 開發人員指南*》中的[變更金鑰政策](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html)。

 如果您未指定 `KMSKey` 參數的值， `AutomationAssumeRole`需要下列其他動作才能成功啟動 Runbook。
+  `kms:CreateKey` 
+  `kms:ScheduleKeyDeletion` 
+  `kms:CreateGrant` 
+  `kms:DescribeKey` 

 **文件步驟** 

1.  `aws:executeScript` - 檢查是否為 `KMSKey` 參數提供值，如果找不到值，則建立 AWS KMS 客戶受管金鑰。

1.  `aws:branch` - 檢查是否已相應地為 `SnapshotName` 參數和分支提供值。

1.  `aws:executeAwsApi` - 檢查提供的快照是否來自資料庫執行個體。

1.  `aws:executeScript` - 格式化`SnapshotName`參數，以連字號取代冒號。

1.  `aws:executeAwsApi` - 使用指定的 `KMSKey` 複製快照。

1.  `aws:waitForAwsResourceProperty` - 等待複製快照操作完成。

1.  `aws:executeAwsApi` - 與`AccountIds`指定的 共用新的快照。

1.  `aws:executeAwsApi` - 檢查提供的快照是否來自資料庫叢集。

1.  `aws:executeScript` - 格式化`SnapshotName`參數，以連字號取代冒號。

1.  `aws:executeAwsApi` - 使用指定的 `KMSKey` 複製快照。

1.  `aws:waitForAwsResourceProperty` - 等待複製快照操作完成。

1.  `aws:executeAwsApi` - 與`AccountIds`指定的 共用新的快照。

1.  `aws:executeAwsApi` - 檢查為 `Database` 參數提供的值是否為資料庫執行個體。

1.  `aws:executeAwsApi` - 檢查為 `Database` 參數提供的值是否為資料庫叢集。

1.  `aws:executeAwsApi` - 擷取指定 的快照清單`Database`。

1.  `aws:executeScript` - 從上一個步驟中組合的清單中確定可用的最新快照。

1.  `aws:executeAwsApi` - 使用指定的 複製資料庫執行個體快照`KMSKey`。

1.  `aws:waitForAwsResourceProperty` - 等待複製快照操作完成。

1.  `aws:executeAwsApi` - 與`AccountIds`指定的 共用新的快照。

1.  `aws:executeAwsApi` - 擷取指定 的快照清單`Database`。

1.  `aws:executeScript` - 從上一個步驟中組合的清單中確定可用的最新快照。

1.  `aws:executeAwsApi` - 使用指定的 複製資料庫執行個體快照`KMSKey`。

1.  `aws:waitForAwsResourceProperty` - 等待複製快照操作完成。

1.  `aws:executeAwsApi` - 與`AccountIds`指定的 共用新的快照。

1.  `aws:executeScript` - 如果您未指定 `KMSKey` 參數的值且自動化失敗，則刪除自動化建立 AWS KMS 的客戶受管金鑰。