调用本接口使用指定的非对称密钥和签名算法,对消息或消息摘要的签名进行验证,并返回验证结果。
下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数 | 类型 | 是否必填 | 示例值 | 描述 |
|---|---|---|---|---|
Action | String | 是 | AsymmetricVerify | 要执行的操作,取值:AsymmetricVerify。 |
Version | String | 是 | 2021-02-18 | API的版本,取值:2021-02-18。 |
KeyringName | String | 否 | keyring-test | 密钥环名称,长度为 2 - 31 个字符。合法字符:[a-zA-Z0-9-_]。可通过 CreateKeyring 创建密钥环时指定,或通过 DescribeKeyrings、QueryKeyring 查询获取。当不指定 KeyID 时,必须与 KeyName 同时传入;与 KeyID 二选一。 |
KeyName | String | 否 | key-test | 主密钥名称,长度为 2 - 31 个字符。合法字符:[a-zA-Z0-9-_]。可通过 CreateKey 创建密钥时指定,或通过 DescribeKeys、DescribeKey 查询获取。当不指定 KeyID 时,必须与 KeyringName 同时传入;与 KeyID 二选一。 |
KeyID | String | 否 | 39a0e7c6-b7dd-4c83-b400-3449bb95403a | 主密钥 ID,UUID 形式。可通过 CreateKey 创建密钥时返回,或通过 DescribeKeys、DescribeKey 查询获取。KeyID 与 KeyringName + KeyName 二选一;传入 KeyID 时无需传入 KeyringName 和 KeyName;未传入 KeyID 时,必须同时传入 KeyringName 和 KeyName。 |
Message | String | 是 | MessageToBeSigned= | 验签消息,Base64编码。 |
MessageType | String | 否 | RAW | 消息类型,取值: |
Algorithm | String | 是 | RSA_PSS_SHA_256 | 签名算法,需与密钥类型匹配。取值:RSA_PSS_SHA_256、RSA_PKCS1_SHA_256、RSA_PSS_SHA_384、RSA_PKCS1_SHA_384、RSA_PSS_SHA_512、RSA_PKCS1_SHA_512(RSA 签名算法);ECDSA_SHA_256、ECDSA_SHA_384、ECDSA_SHA_512(ECDSA 签名算法);SM2_DSA(SM2 签名算法)。验签时需与签名时使用的算法一致。 |
Signature | String | 是 | OuodVCE1zYpDFg1QvgOHtVQxkQWhfpE8i8NibiJ1pL8ILgAE+TogQZuIglAoo= | 待验证的签名值,Base64编码,取值:[1, 6144] |
下表仅列出本接口特有的返回参数。更多信息请参见返回结构。
参数 | 类型 | 示例值 | 描述 |
|---|---|---|---|
KeyID | String | 39a0e7c6-b7dd-4c83-b400-3449bb95403a | 主密钥唯一标识符,UUID 形式。 |
SignatureValid | Boolean | true | 签名验证是否通过,取值: |
POST /?Action=AsymmetricVerify&Version=2021-02-18&KeyringName=demo&KeyName=demo&MessageType=RAW&Algorithm=RSA_PSS_SHA_256 HTTP/1.1 Host: kms.cn-beijing.volcengineapi.com Content-Type: application/json; charset=UTF-8 X-Date: 20240708T151941Z X-Content-Sha256: 287e874e******d653b44d21e Authorization: HMAC-SHA256 Credential=Adfks******wekfwe/20240708/cn-beijing/kms/request, SignedHeaders=host;x-content-sha256;x-date, Signature=47a7d934ff7b37c03938******cd7b8278a40a1057690c401e92246a0e41085f { "Message": "MessageToBeSigned=", "Signature": "OuodVCE1zYpDFg1QvgOHtVQxkQWhfpE8i8NibiJ1pL8ILgAE+TogQZuIglAoo=" }
{ "ResponseMetadata": { "RequestId": "202407082320461811522081854EB0A8", "Action": "AsymmetricVerify", "Version": "2021-02-18", "Service": "kms", "Region": "cn-beijing" }, "Result": { "KeyID": "39a0e7c6-b7dd-4c83-b400-3449bb95403a", "SignatureValid": true } }
下表为您列举了该接口与业务逻辑相关的错误码。公共错误码请参见公共错误码文档。
状态码 | 错误码 | 说明 |
|---|---|---|
400 | MissingParameter | 缺少必填参数,请根据接口请求参数说明补充后重试。 |
400 | InvalidParameter | 请求参数格式、类型或取值不合法,请根据参数说明检查并修正请求。 |
400 | InvalidKeyStatus | 当前密钥状态不支持执行该操作,请检查密钥是否处于接口要求的状态。 |
400 | InvalidKeyUsage | 密钥用途不支持当前操作,请使用用途匹配的密钥。 |
403 | AccessDenied | 当前账号或子账号缺少执行该操作所需权限,请检查 IAM 授权策略。 |
403 | Reject.Throttling.CMK | 指定主密钥的请求频率超过限制,请降低该密钥相关请求速率后重试。 |
404 | Not Found | 指定资源不存在或当前账号无权访问,请检查资源 ID、名称和地域是否正确。 |
500 | UndefinedError | 服务内部错误,请稍后重试;如持续出现,请联系技术支持。 |