调用GetParametersForImport接口获取导入主密钥材料的参数。
- 返回的参数可用于执行ImportKeyMaterial。
- 主密钥材料来源必须是外部,即Origin为EXTERNAL。
- 本次调用返回的公钥和令牌必须搭配使用,且只能用于本次调用中指定的主密钥。
- 每次调用返回的公钥与令牌都不相同。
您需要指定用于加密密钥材料的公钥类型和加密算法,对应关系如下表所示。
公钥类型
加密算法
说明
RSA_2048
RSAES_PKCS1_V1_5
RSAES_OAEP_SHA_1
RSAES_OAEP_SHA_256
支持所有地域、任意保护级别的密钥。
专属KMS不支持RSAES_OAEP_SHA_1。
EC_SM2
SM2PKE
SM2为中国国家密码管理局批准的密码算法,仅支持导入保护级别为HSM的密钥,KMS通过部署在中国内地的托管密码机提供支持。更多信息,请参见托管密码机简介。
更多信息,请参见导入密钥材料。本文将提供一个示例,获取密钥ID为
1234abcd-12ab-34cd-56ef-12345678****
、加密算法为RSAES_PKCS1_V1_5
、公钥类型为RSA_2048
的主密钥材料参数,返回的主密钥材料参数包含密钥ID、用于加密密钥材料的公钥(PublicKey)、导入密钥材料的令牌(ImportToken)以及令牌的过期时间。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | GetParametersForImport | 要执行的操作。取值:GetParametersForImport。 |
KeyId | String | 是 | 202b9877-5a25-46e3-a763-e20791b5**** | 主密钥的全局唯一标识符。 说明 密钥材料来源必须是外部,即Origin为EXTERNAL。 |
WrappingAlgorithm | String | 是 | RSAES_PKCS1_V1_5 | 用于加密密钥材料的算法。 |
WrappingKeySpec | String | 是 | RSA_2048 | 用于加密密钥材料的公钥类型。 |
关于公共请求参数的详情,请参见公共参数。
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
KeyId | String | 202b9877-5a25-46e3-a763-e20791b5**** | 主密钥全局唯一标识符。 后续调用ImportKeyMaterial时需要指定该参数。 |
ImportToken | String | Base64String | 导入令牌。 令牌的有效期为24小时。后续调用ImportKeyMaterial时需要指定该参数。 |
RequestId | String | 8cdf51fd-bcd6-d79a-0ef4-e52c9b5466dc | 本次调用请求的ID,是由阿里云为该请求生成的唯一标识符,可用于排查和定位问题。 |
TokenExpireTime | String | 2018-01-25T00:01:02Z | 导入令牌的过期时间。 |
PublicKey | String | MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlls4uIBxD0GG84C+lGBO6Dhpf1J3XimC6cPmPNaKKJMOzoX4tD+C+r7aZv8lZ3vnPfxuxvy/YwG+whUxTEEFUdqJTOIzhPfYucupqKM92crVHIuG+xtMVeHKjyTr+UrtKCsQikqHT+19yDRN/RMoo2HUx0gmEnRyXd8t3JyUXun9FdoxKA08GrsV7nodb9ZsoBLhnev7tTLcXvLyKW6XG1ZQCQm6dPnbnwLeDXR7uK0Lqn9PM28mBIdaiQUQxj2XbM1CoJA+JiyVX3Ptdb+4rqukb4Rb05B80Bs9xV/cf7FIku08l7xGhrGiQFq+DFXwQWtwihXHZxz3LhldU+4ZPwID**** | 用于加密密钥材料的公钥。 采用Base64编码。 |
示例
请求示例
http(s)://[Endpoint]/?Action=GetParametersForImport
&KeyId=202b9877-5a25-46e3-a763-e20791b5****
&WrappingAlgorithm=RSAES_PKCS1_V1_5
&WrappingKeySpec=RSA_2048
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<GetParametersForImportResponse>
<KeyId>202b9877-5a25-46e3-a763-e20791b5****</KeyId>
<ImportToken>Base64String</ImportToken>
<RequestId>8cdf51fd-bcd6-d79a-0ef4-e52c9b5466dc</RequestId>
<TokenExpireTime>2018-01-25T00:01:02Z</TokenExpireTime>
<PublicKey>MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlls4uIBxD0GG84C+lGBO6Dhpf1J3XimC6cPmPNaKKJMOzoX4tD+C+r7aZv8lZ3vnPfxuxvy/YwG+whUxTEEFUdqJTOIzhPfYucupqKM92crVHIuG+xtMVeHKjyTr+UrtKCsQikqHT+19yDRN/RMoo2HUx0gmEnRyXd8t3JyUXun9FdoxKA08GrsV7nodb9ZsoBLhnev7tTLcXvLyKW6XG1ZQCQm6dPnbnwLeDXR7uK0Lqn9PM28mBIdaiQUQxj2XbM1CoJA+JiyVX3Ptdb+4rqukb4Rb05B80Bs9xV/cf7FIku08l7xGhrGiQFq+DFXwQWtwihXHZxz3LhldU+4ZPwID****</PublicKey>
</GetParametersForImportResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"KeyId" : "202b9877-5a25-46e3-a763-e20791b5****",
"ImportToken" : "Base64String",
"RequestId" : "8cdf51fd-bcd6-d79a-0ef4-e52c9b5466dc",
"TokenExpireTime" : "2018-01-25T00:01:02Z",
"PublicKey" : "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlls4uIBxD0GG84C+lGBO6Dhpf1J3XimC6cPmPNaKKJMOzoX4tD+C+r7aZv8lZ3vnPfxuxvy/YwG+whUxTEEFUdqJTOIzhPfYucupqKM92crVHIuG+xtMVeHKjyTr+UrtKCsQikqHT+19yDRN/RMoo2HUx0gmEnRyXd8t3JyUXun9FdoxKA08GrsV7nodb9ZsoBLhnev7tTLcXvLyKW6XG1ZQCQm6dPnbnwLeDXR7uK0Lqn9PM28mBIdaiQUQxj2XbM1CoJA+JiyVX3Ptdb+4rqukb4Rb05B80Bs9xV/cf7FIku08l7xGhrGiQFq+DFXwQWtwihXHZxz3LhldU+4ZPwID****"
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | Unsupported.Origin | This key origin is not valid for this api | 此密钥来源不支持该API调用。 |
访问错误中心查看更多错误码。