tencentcloud-sdk-nodejs-essbasic 4.1.302 → 4.1.304
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/services/essbasic/v20210526/essbasic_client.js +5 -2
- package/package.json +1 -1
- package/tencentcloud/services/essbasic/v20210526/essbasic_client.d.ts +129 -6
- package/tencentcloud/services/essbasic/v20210526/essbasic_client.js +131 -6
- package/tencentcloud/services/essbasic/v20210526/essbasic_models.d.ts +55 -37
|
@@ -135,8 +135,8 @@ export class Client extends TencentCloudCommon.AbstractClient {
|
|
|
135
135
|
async CreateBatchInitOrganizationUrl(req, cb) {
|
|
136
136
|
return this.request("CreateBatchInitOrganizationUrl", req, cb);
|
|
137
137
|
}
|
|
138
|
-
async
|
|
139
|
-
return this.request("
|
|
138
|
+
async CreateRequestWithEncryption(req, cb) {
|
|
139
|
+
return this.request("CreateRequestWithEncryption", req, cb);
|
|
140
140
|
}
|
|
141
141
|
async ChannelDescribeFlowComponents(req, cb) {
|
|
142
142
|
return this.request("ChannelDescribeFlowComponents", req, cb);
|
|
@@ -225,6 +225,9 @@ export class Client extends TencentCloudCommon.AbstractClient {
|
|
|
225
225
|
async DeleteOrganizationAuthorizations(req, cb) {
|
|
226
226
|
return this.request("DeleteOrganizationAuthorizations", req, cb);
|
|
227
227
|
}
|
|
228
|
+
async ChannelDescribeAccountBillDetail(req, cb) {
|
|
229
|
+
return this.request("ChannelDescribeAccountBillDetail", req, cb);
|
|
230
|
+
}
|
|
228
231
|
async ModifyFlowDeadline(req, cb) {
|
|
229
232
|
return this.request("ModifyFlowDeadline", req, cb);
|
|
230
233
|
}
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as TencentCloudCommon from "tencentcloud-sdk-nodejs-common";
|
|
2
|
-
import { SyncProxyOrganizationResponse, ChannelCreateConvertTaskApiResponse, CreateBatchAdminChangeInvitationsResponse, ChannelCreateFlowRemindsResponse, DescribeUserFlowTypeResponse, ChannelDeleteSealPoliciesRequest, ChannelBatchCancelFlowsResponse, ChannelDescribeSignFaceVideoRequest, ChannelDisableUserAutoSignResponse, DescribeExtendedServiceAuthDetailResponse, CreateLegalSealQrCodeResponse, DescribeCancelFlowsTaskResponse, CreateEmployeeQualificationSealQrCodeResponse, ChannelCreateFlowGroupByTemplatesResponse, ChannelCreateFlowSignReviewRequest, CreateFlowForwardsRequest, DescribeFlowDetailInfoRequest, ChannelCancelFlowResponse, ModifyExtendedServiceRequest, DescribeResourceUrlsByFlowsRequest, CreateFileConvertTaskRequest, CreateChannelOrganizationInfoChangeUrlResponse, ChannelCreateFlowSignUrlResponse, DescribeFileConvertTaskResponse, ChannelCreateBatchSignUrlResponse, CreateBatchAdminChangeInvitationsUrlRequest, ChannelCreatePrepareFlowResponse, CreateBatchInitOrganizationUrlResponse, OperateChannelTemplateResponse, ChannelCreateDynamicFlowApproverResponse, ChannelCreateRoleRequest, CreateOrganizationAuthFileResponse, CreateConsoleLoginUrlResponse, ChannelDeleteRoleUsersRequest, ChannelCreateUserRolesResponse, ChannelCreatePrepareFlowRequest, ChannelCreateFlowSignUrlRequest, ChannelCreateSealPolicyResponse, OperateTemplateRequest, ChannelDescribeSignFaceVideoResponse, ChannelCancelUserAutoSignEnableUrlResponse, ChannelCreateWebThemeConfigRequest, CancelOrganizationFlowsResponse, CreateFlowGroupSignReviewResponse, ChannelCreateConvertTaskApiRequest, ChannelCreateFlowByFilesRequest, UploadFilesResponse, ChannelCreatePreparedPersonalEsignResponse, DescribeResourceUrlsByFlowsResponse, ChannelCreateFlowGroupByFilesRequest, DescribeFileConvertTaskRequest, ChannelCreateOrganizationModifyQrCodeRequest, CreateChannelSubOrganizationActiveRequest, ChannelRenewAutoSignLicenseResponse, ModifyOrganizationBusinessInfoResponse, ChannelDescribeRolesRequest, DescribeBatchOrganizationRegistrationUrlsRequest, PrepareFlowsResponse, ChannelCreateOrganizationBatchSignUrlRequest, GetDownloadFlowUrlResponse, DescribeTemplatesResponse, CreateBatchOrganizationRegistrationTasksResponse, ChannelVerifyPdfRequest, CreateChannelFlowEvidenceReportRequest, ChannelCancelUserAutoSignEnableUrlRequest, DeleteOrganizationAuthorizationsResponse, ChannelCreatePrepareFlowGroupRequest, DescribeExtendedServiceAuthDetailRequest, CreateOrganizationAuthFileRequest, ChannelVerifyPdfResponse, ArchiveDynamicFlowResponse, CreateConsoleLoginUrlRequest, CreateLegalSealQrCodeRequest, CreateCloseOrganizationUrlRequest, CreatePersonAuthCertificateImageResponse, ModifyPartnerAutoSignAuthUrlRequest, CreateEmployeeQualificationSealQrCodeRequest, DescribeBatchOrganizationRegistrationTasksRequest, ChannelCreateUserAutoSignSealUrlRequest, ChannelCreateUserAutoSignEnableUrlRequest, ChannelCancelMultiFlowSignQRCodeRequest, ChannelDescribeOrganizationSealsRequest, DescribeUsageRequest, DescribeExtendedServiceAuthInfoRequest, CreateCloseOrganizationUrlResponse, DescribeChannelSealPolicyWorkflowUrlRequest, CreatePartnerAutoSignAuthUrlResponse, ArchiveDynamicFlowRequest, ChannelCreateDynamicFlowApproverRequest, ModifyFlowDeadlineResponse, DescribeFlowDetailInfoResponse, ChannelCreateBoundFlowsResponse, ChannelCreateUserAutoSignSealUrlResponse, ChannelCreateBatchQuickSignUrlRequest, ChannelCreateBoundFlowsRequest, ChannelDescribeEmployeesRequest, OperateTemplateResponse, CreateFlowBlockchainEvidenceUrlResponse, ChannelDeleteRoleUsersResponse, SyncProxyOrganizationOperatorsRequest, ChannelCreateFlowApproversResponse, CreateBatchAdminChangeInvitationsUrlResponse, DescribeUsageResponse, CreateSignUrlsRequest, ChannelCreateMultiFlowSignQRCodeRequest, ChannelCreateUserAutoSignEnableUrlResponse, ChannelGetTaskResultApiRequest, DescribeChannelOrganizationsRequest, ChannelDescribeBillUsageDetailResponse, CreateEmployeeChangeUrlResponse, ChannelRenewAutoSignLicenseRequest, ChannelCreatePreparedPersonalEsignRequest, CancelOrganizationFlowsRequest, CreatePersonAuthCertificateImageRequest, PrepareFlowsRequest, CreateFlowsByTemplatesResponse, DescribeChannelFlowEvidenceReportRequest, ChannelCreateRoleResponse, CreateEmployeeChangeUrlRequest, ChannelDescribeUserAutoSignStatusRequest, CreateModifyAdminAuthorizationUrlRequest, ChannelModifyRoleResponse, ModifyOrganizationBusinessInfoRequest, CreateSignUrlsResponse, ChannelDeleteRoleRequest, CreateBatchOrganizationRegistrationTasksRequest, ChannelCreateBatchQuickSignUrlResponse, CreateBatchOrganizationAuthorizationUrlResponse, CreatePartnerAutoSignAuthUrlRequest, DescribeBatchOrganizationRegistrationTasksResponse, ChannelCreateBatchCancelFlowUrlRequest, ChannelDescribeAccountBillDetailResponse, CreateFlowForwardsResponse, ChannelCreateFlowByFilesResponse, ChannelCreateFlowSignReviewResponse, ChannelDisableUserAutoSignRequest, ChannelDescribeOrganizationSealsResponse, SyncProxyOrganizationOperatorsResponse, CreateSealByImageResponse, ChannelCancelMultiFlowSignQRCodeResponse, ChannelDescribeRolesResponse, CreateChannelSubOrganizationActiveResponse, ChannelCreateReleaseFlowRequest, ChannelDescribeFlowComponentsResponse, DeleteOrganizationAuthorizationsRequest, ChannelCreateFlowGroupByFilesResponse, ChannelCreateMultiFlowSignQRCodeResponse, ChannelCreatePrepareFlowGroupResponse, DescribeCancelFlowsTaskRequest, ChannelDescribeUserAutoSignStatusResponse, ModifyExtendedServiceResponse, ChannelCreateUserRolesRequest, ChannelGetTaskResultApiResponse, ChannelCreateBatchSignUrlRequest, ChannelUpdateSealStatusResponse, ChannelCreateOrganizationModifyQrCodeResponse, ChannelDeleteSealPoliciesResponse, ChannelCreateWebThemeConfigResponse, GetDownloadFlowUrlRequest, ChannelCreateEmbedWebUrlResponse, ChannelBatchCancelFlowsRequest, CreateChannelOrganizationInfoChangeUrlRequest, ChannelModifyRoleRequest, ModifyFlowDeadlineRequest, ChannelUpdateSealStatusRequest, ChannelCreateFlowGroupByTemplatesRequest, CreateBatchInitOrganizationUrlRequest, CreateFlowGroupSignReviewRequest, ChannelCancelFlowRequest, DescribeTemplatesRequest, ChannelCreateSealPolicyRequest, CreateBatchAdminChangeInvitationsRequest, CreateFlowsByTemplatesRequest, DescribeBatchOrganizationRegistrationUrlsResponse, UploadFilesRequest, CreateSealByImageRequest, DescribeChannelOrganizationsResponse, ChannelCreateOrganizationBatchSignUrlResponse, CreateBatchOrganizationAuthorizationUrlRequest, ChannelCreateBatchCancelFlowUrlResponse, OperateChannelTemplateRequest, DescribeChannelSealPolicyWorkflowUrlResponse, CreateChannelFlowEvidenceReportResponse, ChannelDescribeAccountBillDetailRequest, ChannelDescribeEmployeesResponse, CreateModifyAdminAuthorizationUrlResponse, ChannelDeleteRoleResponse, ChannelCreateReleaseFlowResponse, SyncProxyOrganizationRequest, DescribeChannelFlowEvidenceReportResponse, ModifyPartnerAutoSignAuthUrlResponse, CreateFlowBlockchainEvidenceUrlRequest, DescribeUserFlowTypeRequest, ChannelCreateFlowApproversRequest, ChannelDescribeBillUsageDetailRequest, ChannelCreateFlowRemindsRequest, DescribeExtendedServiceAuthInfoResponse, CreateFileConvertTaskResponse, ChannelCreateEmbedWebUrlRequest, ChannelDescribeFlowComponentsRequest } from "./essbasic_models";
|
|
2
|
+
import { SyncProxyOrganizationResponse, ChannelCreateConvertTaskApiResponse, CreateBatchAdminChangeInvitationsResponse, ChannelCreateFlowRemindsResponse, DescribeUserFlowTypeResponse, ChannelDeleteSealPoliciesRequest, ChannelBatchCancelFlowsResponse, ChannelDescribeSignFaceVideoRequest, ChannelDisableUserAutoSignResponse, DescribeExtendedServiceAuthDetailResponse, CreateLegalSealQrCodeResponse, DescribeCancelFlowsTaskResponse, CreateEmployeeQualificationSealQrCodeResponse, ChannelCreateFlowGroupByTemplatesResponse, ChannelCreateFlowSignReviewRequest, CreateFlowForwardsRequest, DescribeFlowDetailInfoRequest, ChannelCancelFlowResponse, ModifyExtendedServiceRequest, DescribeResourceUrlsByFlowsRequest, CreateFileConvertTaskRequest, CreateChannelOrganizationInfoChangeUrlResponse, ChannelCreateFlowSignUrlResponse, DescribeFileConvertTaskResponse, ChannelCreateBatchSignUrlResponse, CreateBatchAdminChangeInvitationsUrlRequest, ChannelCreatePrepareFlowResponse, CreateBatchInitOrganizationUrlResponse, OperateChannelTemplateResponse, ChannelCreateDynamicFlowApproverResponse, ChannelCreateRoleRequest, CreateOrganizationAuthFileResponse, CreateConsoleLoginUrlResponse, ChannelDeleteRoleUsersRequest, ChannelCreateUserRolesResponse, ChannelCreatePrepareFlowRequest, ChannelCreateFlowSignUrlRequest, ChannelCreateSealPolicyResponse, OperateTemplateRequest, ChannelDescribeSignFaceVideoResponse, ChannelCancelUserAutoSignEnableUrlResponse, ChannelCreateWebThemeConfigRequest, CancelOrganizationFlowsResponse, CreateFlowGroupSignReviewResponse, ChannelCreateConvertTaskApiRequest, ChannelCreateFlowByFilesRequest, UploadFilesResponse, ChannelCreatePreparedPersonalEsignResponse, DescribeResourceUrlsByFlowsResponse, ChannelCreateFlowGroupByFilesRequest, DescribeFileConvertTaskRequest, ChannelCreateOrganizationModifyQrCodeRequest, CreateChannelSubOrganizationActiveRequest, ChannelRenewAutoSignLicenseResponse, ModifyOrganizationBusinessInfoResponse, ChannelDescribeRolesRequest, DescribeBatchOrganizationRegistrationUrlsRequest, PrepareFlowsResponse, CreateRequestWithEncryptionResponse, ChannelCreateOrganizationBatchSignUrlRequest, GetDownloadFlowUrlResponse, DescribeTemplatesResponse, CreateBatchOrganizationRegistrationTasksResponse, ChannelVerifyPdfRequest, CreateChannelFlowEvidenceReportRequest, ChannelCancelUserAutoSignEnableUrlRequest, DeleteOrganizationAuthorizationsResponse, ChannelCreatePrepareFlowGroupRequest, DescribeExtendedServiceAuthDetailRequest, CreateOrganizationAuthFileRequest, ChannelVerifyPdfResponse, ArchiveDynamicFlowResponse, CreateConsoleLoginUrlRequest, CreateLegalSealQrCodeRequest, CreateCloseOrganizationUrlRequest, CreatePersonAuthCertificateImageResponse, ModifyPartnerAutoSignAuthUrlRequest, CreateEmployeeQualificationSealQrCodeRequest, DescribeBatchOrganizationRegistrationTasksRequest, ChannelCreateUserAutoSignSealUrlRequest, ChannelCreateUserAutoSignEnableUrlRequest, CreateRequestWithEncryptionRequest, ChannelCancelMultiFlowSignQRCodeRequest, ChannelDescribeOrganizationSealsRequest, DescribeUsageRequest, DescribeExtendedServiceAuthInfoRequest, CreateCloseOrganizationUrlResponse, DescribeChannelSealPolicyWorkflowUrlRequest, CreatePartnerAutoSignAuthUrlResponse, ArchiveDynamicFlowRequest, ChannelCreateDynamicFlowApproverRequest, ModifyFlowDeadlineResponse, DescribeFlowDetailInfoResponse, ChannelCreateBoundFlowsResponse, ChannelCreateUserAutoSignSealUrlResponse, ChannelCreateBatchQuickSignUrlRequest, ChannelCreateBoundFlowsRequest, ChannelDescribeEmployeesRequest, OperateTemplateResponse, CreateFlowBlockchainEvidenceUrlResponse, ChannelDeleteRoleUsersResponse, SyncProxyOrganizationOperatorsRequest, ChannelCreateFlowApproversResponse, CreateBatchAdminChangeInvitationsUrlResponse, DescribeUsageResponse, CreateSignUrlsRequest, ChannelCreateMultiFlowSignQRCodeRequest, ChannelCreateUserAutoSignEnableUrlResponse, ChannelGetTaskResultApiRequest, DescribeChannelOrganizationsRequest, ChannelDescribeBillUsageDetailResponse, CreateEmployeeChangeUrlResponse, ChannelRenewAutoSignLicenseRequest, ChannelCreatePreparedPersonalEsignRequest, CancelOrganizationFlowsRequest, CreatePersonAuthCertificateImageRequest, PrepareFlowsRequest, CreateFlowsByTemplatesResponse, DescribeChannelFlowEvidenceReportRequest, ChannelCreateRoleResponse, CreateEmployeeChangeUrlRequest, ChannelDescribeUserAutoSignStatusRequest, CreateModifyAdminAuthorizationUrlRequest, ChannelModifyRoleResponse, ModifyOrganizationBusinessInfoRequest, CreateSignUrlsResponse, ChannelDeleteRoleRequest, CreateBatchOrganizationRegistrationTasksRequest, ChannelCreateBatchQuickSignUrlResponse, CreateBatchOrganizationAuthorizationUrlResponse, CreatePartnerAutoSignAuthUrlRequest, DescribeBatchOrganizationRegistrationTasksResponse, ChannelCreateBatchCancelFlowUrlRequest, ChannelDescribeAccountBillDetailResponse, CreateFlowForwardsResponse, ChannelCreateFlowByFilesResponse, ChannelCreateFlowSignReviewResponse, ChannelDisableUserAutoSignRequest, ChannelDescribeOrganizationSealsResponse, SyncProxyOrganizationOperatorsResponse, CreateSealByImageResponse, ChannelCancelMultiFlowSignQRCodeResponse, ChannelDescribeRolesResponse, CreateChannelSubOrganizationActiveResponse, ChannelCreateReleaseFlowRequest, ChannelDescribeFlowComponentsResponse, DeleteOrganizationAuthorizationsRequest, ChannelCreateFlowGroupByFilesResponse, ChannelCreateMultiFlowSignQRCodeResponse, ChannelCreatePrepareFlowGroupResponse, DescribeCancelFlowsTaskRequest, ChannelDescribeUserAutoSignStatusResponse, ModifyExtendedServiceResponse, ChannelCreateUserRolesRequest, ChannelGetTaskResultApiResponse, ChannelCreateBatchSignUrlRequest, ChannelUpdateSealStatusResponse, ChannelCreateOrganizationModifyQrCodeResponse, ChannelDeleteSealPoliciesResponse, ChannelCreateWebThemeConfigResponse, GetDownloadFlowUrlRequest, ChannelCreateEmbedWebUrlResponse, ChannelBatchCancelFlowsRequest, CreateChannelOrganizationInfoChangeUrlRequest, ChannelModifyRoleRequest, ModifyFlowDeadlineRequest, ChannelUpdateSealStatusRequest, ChannelCreateFlowGroupByTemplatesRequest, CreateBatchInitOrganizationUrlRequest, CreateFlowGroupSignReviewRequest, ChannelCancelFlowRequest, DescribeTemplatesRequest, ChannelCreateSealPolicyRequest, CreateBatchAdminChangeInvitationsRequest, CreateFlowsByTemplatesRequest, DescribeBatchOrganizationRegistrationUrlsResponse, UploadFilesRequest, CreateSealByImageRequest, DescribeChannelOrganizationsResponse, ChannelCreateOrganizationBatchSignUrlResponse, CreateBatchOrganizationAuthorizationUrlRequest, ChannelCreateBatchCancelFlowUrlResponse, OperateChannelTemplateRequest, DescribeChannelSealPolicyWorkflowUrlResponse, CreateChannelFlowEvidenceReportResponse, ChannelDescribeAccountBillDetailRequest, ChannelDescribeEmployeesResponse, CreateModifyAdminAuthorizationUrlResponse, ChannelDeleteRoleResponse, ChannelCreateReleaseFlowResponse, SyncProxyOrganizationRequest, DescribeChannelFlowEvidenceReportResponse, ModifyPartnerAutoSignAuthUrlResponse, CreateFlowBlockchainEvidenceUrlRequest, DescribeUserFlowTypeRequest, ChannelCreateFlowApproversRequest, ChannelDescribeBillUsageDetailRequest, ChannelCreateFlowRemindsRequest, DescribeExtendedServiceAuthInfoResponse, CreateFileConvertTaskResponse, ChannelCreateEmbedWebUrlRequest, ChannelDescribeFlowComponentsRequest } from "./essbasic_models";
|
|
3
3
|
/**
|
|
4
4
|
* essbasic client
|
|
5
5
|
* @class
|
|
@@ -636,12 +636,128 @@ export declare class Client extends TencentCloudCommon.AbstractClient {
|
|
|
636
636
|
*/
|
|
637
637
|
CreateBatchInitOrganizationUrl(req: CreateBatchInitOrganizationUrlRequest, cb?: (error: string, rep: CreateBatchInitOrganizationUrlResponse) => void): Promise<CreateBatchInitOrganizationUrlResponse>;
|
|
638
638
|
/**
|
|
639
|
-
*
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
639
|
+
* 该接口支持对请求内容进行加密传输。调用方需使用约定的 AES-CBC 或 SM4-CBC 算法对请求内容进行加密,并使用 HMAC-SHA256 或 HMAC-SM3 算法对 IV 和加密后的数据进行完整性校验,防止请求内容被篡改。
|
|
640
|
+
|
|
641
|
+

|
|
642
|
+
|
|
643
|
+
**请求端加密流程**
|
|
644
|
+
1. 每次请求使用密码学安全的随机源生成 16 字节 的 IV。每次请求必须重新生成,严禁复用。
|
|
645
|
+
2. 使用约定的 AES-CBC 或 SM4-CBC 算法对原始请求体进行加密,使用 PKCS#7 Padding。
|
|
646
|
+
3. 将加密后的密文原始字节进行标准 Base64 编码,作为 EncryptedData 参数。
|
|
647
|
+
4. 将 IV 原始字节进行标准 Base64 编码,作为 IV 参数。
|
|
648
|
+
5. 对 IV 原始字节和密文原始字节直接拼接(不添加分隔符),计算 HMAC-SHA256 或 HMAC-SM4:HMAC(Key, IVBytes || CiphertextBytes)
|
|
649
|
+
6. 将 HMAC 的结果进行 标准 Base64 编码,作为 EncryptionSignature 参数。
|
|
650
|
+
|
|
651
|
+
**响应端解密流程**
|
|
652
|
+
1. 先判断本接口自身是否返回外层错误,此时错误为明文(标准腾讯云错误体),有则直接失败处理。
|
|
653
|
+
2. 分别对 IV、EncryptedData、EncryptionSignature 做标准 Base64 解码,得到原始字节。
|
|
654
|
+
3. 将 IV 与密文原始字节直接拼接(无分隔符),计算 HMAC-SHA256 或 HMAC-SM4:HMAC(Key, IVBytes || CiphertextBytes)。
|
|
655
|
+
4. 与响应中 EncryptionSignature 解码后的字节做恒定时间比较,不一致立即失败,不得继续解密。
|
|
656
|
+
5. 使用约定的 AES-CBC 或 SM4-CBC,以 IV 和密钥解密 EncryptedData,去除 PKCS#7 Padding 得到明文。
|
|
657
|
+
6. 先用腾讯云标准错误体反序列化明文,判断被加密业务接口是否返回 Error。
|
|
658
|
+
7. 无业务错误时,再用目标业务接口的响应结构体反序列化明文,取出实际业务参数。
|
|
659
|
+
|
|
660
|
+
**响应端错误处理**
|
|
661
|
+
1. 外层错误(本接口本身调用失败):返回标准腾讯云错误 JSON(含 Error.Code / Error.Message),无 EncryptedData,不需要解密即可处理。
|
|
662
|
+
2. 内层错误(业务接口执行失败):外层成功,但解密后的明文里包含 Error.Code / Error.Message,按目标业务接口的错误规范处理。
|
|
663
|
+
|
|
664
|
+
**处理过程示例**
|
|
665
|
+
```
|
|
666
|
+
# ========== 前置约定 ==========
|
|
667
|
+
AESKey : 加密 密钥(AES 32 字节,SM4 16 字节)
|
|
668
|
+
HMACKey : HMAC 密钥(与加密密钥需要不同)
|
|
669
|
+
ALGO : AES-CBC 或 SM4-CBC,双方约定
|
|
670
|
+
HMAC : ALGO == AES-CBC ? HMAC-SHA256 : HMAC-SM3
|
|
671
|
+
|
|
672
|
+
# ========== 请求端:加密并调用 ==========
|
|
673
|
+
function CallWithEncryption(bizAction, bizApplicationId, bizRequestObj):
|
|
674
|
+
# 1. 序列化业务请求
|
|
675
|
+
plaintext = JSON.stringify(bizRequestObj)
|
|
676
|
+
# 2. 生成 16 字节随机 IV(每次新生成,禁止复用)
|
|
677
|
+
iv = SecureRandom(16)
|
|
678
|
+
# 3. 对称加密(PKCS#7 Padding)
|
|
679
|
+
ciphertext = SymmetricEncrypt(ALGO, AESKey, iv, plaintext)
|
|
680
|
+
# 4. 计算完整性签名:HMAC(Key, IV || Ciphertext)
|
|
681
|
+
signature = HMAC(HMACKey, concat(iv, ciphertext))
|
|
682
|
+
# 5. 组装外层请求参数
|
|
683
|
+
encReq = {
|
|
684
|
+
RequestAction: bizAction,
|
|
685
|
+
ApplicationId: bizApplicationId,
|
|
686
|
+
IV: Base64(iv),
|
|
687
|
+
EncryptedData: Base64(ciphertext),
|
|
688
|
+
EncryptionSignature: Base64(signature),
|
|
689
|
+
}
|
|
690
|
+
# 6. 调用 CreateRequestWithEncryption
|
|
691
|
+
# TC3-HMAC-SHA256 鉴权由官方 SDK 自动完成
|
|
692
|
+
encResp = CloudAPI.CreateRequestWithEncryption(encReq)
|
|
693
|
+
# 7. 外层错误:明文,直接抛出
|
|
694
|
+
if encResp.Error != nil:
|
|
695
|
+
raise OuterError(encResp.Error)
|
|
696
|
+
# 8. 解密并返回业务响应
|
|
697
|
+
return DecryptResponse(encResp.Response)
|
|
698
|
+
|
|
699
|
+
# ========== 响应端:校验并解密 ==========
|
|
700
|
+
function DecryptResponse(resp):
|
|
701
|
+
# 1. Base64 解码
|
|
702
|
+
ivBytes = Base64Decode(resp.IV)
|
|
703
|
+
ctBytes = Base64Decode(resp.EncryptedData)
|
|
704
|
+
sigBytes = Base64Decode(resp.EncryptionSignature)
|
|
705
|
+
# 2. 重新计算 HMAC
|
|
706
|
+
expected = HMAC(HMACKey, concat(ivBytes, ctBytes))
|
|
707
|
+
# 3. 恒定时间比较,失败立即终止(不得继续解密)
|
|
708
|
+
if not ConstantTimeEqual(expected, sigBytes):
|
|
709
|
+
raise SignatureMismatch
|
|
710
|
+
# 4. 对称解密,去除 PKCS#7 Padding
|
|
711
|
+
plaintext = SymmetricDecrypt(ALGO, AESKey, ivBytes, ctBytes)
|
|
712
|
+
# 5. 先按腾讯云错误体解析,判断业务是否失败
|
|
713
|
+
bizErr = TryParseTencentCloudError(plaintext)
|
|
714
|
+
if bizErr != nil:
|
|
715
|
+
raise BusinessError(bizErr)
|
|
716
|
+
# 6. 按目标业务接口的响应结构反序列化
|
|
717
|
+
return JSON.parse(plaintext, BizResponseSchema)
|
|
718
|
+
```
|
|
719
|
+
|
|
720
|
+
**AES-CBC 示例**
|
|
721
|
+
|
|
722
|
+
以下示例参数及结果可用于验证 AES-CBC 加密和 HMAC-SHA256 签名算法的实现是否正确。
|
|
723
|
+
|
|
724
|
+
加密密钥:AES-CBC-Key-1234
|
|
725
|
+
签名密钥:AES-HMAC-Key-123
|
|
726
|
+
IV:1234567890abcdef
|
|
727
|
+
请求内容:{"Request": "This is a test."}
|
|
728
|
+
|
|
729
|
+
最终请求参数:
|
|
730
|
+
```
|
|
731
|
+
{
|
|
732
|
+
"RequestAction": "ChannelDescribeFlowComponents",
|
|
733
|
+
"ApplicationId: "yD******************************,
|
|
734
|
+
"IV": "MTIzNDU2Nzg5MGFiY2RlZg==",
|
|
735
|
+
"EncryptedData": "Iqp2W1jislwMNmE7bH9dKZZiMQsfkAPyvAAqDFRnWLw=",
|
|
736
|
+
"EncryptionSignature": "4TT3PUCZgZT7YmEPtXDm5PDcM6xT7FoYHfMW8xunB5I="
|
|
737
|
+
}
|
|
738
|
+
```
|
|
739
|
+
|
|
740
|
+
**SM4-CBC 示例**
|
|
741
|
+
|
|
742
|
+
以下示例参数及结果可用于验证 SM4-CBC 加密和 HMAC-SM4 签名算法的实现是否正确。
|
|
743
|
+
|
|
744
|
+
加密密钥:SM4-CBC-Key-1234
|
|
745
|
+
签名密钥:SM4-HMAC-Key-123
|
|
746
|
+
IV:fedcba0987654321
|
|
747
|
+
请求内容:{"Request": "This is a test."}
|
|
748
|
+
|
|
749
|
+
最终请求参数:
|
|
750
|
+
```
|
|
751
|
+
{
|
|
752
|
+
"RequestAction": "ChannelDescribeFlowComponents",
|
|
753
|
+
"ApplicationId: "yD******************************,
|
|
754
|
+
"IV": "ZmVkY2JhMDk4NzY1NDMyMQ==",
|
|
755
|
+
"EncryptedData": "GwUovQhNUPaUnVM/UDXMtPOYTpTSi2B1oyZDFbyyvns=",
|
|
756
|
+
"EncryptionSignature": "nHB/v/AvOaDCQ66esFNnp12lHKcGkwaLGid0Warl/KE="
|
|
757
|
+
}
|
|
758
|
+
```
|
|
643
759
|
*/
|
|
644
|
-
|
|
760
|
+
CreateRequestWithEncryption(req: CreateRequestWithEncryptionRequest, cb?: (error: string, rep: CreateRequestWithEncryptionResponse) => void): Promise<CreateRequestWithEncryptionResponse>;
|
|
645
761
|
/**
|
|
646
762
|
* 您可以通过合同流程ID查询相关的<font color="red"><b>填写控件</b></font>信息及其内容。这包括控件的归属方、控件的填写状态(是否已填写)以及具体的填写内容。
|
|
647
763
|
|
|
@@ -1131,6 +1247,13 @@ export declare class Client extends TencentCloudCommon.AbstractClient {
|
|
|
1131
1247
|
**这个接口的操作人必须跟生成批量认证链接接口的应用号一致,才可以调用,否则会返回当前操作人没有认证中的企业认证流**
|
|
1132
1248
|
*/
|
|
1133
1249
|
DeleteOrganizationAuthorizations(req: DeleteOrganizationAuthorizationsRequest, cb?: (error: string, rep: DeleteOrganizationAuthorizationsResponse) => void): Promise<DeleteOrganizationAuthorizationsResponse>;
|
|
1250
|
+
/**
|
|
1251
|
+
* 通过此接口(ChannelDescribeAccountBillDetail)查询该第三方平台子客账号绑定中、剩余可绑定账号等套餐使用情况。
|
|
1252
|
+
<ul>
|
|
1253
|
+
<li>对于渠道客户企业的查询,通过指定渠道企业的唯一标识(Agent.ProxyOrganizationId)来查询“子客账号”套餐消耗详情</li>
|
|
1254
|
+
</ul>
|
|
1255
|
+
*/
|
|
1256
|
+
ChannelDescribeAccountBillDetail(req: ChannelDescribeAccountBillDetailRequest, cb?: (error: string, rep: ChannelDescribeAccountBillDetailResponse) => void): Promise<ChannelDescribeAccountBillDetailResponse>;
|
|
1134
1257
|
/**
|
|
1135
1258
|
* 在已启动的签署流程中,可对签署截止日期进行延期操作,主要分为以下两个层面:
|
|
1136
1259
|
1. <b> 合同(流程)层面</b>:仅需提供签署流程ID。此操作将对整个签署流程以及未单独设置签署截止时间的签署人进行延期。
|
|
@@ -746,13 +746,129 @@ class Client extends TencentCloudCommon.AbstractClient {
|
|
|
746
746
|
return this.request("CreateBatchInitOrganizationUrl", req, cb);
|
|
747
747
|
}
|
|
748
748
|
/**
|
|
749
|
-
*
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
749
|
+
* 该接口支持对请求内容进行加密传输。调用方需使用约定的 AES-CBC 或 SM4-CBC 算法对请求内容进行加密,并使用 HMAC-SHA256 或 HMAC-SM3 算法对 IV 和加密后的数据进行完整性校验,防止请求内容被篡改。
|
|
750
|
+
|
|
751
|
+

|
|
752
|
+
|
|
753
|
+
**请求端加密流程**
|
|
754
|
+
1. 每次请求使用密码学安全的随机源生成 16 字节 的 IV。每次请求必须重新生成,严禁复用。
|
|
755
|
+
2. 使用约定的 AES-CBC 或 SM4-CBC 算法对原始请求体进行加密,使用 PKCS#7 Padding。
|
|
756
|
+
3. 将加密后的密文原始字节进行标准 Base64 编码,作为 EncryptedData 参数。
|
|
757
|
+
4. 将 IV 原始字节进行标准 Base64 编码,作为 IV 参数。
|
|
758
|
+
5. 对 IV 原始字节和密文原始字节直接拼接(不添加分隔符),计算 HMAC-SHA256 或 HMAC-SM4:HMAC(Key, IVBytes || CiphertextBytes)
|
|
759
|
+
6. 将 HMAC 的结果进行 标准 Base64 编码,作为 EncryptionSignature 参数。
|
|
760
|
+
|
|
761
|
+
**响应端解密流程**
|
|
762
|
+
1. 先判断本接口自身是否返回外层错误,此时错误为明文(标准腾讯云错误体),有则直接失败处理。
|
|
763
|
+
2. 分别对 IV、EncryptedData、EncryptionSignature 做标准 Base64 解码,得到原始字节。
|
|
764
|
+
3. 将 IV 与密文原始字节直接拼接(无分隔符),计算 HMAC-SHA256 或 HMAC-SM4:HMAC(Key, IVBytes || CiphertextBytes)。
|
|
765
|
+
4. 与响应中 EncryptionSignature 解码后的字节做恒定时间比较,不一致立即失败,不得继续解密。
|
|
766
|
+
5. 使用约定的 AES-CBC 或 SM4-CBC,以 IV 和密钥解密 EncryptedData,去除 PKCS#7 Padding 得到明文。
|
|
767
|
+
6. 先用腾讯云标准错误体反序列化明文,判断被加密业务接口是否返回 Error。
|
|
768
|
+
7. 无业务错误时,再用目标业务接口的响应结构体反序列化明文,取出实际业务参数。
|
|
769
|
+
|
|
770
|
+
**响应端错误处理**
|
|
771
|
+
1. 外层错误(本接口本身调用失败):返回标准腾讯云错误 JSON(含 Error.Code / Error.Message),无 EncryptedData,不需要解密即可处理。
|
|
772
|
+
2. 内层错误(业务接口执行失败):外层成功,但解密后的明文里包含 Error.Code / Error.Message,按目标业务接口的错误规范处理。
|
|
773
|
+
|
|
774
|
+
**处理过程示例**
|
|
775
|
+
```
|
|
776
|
+
# ========== 前置约定 ==========
|
|
777
|
+
AESKey : 加密 密钥(AES 32 字节,SM4 16 字节)
|
|
778
|
+
HMACKey : HMAC 密钥(与加密密钥需要不同)
|
|
779
|
+
ALGO : AES-CBC 或 SM4-CBC,双方约定
|
|
780
|
+
HMAC : ALGO == AES-CBC ? HMAC-SHA256 : HMAC-SM3
|
|
781
|
+
|
|
782
|
+
# ========== 请求端:加密并调用 ==========
|
|
783
|
+
function CallWithEncryption(bizAction, bizApplicationId, bizRequestObj):
|
|
784
|
+
# 1. 序列化业务请求
|
|
785
|
+
plaintext = JSON.stringify(bizRequestObj)
|
|
786
|
+
# 2. 生成 16 字节随机 IV(每次新生成,禁止复用)
|
|
787
|
+
iv = SecureRandom(16)
|
|
788
|
+
# 3. 对称加密(PKCS#7 Padding)
|
|
789
|
+
ciphertext = SymmetricEncrypt(ALGO, AESKey, iv, plaintext)
|
|
790
|
+
# 4. 计算完整性签名:HMAC(Key, IV || Ciphertext)
|
|
791
|
+
signature = HMAC(HMACKey, concat(iv, ciphertext))
|
|
792
|
+
# 5. 组装外层请求参数
|
|
793
|
+
encReq = {
|
|
794
|
+
RequestAction: bizAction,
|
|
795
|
+
ApplicationId: bizApplicationId,
|
|
796
|
+
IV: Base64(iv),
|
|
797
|
+
EncryptedData: Base64(ciphertext),
|
|
798
|
+
EncryptionSignature: Base64(signature),
|
|
799
|
+
}
|
|
800
|
+
# 6. 调用 CreateRequestWithEncryption
|
|
801
|
+
# TC3-HMAC-SHA256 鉴权由官方 SDK 自动完成
|
|
802
|
+
encResp = CloudAPI.CreateRequestWithEncryption(encReq)
|
|
803
|
+
# 7. 外层错误:明文,直接抛出
|
|
804
|
+
if encResp.Error != nil:
|
|
805
|
+
raise OuterError(encResp.Error)
|
|
806
|
+
# 8. 解密并返回业务响应
|
|
807
|
+
return DecryptResponse(encResp.Response)
|
|
808
|
+
|
|
809
|
+
# ========== 响应端:校验并解密 ==========
|
|
810
|
+
function DecryptResponse(resp):
|
|
811
|
+
# 1. Base64 解码
|
|
812
|
+
ivBytes = Base64Decode(resp.IV)
|
|
813
|
+
ctBytes = Base64Decode(resp.EncryptedData)
|
|
814
|
+
sigBytes = Base64Decode(resp.EncryptionSignature)
|
|
815
|
+
# 2. 重新计算 HMAC
|
|
816
|
+
expected = HMAC(HMACKey, concat(ivBytes, ctBytes))
|
|
817
|
+
# 3. 恒定时间比较,失败立即终止(不得继续解密)
|
|
818
|
+
if not ConstantTimeEqual(expected, sigBytes):
|
|
819
|
+
raise SignatureMismatch
|
|
820
|
+
# 4. 对称解密,去除 PKCS#7 Padding
|
|
821
|
+
plaintext = SymmetricDecrypt(ALGO, AESKey, ivBytes, ctBytes)
|
|
822
|
+
# 5. 先按腾讯云错误体解析,判断业务是否失败
|
|
823
|
+
bizErr = TryParseTencentCloudError(plaintext)
|
|
824
|
+
if bizErr != nil:
|
|
825
|
+
raise BusinessError(bizErr)
|
|
826
|
+
# 6. 按目标业务接口的响应结构反序列化
|
|
827
|
+
return JSON.parse(plaintext, BizResponseSchema)
|
|
828
|
+
```
|
|
829
|
+
|
|
830
|
+
**AES-CBC 示例**
|
|
831
|
+
|
|
832
|
+
以下示例参数及结果可用于验证 AES-CBC 加密和 HMAC-SHA256 签名算法的实现是否正确。
|
|
833
|
+
|
|
834
|
+
加密密钥:AES-CBC-Key-1234
|
|
835
|
+
签名密钥:AES-HMAC-Key-123
|
|
836
|
+
IV:1234567890abcdef
|
|
837
|
+
请求内容:{"Request": "This is a test."}
|
|
838
|
+
|
|
839
|
+
最终请求参数:
|
|
840
|
+
```
|
|
841
|
+
{
|
|
842
|
+
"RequestAction": "ChannelDescribeFlowComponents",
|
|
843
|
+
"ApplicationId: "yD******************************,
|
|
844
|
+
"IV": "MTIzNDU2Nzg5MGFiY2RlZg==",
|
|
845
|
+
"EncryptedData": "Iqp2W1jislwMNmE7bH9dKZZiMQsfkAPyvAAqDFRnWLw=",
|
|
846
|
+
"EncryptionSignature": "4TT3PUCZgZT7YmEPtXDm5PDcM6xT7FoYHfMW8xunB5I="
|
|
847
|
+
}
|
|
848
|
+
```
|
|
849
|
+
|
|
850
|
+
**SM4-CBC 示例**
|
|
851
|
+
|
|
852
|
+
以下示例参数及结果可用于验证 SM4-CBC 加密和 HMAC-SM4 签名算法的实现是否正确。
|
|
853
|
+
|
|
854
|
+
加密密钥:SM4-CBC-Key-1234
|
|
855
|
+
签名密钥:SM4-HMAC-Key-123
|
|
856
|
+
IV:fedcba0987654321
|
|
857
|
+
请求内容:{"Request": "This is a test."}
|
|
858
|
+
|
|
859
|
+
最终请求参数:
|
|
860
|
+
```
|
|
861
|
+
{
|
|
862
|
+
"RequestAction": "ChannelDescribeFlowComponents",
|
|
863
|
+
"ApplicationId: "yD******************************,
|
|
864
|
+
"IV": "ZmVkY2JhMDk4NzY1NDMyMQ==",
|
|
865
|
+
"EncryptedData": "GwUovQhNUPaUnVM/UDXMtPOYTpTSi2B1oyZDFbyyvns=",
|
|
866
|
+
"EncryptionSignature": "nHB/v/AvOaDCQ66esFNnp12lHKcGkwaLGid0Warl/KE="
|
|
867
|
+
}
|
|
868
|
+
```
|
|
753
869
|
*/
|
|
754
|
-
async
|
|
755
|
-
return this.request("
|
|
870
|
+
async CreateRequestWithEncryption(req, cb) {
|
|
871
|
+
return this.request("CreateRequestWithEncryption", req, cb);
|
|
756
872
|
}
|
|
757
873
|
/**
|
|
758
874
|
* 您可以通过合同流程ID查询相关的<font color="red"><b>填写控件</b></font>信息及其内容。这包括控件的归属方、控件的填写状态(是否已填写)以及具体的填写内容。
|
|
@@ -1301,6 +1417,15 @@ class Client extends TencentCloudCommon.AbstractClient {
|
|
|
1301
1417
|
async DeleteOrganizationAuthorizations(req, cb) {
|
|
1302
1418
|
return this.request("DeleteOrganizationAuthorizations", req, cb);
|
|
1303
1419
|
}
|
|
1420
|
+
/**
|
|
1421
|
+
* 通过此接口(ChannelDescribeAccountBillDetail)查询该第三方平台子客账号绑定中、剩余可绑定账号等套餐使用情况。
|
|
1422
|
+
<ul>
|
|
1423
|
+
<li>对于渠道客户企业的查询,通过指定渠道企业的唯一标识(Agent.ProxyOrganizationId)来查询“子客账号”套餐消耗详情</li>
|
|
1424
|
+
</ul>
|
|
1425
|
+
*/
|
|
1426
|
+
async ChannelDescribeAccountBillDetail(req, cb) {
|
|
1427
|
+
return this.request("ChannelDescribeAccountBillDetail", req, cb);
|
|
1428
|
+
}
|
|
1304
1429
|
/**
|
|
1305
1430
|
* 在已启动的签署流程中,可对签署截止日期进行延期操作,主要分为以下两个层面:
|
|
1306
1431
|
1. <b> 合同(流程)层面</b>:仅需提供签署流程ID。此操作将对整个签署流程以及未单独设置签署截止时间的签署人进行延期。
|
|
@@ -1489,7 +1489,7 @@ export interface ChannelCreateFlowSignUrlRequest {
|
|
|
1489
1489
|
*/
|
|
1490
1490
|
FlowId: string;
|
|
1491
1491
|
/**
|
|
1492
|
-
* <p>流程签署人列表,其中结构体的ApproverType必传。<br>若为个人签署方或saas企业签署方,则Name,Mobile必传。OrganizationName 传对应企业名称。<br>若为子客企业签署方则需传OpenId、OrganizationOpenId、OrganizationName, 其他可不传。(如果对应OrganizationOpenId 子客已经认证激活了,则可以省去OrganizationName)</p><p>此结构体和发起接口参与方结构体复用,除了上述参数外,可传递的参数有:</p><ol><li>RecipientId: 发起合同会返回,可以直接用于指定需要生成链接的签署方。</li><li>ApproverSignTypes: 指定签署方签署时候的认证方式,仅此链接生效。</li><li>SignTypeSelector: 可以指定签署方签署合同的认证校验方式的选择模式。</li><li>Intention: 指定H5签署视频核身的意图配置,仅视频签署需要使用。</li></ol><p
|
|
1492
|
+
* <p>流程签署人列表,其中结构体的ApproverType必传。<br>若为个人签署方或saas企业签署方,则Name,Mobile必传。OrganizationName 传对应企业名称。<br>若为子客企业签署方则需传OpenId、OrganizationOpenId、OrganizationName, 其他可不传。(如果对应OrganizationOpenId 子客已经认证激活了,则可以省去OrganizationName)</p><p>此结构体和发起接口参与方结构体复用,除了上述参数外,可传递的参数有:</p><ol><li>RecipientId: 发起合同会返回,可以直接用于指定需要生成链接的签署方。</li><li>ApproverSignTypes: 指定签署方签署时候的认证方式,仅此链接生效。</li><li>SignTypeSelector: 可以指定签署方签署合同的认证校验方式的选择模式。</li><li>Intention: 指定H5签署视频核身的意图配置,仅视频签署需要使用。</li></ol><p>注:</p><ol><li>签署人<b>只能使用签名类型、时间类型、印章类型、签批类型的签署控件和内容填写控件</b>,其他类型的签署控件暂时不支持。</li><li>对于签名控件类型,支持手写签名、系统签名、个人印章等类型的签名方式,取决于合同发起时的设定。另外,签署的时候不支持拉取个人签署方已有签名图片资产,且创建的签名图片为一次性使用,不会保存为签署方个人资产。</li><li>生成发起方预览链接时,该字段(FlowApproverInfos)可以传空或者不传。</li></ol>
|
|
1493
1493
|
*/
|
|
1494
1494
|
FlowApproverInfos?: Array<FlowApproverInfo>;
|
|
1495
1495
|
/**
|
|
@@ -2451,6 +2451,27 @@ export interface PrepareFlowsResponse {
|
|
|
2451
2451
|
*/
|
|
2452
2452
|
RequestId?: string;
|
|
2453
2453
|
}
|
|
2454
|
+
/**
|
|
2455
|
+
* CreateRequestWithEncryption返回参数结构体
|
|
2456
|
+
*/
|
|
2457
|
+
export interface CreateRequestWithEncryptionResponse {
|
|
2458
|
+
/**
|
|
2459
|
+
* <p>加密算法使用的初始化向量。固定为 16 字节,将 IV 原始字节使用标准 Base64 编码后传入。</p>
|
|
2460
|
+
*/
|
|
2461
|
+
IV?: string;
|
|
2462
|
+
/**
|
|
2463
|
+
* <p>使用 AES-CBC 或 SM4-CBC 加密返回内容得到的密文。加密前返回内容采用 PKCS#7 Padding;将密文原始字节使用标准 Base64 编码后传入。</p>
|
|
2464
|
+
*/
|
|
2465
|
+
EncryptedData?: string;
|
|
2466
|
+
/**
|
|
2467
|
+
* <p>用于校验请求数据完整性。对 IV 原始字节和密文原始字节直接拼接(不加拼接符)后计算 HMAC-SHA256,再将计算结果使用标准 Base64 编码后传入。</p>
|
|
2468
|
+
*/
|
|
2469
|
+
EncryptionSignature?: string;
|
|
2470
|
+
/**
|
|
2471
|
+
* 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
|
|
2472
|
+
*/
|
|
2473
|
+
RequestId?: string;
|
|
2474
|
+
}
|
|
2454
2475
|
/**
|
|
2455
2476
|
* 流程签署二维码的签署信息,适用于客户系统整合二维码功能。 通过链接,用户可直接访问电子签名小程序并签署合同。
|
|
2456
2477
|
*/
|
|
@@ -2790,64 +2811,36 @@ export interface DescribeTemplatesResponse {
|
|
|
2790
2811
|
*/
|
|
2791
2812
|
export interface AutoSignConfig {
|
|
2792
2813
|
/**
|
|
2793
|
-
*
|
|
2814
|
+
* <p>自动签开通个人用户信息, 包括名字,身份证等</p>
|
|
2794
2815
|
*/
|
|
2795
2816
|
UserInfo: UserThreeFactor;
|
|
2796
2817
|
/**
|
|
2797
|
-
*
|
|
2798
|
-
<ul><li>**false**: 不需要(默认)</li>
|
|
2799
|
-
<li>**true**:需要</li></ul>
|
|
2800
|
-
|
|
2801
|
-
|
|
2802
|
-
注:`该字段已经失效,请勿设置此参数。`
|
|
2818
|
+
* <p>是否回调证书信息:</p><ul><li>**false**: 不需要(默认)</li><li>**true**:需要</li></ul><p>注:<code>该字段已经失效,请勿设置此参数。</code></p>
|
|
2803
2819
|
*/
|
|
2804
2820
|
CertInfoCallback?: boolean;
|
|
2805
2821
|
/**
|
|
2806
|
-
*
|
|
2807
|
-
<ul><li>**false**: 不能自己定义(默认)</li>
|
|
2808
|
-
<li>**true**: 可以自己定义</li></ul>
|
|
2822
|
+
* <p>是否支持用户自定义签名印章:</p><ul><li>**false**: 不能自己定义(默认)</li><li>**true**: 可以自己定义</li></ul>
|
|
2809
2823
|
*/
|
|
2810
2824
|
UserDefineSeal?: boolean;
|
|
2811
2825
|
/**
|
|
2812
|
-
*
|
|
2813
|
-
<ul><li>**false**: 不需要(默认)</li>
|
|
2814
|
-
<li>**true**: 需要</li></ul>
|
|
2826
|
+
* <p>回调中是否需要自动签将要使用的印章(签名)图片的 base64:</p><ul><li>**false**: 不需要(默认)</li><li>**true**: 需要</li></ul>
|
|
2815
2827
|
*/
|
|
2816
2828
|
SealImgCallback?: boolean;
|
|
2817
2829
|
/**
|
|
2818
|
-
*
|
|
2830
|
+
* <p>该字段已废弃,请使用【应用号配置】中的回调地址统一接口消息</p>
|
|
2819
2831
|
* @deprecated
|
|
2820
2832
|
*/
|
|
2821
2833
|
CallbackUrl?: string;
|
|
2822
2834
|
/**
|
|
2823
|
-
*
|
|
2824
|
-
<ul><li>**WEIXINAPP** : 微信人脸识别</li>
|
|
2825
|
-
<li>**INSIGHT** : 慧眼人脸识别</li>
|
|
2826
|
-
<li>**TELECOM** : 运营商三要素验证</li></ul>
|
|
2827
|
-
注:
|
|
2828
|
-
<ul><li>如果是小程序开通链接,仅支持传 WEIXINAPP。为空默认 WEIXINAPP</li>
|
|
2829
|
-
<li>如果是 H5 开通链接,支持传 INSIGHT / TELECOM。为空默认 INSIGHT </li></ul>
|
|
2835
|
+
* <p>开通时候的身份验证方式, 取值为:</p><ul><li>**WEIXINAPP** : 微信人脸识别</li><li>**INSIGHT** : 慧眼人脸识别</li><li>**TELECOM** : 运营商三要素验证</li></ul>注:<ul><li>如果是小程序开通链接,仅支持传 WEIXINAPP。为空默认 WEIXINAPP</li><li>如果是 H5 开通链接,支持传 INSIGHT / TELECOM。为空默认 INSIGHT </li></ul>
|
|
2830
2836
|
*/
|
|
2831
2837
|
VerifyChannels?: Array<string>;
|
|
2832
2838
|
/**
|
|
2833
|
-
*
|
|
2834
|
-
|
|
2835
|
-
<ul><li><b>1</b>: (默认)不绑定自动签账号许可开通,开通后一直有效, 后续使用合同份额进行合同发起</li></ul>
|
|
2836
|
-
|
|
2837
|
-
注:`该字段已经失效,请勿设置此参数。`
|
|
2839
|
+
* <p>设置用户开通自动签时是否绑定个人自动签账号许可。</p><ul><li><b>1</b>: (默认)不绑定自动签账号许可开通,开通后一直有效, 后续使用合同份额进行合同发起</li></ul><p>注:<code>该字段已经失效,请勿设置此参数。</code></p>
|
|
2838
2840
|
*/
|
|
2839
2841
|
LicenseType?: number;
|
|
2840
2842
|
/**
|
|
2841
|
-
*
|
|
2842
|
-
|
|
2843
|
-
注:`仅支持H5开通场景`, `跳转链接仅支持 https:// , qianapp:// 开头`
|
|
2844
|
-
|
|
2845
|
-
跳转场景:
|
|
2846
|
-
<ul><li>**贵方H5 -> 腾讯电子签H5 -> 贵方H5** : JumpUrl格式: https://YOUR_CUSTOM_URL/xxxx,只需满足 https:// 开头的正确且合规的网址即可。</li>
|
|
2847
|
-
<li>**贵方原生App -> 腾讯电子签H5 -> 贵方原生App** : JumpUrl格式: qianapp://YOUR_CUSTOM_URL,只需满足 qianapp:// 开头的URL即可。`APP实现方,需要拦截Webview地址跳转,发现url是qianapp:// 开头时跳转到原生页面。`APP拦截地址跳转可参考:<a href='https://stackoverflow.com/questions/41693263/android-webview-err-unknown-url-scheme'>Android</a>,<a href='https://razorpay.com/docs/payments/payment-gateway/web-integration/standard/webview/upi-intent-ios/'>IOS</a> </li></ul>
|
|
2848
|
-
|
|
2849
|
-
成功结果返回:
|
|
2850
|
-
若贵方需要在跳转回时通过链接query参数提示开通成功,JumpUrl中的query应携带如下参数:`appendResult=qian`。这样腾讯电子签H5会在跳转回的url后面会添加query参数提示贵方签署成功,例如:qianapp://YOUR_CUSTOM_URL?action=sign&result=success&from=tencent_ess
|
|
2843
|
+
* <p>开通成功后前端页面跳转的url,此字段的用法场景请联系客户经理确认。</p><p>注:<code>仅支持H5开通场景</code>, <code>跳转链接仅支持 https:// , qianapp:// 开头</code></p><p>跳转场景:</p><ul><li>**贵方H5 -> 腾讯电子签H5 -> 贵方H5** : JumpUrl格式: https://YOUR_CUSTOM_URL/xxxx,只需满足 https:// 开头的正确且合规的网址即可。</li><li>**贵方原生App -> 腾讯电子签H5 -> 贵方原生App** : JumpUrl格式: qianapp://YOUR_CUSTOM_URL,只需满足 qianapp:// 开头的URL即可。<code>APP实现方,需要拦截Webview地址跳转,发现url是qianapp:// 开头时跳转到原生页面。</code>APP拦截地址跳转可参考:<a href="https://qian.tencent.com/developers/company/openqianh5/#3-%E8%BF%94%E5%9B%9E%E5%BA%94%E7%94%A8jumpurl%E6%A0%BC%E5%BC%8F">返回应用JumpUrl格式</a> </li></ul><p>成功结果返回:<br>若贵方需要在跳转回时通过链接query参数提示开通成功,JumpUrl中的query应携带如下参数:<code>appendResult=qian</code>。这样腾讯电子签H5会在跳转回的url后面会添加query参数提示贵方签署成功,例如:qianapp://YOUR_CUSTOM_URL?action=sign&result=success&from=tencent_ess</p>
|
|
2851
2844
|
*/
|
|
2852
2845
|
JumpUrl?: string;
|
|
2853
2846
|
}
|
|
@@ -4087,6 +4080,31 @@ export interface ChannelCreateUserAutoSignEnableUrlRequest {
|
|
|
4087
4080
|
*/
|
|
4088
4081
|
EndPoint?: string;
|
|
4089
4082
|
}
|
|
4083
|
+
/**
|
|
4084
|
+
* CreateRequestWithEncryption请求参数结构体
|
|
4085
|
+
*/
|
|
4086
|
+
export interface CreateRequestWithEncryptionRequest {
|
|
4087
|
+
/**
|
|
4088
|
+
* <p>操作的接口名称。取值参考接口文档输入参数章节关于公共参数 Action 的说明。</p>
|
|
4089
|
+
*/
|
|
4090
|
+
RequestAction: string;
|
|
4091
|
+
/**
|
|
4092
|
+
* <p>第三方应用的唯一标识,对应通用参数 Agent.AppId。</p>
|
|
4093
|
+
*/
|
|
4094
|
+
ApplicationId: string;
|
|
4095
|
+
/**
|
|
4096
|
+
* <p>加密算法使用的初始化向量。固定为 16 字节,将 IV 原始字节使用标准 Base64 编码后传入。</p>
|
|
4097
|
+
*/
|
|
4098
|
+
IV: string;
|
|
4099
|
+
/**
|
|
4100
|
+
* <p>使用 AES-CBC 或 SM4-CBC 加密请求内容得到的密文。加密前请求内容采用 PKCS#7 Padding;将密文原始字节使用标准 Base64 编码后传入。</p>
|
|
4101
|
+
*/
|
|
4102
|
+
EncryptedData: string;
|
|
4103
|
+
/**
|
|
4104
|
+
* <p>用于校验请求数据完整性。对 IV 原始字节和密文原始字节直接拼接(不加拼接符)后计算 HMAC-SHA256,再将计算结果使用标准 Base64 编码后传入。</p>
|
|
4105
|
+
*/
|
|
4106
|
+
EncryptionSignature?: string;
|
|
4107
|
+
}
|
|
4090
4108
|
/**
|
|
4091
4109
|
* ChannelCancelMultiFlowSignQRCode请求参数结构体
|
|
4092
4110
|
*/
|