113 lines
3.2 KiB
Markdown
113 lines
3.2 KiB
Markdown
# SCFS-API-SDK
|
||
|
||
## 使用教程
|
||
|
||
```java
|
||
// 创建配置类
|
||
Profile profile=new RsaProfile.Builder()
|
||
.channel(xx)
|
||
.privateKey(xx)
|
||
.addCertificate(xx)
|
||
.build();
|
||
|
||
// 创建 http 客户端
|
||
ApiClient apiClient=new DefaultApiClientBuilder()
|
||
.profile(profile)
|
||
.build();
|
||
|
||
// 发起调用
|
||
EchoService echoService=new EchoService(apiClient);
|
||
echoService.
|
||
|
||
echo();
|
||
```
|
||
|
||
* [scfs-api-core](scfs-api-core) 核心模块,封装http请求,抽象加密/加密/加签等
|
||
* [scfs-api-service](scfs-api-service) 业务模型模块
|
||
* [scfs-api-rsa](scfs-api-rsa) rsa/aes加密算法实现
|
||
* [scfs-api-sm](scfs-api-sm) 国密实现模块,sm2/sm4
|
||
* [scfs-api-spring-boot-starter](scfs-api-spring-boot-starter) springboot 集成模块
|
||
|
||
## 生成私钥/证书
|
||
|
||
### 通过openSSL生成RSA证书
|
||
|
||
使用密钥工具生成
|
||
|
||
* https://slproweb.com/products/Win32OpenSSL.htm
|
||
|
||
```shell
|
||
# 私钥
|
||
openssl genrsa -out rsa_private_key.pem 2048
|
||
|
||
# 证书请求文件
|
||
openssl req -utf8 -new -out rsa_csr.pem -key rsa_private_key.pem
|
||
# Country Name (2 letter code) [AU]:CN
|
||
# State or Province Name (full name) [Some-State]:浙江省
|
||
# Locality Name (eg, city) []:杭州市
|
||
# Organization Name (eg, company) [Internet Widgits Pty Ltd]:浙江稠州商业银行
|
||
# Organizational Unit Name (eg, section) []:数字金融部
|
||
# Common Name (e.g. server FQDN or YOUR name) []:scfs.czcb.com.cn
|
||
# Email Address []:
|
||
|
||
# Please enter the following 'extra' attributes
|
||
# to be sent with your certificate request
|
||
# A challenge password []:
|
||
# An optional company name []:
|
||
|
||
# 证书
|
||
openssl x509 -req -days 3650 -in rsa_csr.pem -signkey rsa_private_key.pem -out rsa_certificate.pem
|
||
```
|
||
|
||
## 更新版本号
|
||
|
||
```shell
|
||
# 开发测试阶段使用快照版本
|
||
mvn versions:set -DnewVersion=1.0.1-snapshot
|
||
|
||
# 正式版本,版本号加一
|
||
mvn versions:set -DnewVersion=1.0.2
|
||
```
|
||
|
||
## 代码扫描
|
||
使用jenkins扫描
|
||
|
||
配置maven脚本 \bin\mvn.cmd,添加一行命令 `set JAVA_HOME="C:\Ext\zulu17"`
|
||
|
||
```shell
|
||
## 添加jdk17目录
|
||
set JAVA_HOME="C:\Ext\zulu17"
|
||
|
||
set ERROR_CODE=0
|
||
|
||
@REM ==== START VALIDATION ====
|
||
if not "%JAVA_HOME%"=="" goto OkJHome
|
||
for %%i in (java.exe) do set "JAVACMD=%%~$PATH:i"
|
||
goto checkJCmd
|
||
```
|
||
|
||
执行 scanner.cmd脚本
|
||
|
||
```shell
|
||
## C:\Ext\mvn17\bin\mvn.cmd 修改maven脚本路径
|
||
call C:\Ext\mvn17\bin\mvn.cmd clean package verify sonar:sonar -Dsonar.projectKey=scfs-api-sdk -Dsonar.projectName=scfs-api-sdk -Dsonar.host.url=http://10.129.135.192:7100 -Dsonar.login=sqp_90e5fb014f985e2c458e46b9239926cfbbd4fffe
|
||
```
|
||
|
||
## 沙箱环境配置
|
||
|
||
```shell
|
||
scfs.api-gateway.online=false
|
||
scfs.api-gateway.host=http://10.131.98.80:8088/api-gateway
|
||
scfs.api-gateway.channel.channel-no=0000
|
||
scfs.api-gateway.channel.app-no=41
|
||
scfs.api-gateway.cipher.store-type=resources
|
||
# 渠道 0000
|
||
scfs.api-gateway.cipher.channel-private-key=CZCB-SM-FB4E3DCE0297438ED390771F46576B92FD7E6B7F1E9BD12A7D87E821B59948E5-PRIVATE.pem
|
||
scfs.api-gateway.cipher.channel-certificate-serial=FB4E3DCE0297438ED390771F46576B92FD7E6B7F1E9BD12A7D87E821B59948E5
|
||
scfs.api-gateway.cipher.certificate=CZCB-SM-FB4E3DCE0297438ED390771F46576B92FD7E6B7F1E9BD12A7D87E821B59948E5-CERTIFICATE.pem
|
||
```
|
||
## 单元测试
|
||
|
||
```shell
|
||
mvn clean test
|
||
``` |