本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定原生備份與還原
若要設定原生備份與還原,您需要設定三個元件:
-
用來儲存備份檔案的 Amazon S3 儲存貯體。
您必須擁有 S3 儲存貯體,才能用於備份檔案,然後將要遷移的備份上傳至 RDS。如果您已經有 Amazon S3 儲存貯體,則可直接使用。如果沒有,您可以建立儲存貯體。或者,當您使用
SQLSERVER_BACKUP_RESTORE
新增 AWS Management Console選項時,可以選擇替您建立新的儲存貯體。如需有關使用 S3 的詳細資訊,請參閱 Amazon Simple Storage Service 使用者指南。
-
存取儲存貯體的 AWS Identity and Access Management (IAM) 角色。
如果您已有角色,您可以使用該IAM角色。您可以使用 新增
SQLSERVER_BACKUP_RESTORE
選項時,選擇為您建立新的IAM角色 AWS Management Console。或者,您也可以手動建立新的。如果您想要手動建立新IAM角色,請採取下一節討論的方法。如果您想要將信任關係和許可政策連接至現有IAM角色,請執行相同操作。
-
在資料庫執行個體的選項群組中新增的
SQLSERVER_BACKUP_RESTORE
選項。若要在資料庫執行個體上啟用原生備份與還原,請將
SQLSERVER_BACKUP_RESTORE
選項新增至資料庫執行個體上的選項群組。如需詳細資訊和指示,請參閱SQL Server 對原生備份與還原的支援。
手動建立原生備份和還原IAM的角色
如果您想要手動建立新的IAM角色,以搭配原生備份和還原使用,您可以這麼做。在此情況下,您可以建立角色,將 Amazon RDS服務的許可委派給 Amazon S3 儲存貯體。建立IAM角色時,您會連接信任關係和許可政策。信任關係允許 RDS 擔任此角色。許可政策定義此角色可執行的動作。如需有關建立角色的詳細資訊,請參閱建立角色以委派許可給 AWS 服務。
對於原生備份與還原功能,請使用類似本節範例的信任關係和許可政策。在下列範例中,我們使用服務原則名稱 rds.amazonaws.com
做為所有服務帳戶的別名。在其他範例中,我們會指定 Amazon Resource Name (ARN),以識別我們在信任政策中授予存取權的其他帳戶、使用者或角色。
建議您在資源型信任關係中使用 aws:SourceArn
和 aws:SourceAccount
全域條件內容金鑰,將服務的許可限定於特定資來源。這是防止混淆代理人問題最有效的方式。
您可以同時使用全域條件內容索引鍵和包含帳號 ID 的 aws:SourceArn
值。在此情況下,當在相同陳述式中使用 aws:SourceAccount
值和 aws:SourceArn
裡的帳户時,兩者必須使用同樣的帳户 ID。
-
如果您想要跨服務存取單一資源,請使用
aws:SourceArn
。 -
如果您想要允許該帳戶中的任何資源與跨服務使用相關聯,請使用
aws:SourceAccount
。
在信任關係中,請務必使用aws:SourceArn
全域條件內容索引鍵搭配存取角色ARN的完整資源。針對原生備份與還原,請確認同時包括資料庫選項群組和資料庫執行個體,如以下範例所示。
範例 與原生備份與還原全域條件內容索引鍵的信任關係
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
下列範例使用 ARN來指定資源。如需使用 的詳細資訊ARNs,請參閱 Amazon 資源名稱 (ARNs)。
範例 原生備份與還原的許可政策 (無加密支援)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
" }, { "Effect": "Allow", "Action": [ "s3:GetObjectAttributes", "s3:GetObject", "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket
/*" } ] }
範例 原生備份與還原的許可政策 (有加密支援)
如果您要將備份檔案加密,請在許可政策中包含加密金鑰。如需加密金鑰的詳細資訊,請參閱 AWS Key Management Service 開發人員指南中的入門。
注意
您必須使用對稱加密KMS金鑰來加密備份。Amazon RDS 不支援非對稱KMS金鑰。如需詳細資訊,請參閱 AWS Key Management Service 開發人員指南 中的建立對稱加密KMS金鑰。
IAM 角色也必須是金鑰的金鑰使用者和KMS金鑰管理員,也就是說,必須在金鑰政策中指定。如需詳細資訊,請參閱 AWS Key Management Service 開發人員指南 中的建立對稱加密KMS金鑰。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:Encrypt", "kms:Decrypt" ], "Resource": "arn:aws:kms:
region
:account-id
:key/key-id
" }, { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket
" }, { "Effect": "Allow", "Action": [ "s3:GetObjectAttributes", "s3:GetObject", "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket
/*" } ] }