本文介绍KMS 1.0的资源迁移到KMS 3.0实例的整个流程。
仅支持同地域迁移,如果您在多个地域有资源,需要每个地域分别购买KMS 3.0实例,然后按地域迁移。
一、判断是否有需要迁移的资源
该方式只显示支持迁移的密钥,对于不支持迁移的密钥,您可以在迁移后在旧版控制台查看还剩余哪些密钥,然后联系阿里云技术支持。
登录旧版密钥管理控制台,在左侧目录单击迁移工具。
当迁移按钮可操作时,表示该地域有需要迁移的密钥或凭据。
重要数据按照地域维度展示,请查看所有地域的数据,避免遗漏。

单击未迁移密钥数量、已迁移密钥数量、未迁移凭据数量、已迁移凭据数量这几列的数字,查看具体的密钥ID和凭据名称。
二、迁移步骤
每次迁移最多可以迁移50个密钥和50个凭据,如果资源数量较多,可分批次迁移。
单账号迁移场景
准备目标KMS实例。
未购买KMS实例的场景,请先购买和启用KMS实例。具体操作,请参见购买和启用KMS实例。
推荐您为KMS实例开启自动续费,避免实例到期后释放导致应用数据无法解密发生故障。
已有实例的场景,请确保实例的镜像版本满足迁移要求。
软件密钥管理实例:当镜像版本是2.9.0以下版本时,请升级镜像到最新版本。具体操作,请参见升级KMS实例的镜像版本。
硬件密钥管理实例:请联系阿里云技术支持升级镜像版本。
登录旧版密钥管理服务控制台,关闭密钥和凭据的轮转。
说明不支持批量关闭轮转功能,请您逐个对密钥关闭轮转。


