1. 接口描述
接口请求域名: kms.tencentcloudapi.com 。
用于导入密钥材料。只有类型为EXTERNAL 的CMK 才可以导入,导入的密钥材料使用 GetParametersForImport 获取的密钥进行加密。可以为指定的 CMK 重新导入密钥材料,并重新指定过期时间,但必须导入相同的密钥材料。CMK 密钥材料导入后不可以更换密钥材料。导入的密钥材料过期或者被删除后,指定的CMK将无法使用,需要再次导入相同的密钥材料才能正常使用。CMK是独立的,同样的密钥材料可导入不同的 CMK 中,但使用其中一个 CMK 加密的数据无法使用另一个 CMK解密。
只有Enabled 和 PendingImport状态的CMK可以导入密钥材料。
默认接口请求频率限制:100次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:ImportKeyMaterial。 |
Version | 是 | String | 公共参数,本接口取值:2019-01-18。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
EncryptedKeyMaterial | 是 | String | 使用GetParametersForImport 返回的PublicKey加密后的密钥材料base64编码。对于国密版本region的KMS,导入的密钥材料长度要求为 128 bit,FIPS版本region的KMS, 导入的密钥材料长度要求为 256 bit。 示例值:YLbjnjPPIYjPb1XhyBYNmcr7yv1YMnfDmuHX8D0qCmUAP3Qi+2URkLJvZ/zCWuJK0Y23/QHX8a8lrKz4WVgUVuoleOriQMNx+AcRkjCegkcqkdJ8BNlaXsNJ67zjSZWDu9qI+bHXEqSIcXcz/l5jdBEum6tYViIDrNKIY6FaLC0Ex7y3eoN5A3YFhQoL7F7upNXZHhogP+YXqLqD7fKzsM8qgMW25qSddlhW4H1s1zOfwfobLAQDXofu9OAZ58Xf8KjnqEoA1Bn60kuJBoqqUV4BqOG3egTqCQaCdcn98oZFPTQpB/SVCE4hENncEV3tNihv2IwjFxSCjZHcJzhYuQ== |
ImportToken | 是 | String | 通过调用GetParametersForImport获得的导入令牌。 示例值:+b1d61DykcbWNoKUIjj+OQA5M+Iu5BiXfxldNy/wDbZL31mB2+SAA29TZgXBKYXbCts9ULktWZxU6X81O4jRrvmKwKET2gEg4A6koZrJW+KMAzqTazyWtP464EV4/6Gp |
KeyId | 是 | String | 指定导入密钥材料的CMK,需要和GetParametersForImport 指定的CMK相同。 示例值:93866e69-9755-11ef-8e65-52540089bc41 |
ValidTo | 否 | Integer | 密钥材料过期时间 unix 时间戳,不指定或者 0 表示密钥材料不会过期,若指定过期时间,需要大于当前时间点,最大支持 2147443200。 示例值:0 |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 导入密钥材料
输入示例
POST / HTTP/1.1
Host: kms.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ImportKeyMaterial
<公共请求参数>
{
"ValidTo": "0",
"KeyId": "23e80852-1e38-11e9-b129-5cb9019b4b01",
"ImportToken": "Sy+GF4f+XxUan1sfSBfqWQmyJeVO30wcqLEMoW4REpxBApJqYG9zc37OM0Z3qT/mvLofzM3hwVJSTzIITcAo6ew3LidOJ3nwNoVNOM2wnrL+g9puwP0GpbbSwTd16X9E",
"EncryptedKeyMaterial": "dgqtAzLde+xsR5q3kwOsWu4bst7FaE4sbhhf1OHCMujhjTJTnFGEubKowVFnFC96e2vUvO5fwGvfNcPIDkg6q7iuFviM0BepCmF9Fyk3tluJVRf/Nv8FCccANXmsZDPxtSHdcD00/dQg1i2BIaLMP3/VFBDVEK7AzRhlTkrNiout4pavGSCAF+uBl2Vmnq6fF4DT37B0Q0WQ4NyfUwDCSR0VSF9vwqommhudJUhv4+21xHMgUCdbFvVoOmZP/Md5Sb4rbMbWi5qRpLusi8W3KKTyJ8onp7UC+0qi6DTw4XCq4UPniFNJXIxUOSVXpZHQKFCJXr6/cxNAci8eMTTwfA=="
}
输出示例
{
"Response": {
"RequestId": "1b580852-1e38-11e9-b129-5cb9019b4b00"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
InternalError | 内部错误。 |
InvalidParameter | 参数错误。 |
InvalidParameter.DecryptMaterialError | 解密EncryptedKeyMaterial失败。 |
InvalidParameterValue.InvalidKeyId | KeyId不合法。 |
InvalidParameterValue.MaterialNotMatch | 导入的密钥材料和历史导入不同。 |
ResourceUnavailable.CmkNotFound | CMK不存在。 |
ResourceUnavailable.CmkStateNotSupport | CMK 状态不支持该操作。 |
ResourceUnavailable.TokenExpired | Token已过期。 |
UnsupportedOperation.NotExternalCmk | CMK类型错误,仅支持External CMK。 |
UnsupportedOperation.ServiceTemporaryUnavailable | 服务暂时不可用。 |