# DBSyncer-Agent-Demo **Repository Path**: ghi/dbsyncer-agent-demo ## Basic Information - **Project Name**: DBSyncer-Agent-Demo - **Description**: DBSyncer Agent Demo 是一个基于 Spring Boot 的安全代理服务演示项目,提供 RSA 加密解密功能以及管理界面。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2026-02-24 - **Last Updated**: 2026-09-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # DBSyncer Agent Demo DBSyncer Agent Demo 是一个基于 Spring Boot 的安全代理服务演示项目,提供 RSA 加密解密功能以及管理界面。 ## 项目简介 该项目是 DBSyncer 数据同步工具的 Agent 演示版本,主要功能包括: - RSA 密钥对生成与管理 - 请求数据加密解密 - 基于 Spring Security 的安全认证 - Web 管理界面 ## 技术栈 - **Spring Boot** - 核心框架 - **Spring Security** - 安全认证 - **Spring MVC** - Web 框架 - **RSA** - 非对称加密算法 - **Log4j2** - 日志框架 - **Maven** - 项目构建 ## 项目结构 ``` dbsyncer-agent-demo/ ├── src/main/java/org/dbsyncer/agent/ │ ├── Application.java # 启动类 │ ├── config/ # 配置类 │ │ ├── AgentProperties.java # Agent 配置属性 │ │ ├── SecurityConfig.java # 安全配置 │ │ └── WebConfig.java # Web 配置 │ ├── controller/ # 控制器 │ │ ├── AdminApiController.java # 管理 API │ │ ├── AdminController.java # 管理页面 │ │ └── ApiController.java # 加解密 API │ └── service/ # 服务层 │ └── RsaConfigService.java # RSA 配置服务 ├── src/main/resources/ │ ├── application.properties # 应用配置 │ ├── log4j2.xml # 日志配置 │ └── templates/ # 模板文件 │ ├── admin/config.html # 管理页面 │ └── login.html # 登录页面 └── pom.xml # Maven 配置 ``` ## 配置说明 ### 应用配置 (application.properties) 主要配置项: ```properties # Agent 认证配置 agent.auth.username=admin agent.auth.password=admin # RSA 配置 agent.rsa.configFile=配置文件路径 ``` ### 配置属性类 `AgentProperties` 包含以下配置: - **Auth** - 认证配置 - `username` - 用户名 - `password` - 密码 - **Rsa** - RSA 加密配置 - `configFile` - RSA 配置文件路径 ## API 接口 ### 加解密 API | 接口 | 方法 | 描述 | |------|------|------| | `/api/encrypt` | POST | 加密数据 | | `/api/decrypt` | POST | 解密数据 | ### 管理 API | 接口 | 方法 | 描述 | |------|------|------| | `/admin/api/rsa` | GET | 获取 RSA 配置 | | `/admin/api/rsa/generate` | POST | 生成 RSA 密钥对 | | `/admin/api/rsa/save` | POST | 保存凭证 | ## 页面访问 - 登录页面:`/login` - 管理页面:`/admin/config` ## 📦构建与运行 dbsyncer-agent-demo是基于[dbsyncer](https://gitee.com/ghi/dbsyncer)项目做agent开发,所以需要依赖包 #### 配置依赖包: > 通过maven命令,安装依赖包到本地仓库 ``` mvn # 下载dbs项目 git clone https://gitee.com/ghi/dbsyncer.git cd dbsyncer-common # 安装dbsyncer-common工具包到maven本地仓库中(首次安装需要) mvn install -Dmaven.test.skip=true ``` ### 前提条件 - JDK 8+ - Maven 3.0+ ### 构建项目 ```bash mvn clean package ``` ### 运行项目 #### 方式一 ```bash java -jar target/dbsyncer-agent-2.0.9.jar # 或后台启动 nohup java -jar target/dbsyncer-agent-2.0.9.jar > agent.log 2>&1 & ``` #### 方式二,指定配置文件 创建配置文件 application.properties ```bash # 服务IP server.ip=127.0.0.1 # 访问端口 server.port=8080 # 会话过期时间(秒) server.servlet.session.timeout=1800 # 访问服务的路径,'/' -> http://${server.ip}:${server.port}/ server.servlet.context-path=/ spring.profiles.active=default spring.main.allow-bean-definition-overriding=true #All < Trace < Debug < Info < Warn < Error < Fatal < OFF logging.level.root=info # 认证配置 agent.auth.username=admin agent.auth.password=admin # RSA 配置文件路径 agent.rsa.config-file=./agent-rsa.json ``` ```bash java -jar dbsyncer-agent-2.0.9.jar --spring.config.location=./application.properties # 或后台启动 nohup java -jar dbsyncer-agent-2.0.9.jar --spring.config.location=./application.properties > agent.log 2>&1 & ``` 或使用 Maven: ```bash mvn spring-boot:run ``` ## 安全特性 - 基于 Spring Security 的表单认证 - 密码加密存储 - RSA 非对称加密保护敏感数据 - 支持公网/内网访问控制 ## 许可证 本项目基于相关开源许可证授权,详情请查看 LICENSE 文件。