在左侧目录单击迁移工具,找到待迁移的资源所在地域,单击操作列的迁移,在迁移资源页签完成各项配置。
配置项
说明
实例类型
目标KMS实例的类型。
实例
选择目标KMS实例,并设置默认实例。
迁移完成后如果您创建资源时未指定KMS实例(通过KMS 1.0控制台创建或通过API创建时未输入KMS实例ID),资源仍会创建在KMS 1.0中并显示需要迁移,为了避免该问题,请在迁移时务必设置默认实例。设置后如果创建资源时未指定KMS实例,则自动归属至该默认实例。
说明如果当前地域从未设置过默认实例,选择目标KMS实例后会自动勾选设置默认3.0实例。如当前地域已设置过默认实例,不会自动勾选,但如果您勾选其他KMS实例,将自动覆盖。
每个地域仅允许设置1个默认实例。
迁移方式
自动迁移:选择迁移时间,到期后自动迁移。
立即手动迁移:配置后立即迁移。
迁移时间
选择自动迁移时,才需要设置。
迁移资源
重要迁移前请确保KMS实例中的额度充足,避免因为额度问题导致迁移失败。
手动选择迁移资源:手动选择资源,每次选择的密钥和凭据总数不超过50个。支持根据密钥ID、密钥别名和凭据名称,筛选对应的资源。
待迁移密钥和凭据全量迁移:一次迁移所有的密钥和凭据。
请仔细阅读迁移须知后,单击确定,确认迁移清单后单击迁移。
说明可在任务状态列查看迁移进展,迁移结束后会提示迁移完成。
多账号迁移场景
如果您需要将多个阿里云账号下的资源迁移到一个KMS实例中,请参考如下步骤。
在其中一个账号下准备目标KMS实例。
未购买KMS实例的场景,请先购买和启用KMS实例。具体操作,请参见购买和启用KMS实例。
推荐您为KMS实例开启自动续费,避免实例到期后释放导致应用数据无法解密发生故障。
已有实例的场景,请确保实例的镜像版本满足迁移要求。
软件密钥管理实例:当镜像版本是2.9.0以下版本时,请升级镜像到最新版本。具体操作,请参见升级KMS实例的镜像版本。
硬件密钥管理实例:请联系阿里云技术支持升级镜像版本。
将KMS实例共享给其他阿里云账号。具体操作,请参见多账号共享KMS实例中的步骤一~步骤三。
重要仅支持资源目录内共享,且资源所有者和资源使用者是同一个企业实名认证主体。
登录每个阿里云账号,将该账号下的资源迁移到KMS实例,操作步骤与单账号迁移场景相同。
HSM BYOK迁移场景
适用范围
仅支持迁移国内地域HSM BYOK。
操作步骤
登录旧版密钥管理服务控制台,在左侧导航栏单击迁移工具,进入迁移信息页面。找到待迁移密钥所在地域,单击未迁移Hsm BYOK数量列的数字。
在弹出的页面未迁移Hsm BYOK列表页,找到需要迁移的HSM BYOK密钥,单击操作列的导入密钥材料。
配置公钥和令牌信息:在导入密钥材料页面,参考如下信息完成配置,然后单击下一步。
配置项
说明
公钥类型
选择用于加密密钥材料的公钥类型。支持以下选项:
RSA_2048:使用RSA 2048位公钥。
加密算法
选择加密算法。支持以下选项:
RSAES_OAEP_SHA_256(推荐):使用RSA OAEP填充和SHA-256哈希算法。
RSAES_PKCS1_V1_5:使用RSA PKCS#1 v1.5填充。
包装密钥格式
选择下载的包装密钥格式,支持der(默认)或pem格式。
下载包装公钥和导入令牌:导入密钥材料的参数包含包装公钥和导入令牌,包装公钥用于加密密钥材料,在导入过程中保护密钥材料,导入令牌用于导入密钥材料。
公钥格式:
der格式:下载后文件名默认为WrappingPublicKey**bin。
pem格式:下载后文件名默认为WrappingPublicKey**.pem。
导入令牌:下载后文件名默认为ImportToken***.txt。
重要导入令牌的有效期为24小时,在有效期内可以重复使用,失效后需要获取新的导入令牌和公钥。
包装公钥和导入令牌必须配套使用。即不允许下载两次包装公钥和导入令牌,使用其中一个的包装公钥,另一个的导入令牌。
使用包装公钥加密密钥材料:本文以使用OPENSSL生成RSA_2048算法的密钥材料为例。
创建一个RSA_2048算法的目标非对称密钥私钥,并且将私钥转为PKCS#8格式。
openssl genrsa -out TakPrivPkcs1.pem 2048 openssl pkcs8 -topk8 -inform PEM -in TakPrivPkcs1.pem -outform der -nocrypt -out TakPrivPkcs8.bin创建一个AES_256算法的瞬时密钥(ESK)。
openssl rand -out EskAes256.bin 32使用加密密钥公钥(IWKpub)加密瞬时密钥(ESK),得到瞬时密钥密文(Cipher(ESK))。加密时采用RSAES OAEP标准加密,其中MGF1和哈希算法为SHA256。
openssl pkeyutl -encrypt -pubin -inkey PublicKey.pem -in EskAes256.bin -pkeyopt \ rsa_padding_mode:oaep -pkeyopt rsa_oaep_md:sha256 -pkeyopt rsa_mgf1_md:sha256 -out \ CipherEsk.bin说明请将PublicKey.pem替换为您在密钥管理服务控制台下载的公钥文件的名称。
使用瞬时密钥(ESK)加密目标非对称密钥私钥(TAKpriv),生成目标非对称密钥的私钥密文(Cipher(TAKpriv))。加密模式为ECB,填充模式为PKCS#7 Padding。
xxd -l 32 -c 32 -ps EskAes256.bin | xargs -I {} openssl enc -aes-256-ecb -e -K {} -in \ TakPrivPkcs8.bin -nosalt -out CipherTakPriv.bin按照Cipher(ESK) || Cipher(TAKpriv)格式组装结果数据,再进行Base64编码。
cat CipherEsk.bin CipherTakPriv.bin > EncryptedKeyMaterial.bin openssl enc -e -base64 -A -in EncryptedKeyMaterial.bin -out EncryptedKeyMaterial_base64.txt说明EncryptedKeyMaterial_base64.txt即为可导入KMS的密钥材料文件。
导入迁移密钥材料:在导入密钥材料页面,参考如下信息完成配置,然后单击确定。
重要迁移用密钥材料的有效期是21天,若超出时间未执行迁移操作,需重新导入。
配置项
说明
密钥材料格式
选择上传的密钥材料格式,支持base64(默认)或bin格式。
包装后的密钥材料
上传使用包装密钥加密后的密钥材料文件。
导入令牌
上传在步骤4中下载的导入令牌文件。
设定到期时间
设置密钥材料的到期时间。支持以下选项:
永久有效(默认):密钥材料永不过期。
自定义:自定义密钥材料的到期时间,到期后系统将在对应日期GMT+8 00:00删除密钥材料。
执行迁移:返回迁移信息列表页,单击目标HSM BYOK所在地域,单击操作列的迁移,在迁移资源页签完成各项配置。
实例类型:硬件管理实例。
迁移资源:选择手动选择迁移资源,并勾选目标HSM BYOK密钥的资源名称。
常见异常处理
"current hardware BYOK key was not imported for migration":说明HSM BYOK密钥尚未导入迁移用密钥材料,需要先完成本章节的密钥材料导入操作。
"current hardware BYOK key material is expired, please reimport":说明迁移用密钥材料已过期(超过21天未使用),需要重新导入密钥材料。
三、迁移后操作
登录新版控制台,查看并确认迁移后的资源。
服务密钥
单击密钥管理页面,在顶部菜单栏选择地域。
单击默认密钥页签,确认密钥用法列为服务密钥的密钥是否包含您的服务密钥。

