調用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調用。 |
訪問錯誤中心查看更多錯誤碼。