package com.alipay.easysdk.kms.aliyun;
|
|
import com.alipay.easysdk.kernel.util.Signer;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
|
/**
|
* KMS签名器
|
*
|
* @author aliyunkms
|
* @version $Id: AliyunKMSSigner.java, v 0.1 2020年05月08日 9:10 PM aliyunkms Exp $
|
*/
|
public class AliyunKMSSigner extends Signer {
|
private AliyunKMSClient client;
|
private static final Logger LOGGER = LoggerFactory.getLogger(Signer.class);
|
|
public AliyunKMSSigner(AliyunKMSClient aliyunKmsClient) {
|
this.client = aliyunKmsClient;
|
}
|
|
/**
|
* 计算签名
|
*
|
* @param content 待签名的内容
|
* @param privateKeyPem 私钥,使用KMS签名不使用此参数
|
* @return 签名值的Base64串
|
*/
|
public String sign(String content, String privateKeyPem) {
|
try {
|
return this.client.sign(content);
|
} catch (Exception e) {
|
String errorMessage = "签名遭遇异常,content=" + content + " reason=" + e.getMessage();
|
LOGGER.error(errorMessage, e);
|
throw new RuntimeException(errorMessage, e);
|
}
|
}
|
|
public AliyunKMSClient getClient() {
|
return this.client;
|
}
|
|
public void setClient(AliyunKMSClient client) {
|
this.client = client;
|
}
|
}
|