如何将AWS证书管理器(ACM)中的域名证书从一个AWS账户导入到另一个账户
AWS跨账户迁移ACM证书操作步骤
首先明确前提:AWS公有CA免费签发的公有证书不支持导出私钥,仅自行上传的证书、AWS私有CA签发的可导出证书可执行导出导入操作,公有证书可选择重新申请或跨账户共享的方式实现跨账户使用。
场景1:可导出证书的迁移流程
- 第一步:从源AWS账户导出证书
你可以通过控制台或AWS CLI完成导出操作:- 控制台操作:登录源账户ACM控制台,定位到目标证书,点击「导出」按钮,设置私钥保护密码,下载导出的三个文件:证书正文、加密私钥、证书链
- CLI操作:执行以下命令:
执行后会返回三个字段的内容,分别对应证书、私钥、证书链,保存到本地即可。aws acm export-certificate --certificate-arn <源证书的ARN> --passphrase fileb://<保存私钥密码的本地文件路径>
- 第二步:导入证书到目标AWS账户
切换到目标账户的ACM控制台,选择对应需要使用证书的区域,点击「导入证书」,将上一步导出的三个文件内容分别粘贴到对应输入框,确认后即可完成导入。
也可以通过CLI执行导入:aws acm import-certificate --certificate fileb://<本地证书文件路径> --private-key fileb://<本地私钥文件路径> --certificate-chain fileb://<本地证书链文件路径>
场景2:AWS公有CA免费证书的跨账户使用方案
这类证书AWS不开放私钥导出权限,无法直接迁移,可选择以下两种方案:
- 方案一:目标账户重新申请同域名证书
直接在目标账户ACM中申请对应域名的公有证书,完成DNS或邮箱验证后即可正常使用,AWS公有证书完全免费,操作流程和源账户申请一致。 - 方案二:通过RAM共享源账户证书给目标账户
如果不想重新申请证书,可以使用AWS RAM服务将源账户的证书共享给目标账户,共享后目标账户可直接将证书关联到自己的ALB、CloudFront、API Gateway等支持ACM的服务,无需导入。注意:该方案要求两个账户属于同一AWS组织,或已开启RAM的外部共享权限。
注意事项
- ACM证书是区域级资源,如果需要将证书用于CloudFront服务,无论源还是目标账户,证书都必须存放在
us-east-1(弗吉尼亚北部)区域。 - 导入的证书到期时间与源证书完全一致,到期前需要提前更新后重新导入。
- 导出的私钥属于敏感信息,请妥善保管,避免泄露。
内容的提问来源于stack exchange,提问作者Ahmed Nageh
相关产品推荐
相关产品推荐

