| .. | ||
| src/main/java/com/ruoyi/verification/ca | ||
| pom.xml | ||
| README.md | ||
RuoYi Verification Module
模块说明
本模块是独立的认证服务模块,提供CA服务适配器和身份认证相关功能。
主要功能
1. CA服务适配器接口
CAServiceAdapter: CA服务适配器接口,定义标准化的CA服务接口规范- 支持不同CA服务提供商的对接
2. 身份认证模型
IdentityVerificationRequest: 身份认证请求对象IdentityVerificationResponse: 身份认证响应对象
3. Mock实现
MockCAServiceAdapter: Mock CA服务适配器,用于开发和测试环境
模块结构
ruoyi-verification
├── src/main/java/com/ruoyi/verification
│ └── ca
│ ├── CAServiceAdapter.java # CA服务适配器接口
│ ├── impl
│ │ └── MockCAServiceAdapter.java # Mock实现
│ └── model
│ ├── IdentityVerificationRequest.java # 请求对象
│ └── IdentityVerificationResponse.java # 响应对象
└── pom.xml
使用方式
1. 添加依赖
在需要使用CA服务的模块中添加依赖:
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-verification</artifactId>
</dependency>
2. 注入CA服务适配器
@Autowired
private CAServiceAdapter caServiceAdapter;
3. 调用身份认证
IdentityVerificationRequest request = new IdentityVerificationRequest(
userId.toString(),
realName,
idCardNumber,
"IDENTITY"
);
IdentityVerificationResponse response = caServiceAdapter.verifyIdentity(request);
Mock实现说明
Mock CA服务适配器的认证逻辑:
- 身份证号以"1"开头:认证通过
- 身份证号以"2"开头:认证拒绝
- 其他情况:认证通过
扩展真实CA服务
要对接真实的CA服务,只需:
- 创建新的实现类,实现
CAServiceAdapter接口 - 在实现类中调用真实的CA服务API
- 通过配置切换使用Mock实现或真实实现
示例:
@Component("realCAServiceAdapter")
public class RealCAServiceAdapter implements CAServiceAdapter {
@Override
public IdentityVerificationResponse verifyIdentity(IdentityVerificationRequest request) {
// 调用真实CA服务API
// ...
}
@Override
public boolean isServiceAvailable() {
// 检查真实CA服务可用性
// ...
}
}
依赖模块
ruoyi-common: 通用工具模块httpclient: HTTP客户端(用于调用外部CA服务)