用户主密钥
单击密钥管理页面,在顶部菜单栏选择地域。
单击用户主密钥页签,确认是否包含迁移后的用户主密钥。

凭据
单击凭据管理页面,在顶部菜单栏选择地域。
选择KMS实例,确认是否包含迁移后的凭据。

如果您通过Terraform使用KMS,请务必修改Terraform配置。具体操作,请参见Terraform场景下迁移后修改配置。
四、迁移监控
为确保密钥迁移过程平稳、可观察、可回溯,建议在迁移前后及切换过程中,结合阿里云监控(CloudMonitor)、日志服务 SLS 及操作审计(ActionTrail),对共享网关和专属网关进行全面的监控观测。以下是关键观测点和操作建议。
迁移前:观察共享网关监控大盘
在密钥迁移完成但尚未切换 Endpoint 之前,所有 KMS 请求仍通过共享网关处理。此时应重点关注共享网关的稳定性与性能表现。
观测目标:确认迁移操作未对共享网关造成异常负载或错误。
观测指标:
请求时延:观察是否有明显上升趋势。
错误码分布(如:4XX,5XX等):确认无异常错误突增。
QPS/TPS 趋势:对比迁移前后流量是否一致,避免误操作导致请求激增或中断。
查看路径:
说明建议在迁移前记录各项基准指标,作为对比依据。
迁移后:同步观察共享网关与专属网关监控大盘
切换 Endpoint 前:持续观察共享网关。尽管密钥已迁移至专属实例,但在未切换客户端 Endpoint 之前,请求仍走共享网关。此时共享网关会将请求透明转发至后端专属实例。
切换 Endpoint 后:同步观测共享网关与专属网关。当客户端完成 Endpoint 切换,请求将直接通过专属网关访问专属实例。此时需同时监控两个网关:
网关类型
观测重点
查看方式
专属网关
错误码
请求时延变化
QPS 是否符合预期
云监控:KMS 专属网关监控大盘
共享网关
原有业务请求是否已完全切走
是否仍有残留请求或异常调用
观察对应地域的共享网关大盘
说明异常判断标准:
若专属网关出现大量 Throttling 错误,需调整实例规格或限流策略。
若共享网关仍有高频率请求,说明部分客户端未完成 Endpoint 切换,需排查。
日志级观测:通过 SLS 分析详细访问日志
为了实现更细粒度的请求追踪与问题定位,建议启用以下日志采集功能:
专属网关访问日志:
可通过购买专属网关日志分析增值服务,将日志自动投递至 SLS(日志服务)。
支持按密钥ID、用户主账号、API 接口、响应状态码等字段进行查询与分析。
共享网关详细访问日志:
启用操作审计(ActionTrail),并将事件轨迹 投递至指定 SLS Logstore。
通过查询
EventName = "Decrypt"、ResourceType = "KMS"等条件,分析具体请求行为。结合
ErrorCode字段判断失败原因,例如权限不足、密钥不存在等。
建议监控策略
阶段
监控重点
工具
迁移前
共享网关稳定性
云监控大盘
切换中
请求成功率、时延突变
实时监控 + SLS 告警
迁移后
专属网关健康状态
专属网关大盘 + SLS 日志
全过程
异常错误码趋势
操作审计 + SLS 聚合分析
