# alinesno-infra-common **Repository Path**: sdwl_git/alinesno-infra-common ## Basic Information - **Project Name**: alinesno-infra-common - **Description**: 核心框架集成公共和通用的公共包能力,达到核心框架包可拆分可依赖,可集成的目的,通过集成核心框架,形成基础的核心能力。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 11 - **Created**: 2023-12-15 - **Last Updated**: 2023-12-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # alinesno-infra-common ## 集成的进度情况 通过此工程集成公共包验证和示例,用于更好的调试核心包的功能并用于对外服务,集成下面的功能进度情况,同时提供出对应的公共接口验证和调试 ### 父类集成 父类通过可配置的变量进行集成管理,即通过传递参数变量来进行各个环境之前的转换区分 | 序号 | 分类 | 功能 | 说明 | 进度 | 备注 | |:----:|----------|------------------------------|----------------------------------------------------------------------------|------|------| | 1 | 集成能力 | Nexus仓库集成 | 将Nexus仓库集成到系统中,用于管理和存储软件包、依赖项等。 | | | | 2 | | 集成revision统一版本号 | 在系统中集成revision统一版本号功能,确保软件包和依赖项的版本号一致性。 | | | | 3 | | 集成镜像仓库一键打成容器镜像 | 将系统集成到镜像仓库中,并提供一键打包成容器镜像的功能。,方便部署和扩展。 | | | | 4 | | 集成非root账号运行 | 非root账号运行可以降低系统受到攻击的风险,并限制对系统资源的访问权限。 | | | ### 配置中心 ### core基础功能 以下是对每个模块的功能和说明的补充: | 序号 | 模块 | 功能 | 说明 | 进度 | 备注 | |:----:|----------|-------------------------------|---------------------------------------------------------------------|------|------| | 1 | 能用能力 | 分布式框架 | 结合微服务框架,使用合适的身份验证机制。 | | | | 2 | | 公共依赖包(配置/公共代码) | 包含配置文件和公共代码,供其他模块使用。 | | | | 3 | | 服务容器化 | 将服务容器化,使其能够在容器环境中运行。 | | | | 4 | | 代码生成器 | 自动生成代码,提高开发效率。 | | | | 5 | | MyBatis操作集成 | 集成MyBatis框架,方便数据库操作。 | | | | 6 | | 按钮权限 | 根据用户权限控制按钮的显示与隐藏。 | | | | 7 | | 单点登录 | 实现用户在多个系统中只需登录一次即可访问其他系统。 | | | | 8 | | 租户集成 | 支持多租户的系统架构,使不同租户的数据相互隔离。 | | | | 9 | | 多服务集成 | 将多个服务集成到一个系统中,实现功能的整合和共享。 | | | | 10 | | 前端集成 | 将前端代码集成到后端系统中,实现前后端的协同开发。 | | | | 11 | | 多平台发布集成 | 支持在多个平台上发布系统,如Web、移动端等。 | | | | 12 | | 本地调试 | 提供本地调试环境,方便开发人员进行调试和测试。 | | | | 13 | | 异常处理 | 统一处理系统中的异常,提高系统的健壮性和容错性。 | | | | 14 | | 日志处理 | 记录系统运行时的日志信息,便于故障排查和系统监控。 | | | | 15 | | 页面搜索 | 实现对系统中各个页面的搜索功能,方便用户查找信息。 | | | | 16 | | Redis缓存使用 | 使用Redis作为缓存,提高系统的性能和响应速度。 | | | | 17 | | 分布式Redis缓存使用 | 在分布式环境下使用Redis作为缓存,支持多个节点之间的数据同步和共享。 | | | | 18 | | 系统日志 | 记录系统的操作日志和事件日志,用于审计和追踪系统行为。 | | | | 19 | | 消息使用 | 实现系统内部的消息传递和通信,支持异步处理和解耦。 | | | | 20 | | 日志埋点 | 在系统中埋点记录关键操作和事件,用于分析统计和业务监控。 | | | | 21 | | SwaggerUI文档 | 使用SwaggerUI生成接口文档,方便开发人员查看和调试接口。 | | | | 22 | | 多数据库源 | 支持连接多个不同类型的数据库,实现对多个数据库的操作。 | | | | 23 | | 配置加密 | 对敏感配置信息进行加密处理,保护系统的安全性。 | | | | 24 | | 表单提交校验 | 对用户提交的表单数据进行校验,确保数据的合法性和完整性。 | | | | 25 | | Excel导入/导出 | 支持将数据导入到系统或从系统导出数据到Excel文件。 | | | | 26 | | 文件上传 | 实现用户上传文件的功能,存储和管理用户上传的文件。 | | | | 27 | | XSS攻击防护 | 防止系统受到跨站脚本攻击,保护用户的信息安全。 | | | | 28 | | 多数据源分库分表(读写分离) | 支持将数据分布在多个数据库中,实现读写分离和数据的水平扩展。 | | | | 29 | | 多数据源动态加载卸载 | 支持动态加载和卸载数据源,方便系统对多个数据源的管理和切换。 | | | | 30 | | 多数据源事务( jta atomikos) | 支持在多数据源的情况下进行事务管理,保证数据的一致性和完整性。 | | | | 31 | | CDN配置 | 配置CDN加速服务,提高系统的访问速度和稳定性。 | | | | 32 | | 多种环境部署 | 支持在不同的环境中部署系统,如开发环境、测试环境和生产环境等。 | | | | 33 | | 分布式ID | 生成分布式环境下唯一的ID,用于标识和区分不同的数据和实体。 | | | | | | | | | | | 34 | 基类能力 | 通用API | 提供通用的API接口,供其他模块进行调用和扩展。 | | | | 35 | | 通用CURD | 实现通用的增删改查操作,简化数据操作的代码编写。 | | | | 36 | | 通用Service | 提供通用的业务逻辑处理功能,减少重复代码的编写。 | | | | 37 | | 通用Mapper | 提供通用的数据库操作方法,简化数据库操作的代码编写。 | | | | 38 | | Junit基础类 | 提供基础的Junit测试类,方便进行单元测试和集成测试。 | | | | 39 | | ORM基础类 | 封装ORM框架的基础类,简化数据库操作的代码编写。 | | | | 40 | | Entity基础类 | 定义实体类的基础结构和属性,用于数据的存储和传输。 | | | | 41 | | PO基础类 | 定义持久化对象的基础结构和属性,用于与数据库进行交互。 | | | | 42 | | VO基础类 | 定义视图对象的基础结构和属性,用于展示数据给用户。 | | | | 43 | | Exception基础类 | 定义异常类的基础结构,用于系统中的异常处理和错误提示。 | | | | 44 | | Service基础类 | 定义业务逻辑处理类的基础结构,提供通用的业务处理方法。 | | | | 45 | | Mapper基础类 | 定义数据库操作类的基础结构,提供通用的数据库操作方法。 | | | | 46 | | 分页基础类 | 封装分页查询的基础类,方便进行分页查询操作。 | | | | 47 | | 日志基础类 | 定义日志记录类的基础结构,用于记录系统运行时的日志信息。 | | | | 48 | | 基础通用常量 | 定义系统中使用的常量,提高代码的可读性和可维护性。 | | | | 49 | | 获取Context上下文 | 提供获取系统上下文信息的方法,方便在代码中获取和使用上下文信息。 | | | | | | | | | | ### web集成 > 包含公共组件集成 | 序号 | 类型 | 功能 | 说明 | 进度 | 备注 | |:----:|----------|--------------------|-------------------------------------------------------------------------------|------|------| | 1 | 通用集成 | 普通JWT前后端登录 | 确保只有经过身份验证和授权的用户才能访问敏感接口API。使用合适的身份验证机制。 | | | | 2 | | 单点登录 | 实现用户在多个系统中的统一登录,避免重复登录的问题。 | | | | 3 | | 菜单权限集成 | 将菜单权限与用户角色关联,控制用户在系统中的菜单访问权限。 | | | | 4 | | 权限注解 | 通过在方法或类上添加注解,实现对接口或方法的权限控制。 | | | | 5 | | 数据权限 | 控制用户对数据的访问权限,确保用户只能访问其具备权限的数据。 | | | | 6 | | 参数和代码集成 | 对参数进行验证和处理,确保参数的合法性和安全性。 | | | | 7 | | CORS集成 | 实现跨域资源共享,允许不同域名下的前端应用访问后端接口。 | | | | 8 | | 黑白名单路径请求 | 根据请求路径进行黑名单或白名单的过滤,限制或允许特定的请求。 | | | | 9 | | 安全验证码集成 | 集成验证码功能,用于防止恶意机器人或自动化攻击。 | | | | 10 | | 前端异常 | 捕获和处理前端应用的异常,提供友好的错误提示和日志记录。 | | | | 11 | | 公共前端返回对象 | 定义和封装前端应用的公共返回对象,统一的数据结构和格式。 | | | | 12 | | 数据请求分页 | 对数据查询请求进行分页处理,返回分页结果给前端应用。 | | | | 13 | | 代码过滤转换 | 对请求或响应的代码进行过滤和转换,确保安全性和合规性。 | | | | 14 | | 会话管理 | 管理用户的会话状态,实现用户登录状态的保持和管理。 | | | | 15 | | 公共API | 提供一些通用的API接口,如文件上传、短信发送等功能。 | | | | | | | | | | | 1 | 模块集成 | 代码转换插件机制 | 提供代码转换的插件机制,用于在编译或运行时对代码进行转换和增强。 | | | | 2 | | 获取当前用户注解制 | 提供注解方式获取当前登录用户的信息,方便在代码中获取用户上下文。 | | | | 3 | | 存储接口集成 | 集成存储接口,用于对数据进行持久化存储和访问。 | | | | 4 | | 非存储接口集成 | 集成非存储接口,用于与外部系统进行交互和通信。 | | | | 5 | | 通知组件集成 | 集成通知组件,用于发送和接收系统内部或外部的通知消息。 | | | | 6 | | 分布式ID集成 | 集成分布式ID生成器,确保在分布式环境下生成唯一的ID。 | | | ### 安全过滤 | 序号 | 类型 | 功能 | 说明 | 进度 | 备注 | |:----:|----------|------------------------------------------|---------------------------------------------------------------------------------|------|------| | 1 | 接口安全 | 接口API数据加密和解密 | 对接口API的数据进行加密和解密,确保数据在传输和存储过程中的安全性。 | | | | 2 | | 接口API的限流配置 | 针对接口API的请求量进行限制,防止恶意请求和过载情况对系统造成影响。 | | | | 3 | | 接口API的文件上传安全限制 | 对接口API的文件上传进行安全限制,包括文件类型、大小、文件名等的验证和限制。 | | | | 4 | | 接口API的防重复提交 | 防止接口API被重复提交,避免重复操作和数据不一致的问题。 | | | | 5 | | 接口API的防SQL注入/防XSS攻击 | 针对接口API的输入进行过滤和验证,防止SQL注入和跨站脚本攻击。 | | | | 6 | | 接口API的全加密交互 | 对接口API的请求和响应进行全程加密,确保数据在传输过程中的机密性和完整性。 | | | | 7 | | 接口API防越权配置 | 控制用户对接口API的访问权限,防止越权访问和未授权操作。 | | | | 8 | | 身份验证和授权 | 确保只有经过身份验证和授权的用户才能访问敏感接口API。使用合适的身份验证机制。 | | | | 9 | | 强化密码策略 | 对于涉及用户密码的接口API,实施强密码策略,包括密码复杂性要求。 | | | | 10 | | 输入验证和过滤 | 对于接收用户输入的接口API,确保进行输入验证和过滤,以防止恶意输入和攻击。 | | | | 11 | | 安全漏洞扫描 | 定期进行安全漏洞扫描和代码审查,以发现和修复潜在的安全漏洞和弱点。 | | | | 12 | | 异常处理和错误信息 | 在接口API中,避免向用户返回具体的错误信息,以防止信息泄露和攻击者利用这些信息。 | | | | | | | | | | | 1 | 数据安全 | 数据存储安全,包括数据库字段和数据显示 | 对数据库中的数据进行安全存储,包括对敏感字段的加密和对数据的安全显示。 | | | | 2 | | 数据审计(对账) | 对数据进行审计和对账,确保数据的完整性和一致性,并监测潜在的安全问题。 | | | | 3 | | 数据敏感词过滤 | 对数据进行敏感词过滤,防止敏感信息的泄露和不当使用。 | | | | 4 | | 数据范围(数据权限) | 控制用户对数据的访问权限,确保用户只能访问其具备权限的数据。 | | | | 5 | | 表结构自动维护 | 自动维护数据库表结构的变更,包括新增、修改、删除表字段等操作。 | | | | 6 | | 字段数据绑定(字典回写) | 将数据字段与字典进行绑定,实现数据的字典回写和显示。 | | | | 7 | | 虚拟属性绑定 | 将虚拟属性与数据字段进行绑定,实现数据的动态计算和展示。 | | | | 8 | | 字段加密解密 | 对字段进行加密和解密操作,确保敏感数据在存储和传输过程中的安全性。 | | | | 9 | | 字段脱敏 | 对字段进行脱敏处理,隐藏敏感信息的具体内容,保护用户隐私。 | | | | 10 | | 字段加密解密 | 对字段进行加密和解密操作,确保敏感数据在存储和传输过程中的安全性。 | | | | 11 | | 字段脱敏 | 对字段进行脱敏处理,隐藏敏感信息的具体内容,保护用户隐私。 | | | | | | | | | | | 1 | 其它 | 日志输出打印安全,主要包括加密和数据配置 | 对系统日志进行安全处理,包括加密敏感信息和配置适当的日志级别。 | | | | 2 | | 日志和监控 | 记录和监控接口API的访问日志,包括请求和响应数据,以便追踪和分析潜在的安全问题。 | | | | 3 | | 双因子认证安全,主要集成TOPT安全 | 实现双因子认证的安全机制,提供额外的身份验证保护。 | | | | | | | | | | ### 前端ui核心包 > 此为登陆前端框架默认集成功能(同时配置后台实现) | 序号 | 类型 | 功能 | 说明 | 进度 | 备注 | |:----:|------------|----------------------|--------------------------------------------------------------|------|------| | 1 | 桌面端组件 | 界面布局 | 统一界面布局管理和配置 | | | | 2 | | 文件上传 | 提供用户上传文件的功能 | | | | 3 | | 菜单列表 | 显示可用的菜单选项供用户选择 | | | | 4 | | 切换缓存 | 允许用户切换缓存以提高系统性能 | | | | 5 | | 自定义主题 | 允许用户自定义系统的界面主题 | | | | 6 | | 临时锁屏 | 提供临时锁屏功能,保护用户的数据安全 | | | | 7 | | 图片查看 | 允许用户查看图片文件 | | | | 8 | | 分页列表 | 显示分页列表,方便用户浏览和导航大量数据 | | | | 9 | | 服务支持列表 | 显示可用的服务支持选项供用户选择 | | | | 10 | | 平台功能介绍 | 显示平台的功能介绍信息 | | | | | | | | | | | 1 | | 账号密码登陆 | 允许用户使用账号密码进行登陆 | | | | 2 | | 验证码开关 | 允许用户开启或关闭验证码功能 | | | | 3 | | 通知公告 | 提供通知公告功能,向用户发送重要信息 | | | | 4 | | 平台教程列表 | 显示平台的教程列表,帮助用户了解和使用系统 | | | | 5 | | 登陆次数限制 | 对用户的登陆次数进行限制 | | | | 6 | | 登陆次数限制时间 | 设置用户登陆次数限制的时间间隔 | | | | 7 | | 登陆IP限制 | 对用户的登陆IP进行限制 | | | | 8 | | 登陆IP限制时间 | 设置用户登陆IP限制的时间间隔 | | | | 9 | | 自定义登陆域名 | 允许用户自定义登陆页面的域名 | | | | 10 | | 手机验证码登陆 | 允许用户使用手机验证码进行登陆 | | | | 11 | | 微信绑定登陆 | 允许用户使用微信账号进行登陆 | | | | 12 | | 自定义logo | 允许用户自定义系统的logo | | | | 13 | | 自定义banner | 允许用户自定义系统的banner | | | | 14 | | 自定义企业信息 | 允许用户自定义系统中显示的企业信息 | | | | 15 | | 自定义企业说明 | 允许用户自定义系统中显示的企业说明 | | | | 16 | | 自定义版权信息 | 允许用户自定义系统中显示的版权信息 | | | | 17 | | 自定义团队信息 | 允许用户自定义系统中显示的团队信息 | | | | 18 | | 自定义登陆标题 | 允许用户自定义登陆页面的标题 | | | | 19 | | 获取系统配置 | 获取系统的配置信息 | | | | 20 | | 获取参数字典 | 获取系统中定义的参数字典 | | | | 21 | | 获取当前用户 | 获取当前登陆用户的信息 | | | | 22 | | 异常处理 | 处理系统中发生的异常情况 | | | | 23 | | 内容复制 | 提供复制内容的功能 | | | | 24 | | 使用图标 | 使用图标来增加系统界面的美观和易用性 | | | | 25 | | 权限使用 | 根据用户的权限控制系统中的功能访问 | | | | 26 | | 多级目录 | 支持多级目录结构,方便用户组织和管理系统功能 | | | | 27 | | Request工具类 | 提供封装的HTTP请求工具类,简化前端与后端的数据交互 | | | | 28 | | SessionStorage工具类 | 提供封装的SessionStorage操作工具类,方便前端存储和读取数据 | | | | 29 | | Cookie工具类 | 提供封装的Cookie操作工具类,方便前端存储和读取Cookie数据 | | | | 30 | | LocalStorage工具类 | 提供封装的LocalStorage操作工具类,方便前端存储和读取本地数据 | | | | | | | | | | | 31 | | 用户信息编辑 | 允许用户编辑和更新自己的个人信息 | | | | 32 | | 用户头像修改上传 | 允许用户修改和上传自己的头像图片 | | | | 33 | | 登陆日志 | 记录用户的登陆日志,方便管理员查看登陆历史记录 | | | | 34 | | 在线会话管理 | 管理用户的在线会话,包括查看和终止用户的会话 | | | | 35 | | 异常登陆拦截 | 拦截异常的登陆行为,保护系统的安全 | | | | 36 | | 踢人下线 | 强制将指定用户下线,保护系统的安全 | | | | 37 | | 最大登陆会话 | 设置用户最大允许的同时登陆会话数 | | | | 38 | | 最长登陆时间 | 设置用户登陆会话的最长有效时间 | | | | 39 | | 单点登陆 | 支持单点登陆,用户只需登陆一次即可访问多个相关系统 | | | | 40 | | 单点退出 | 支持单点退出,用户退出一个系统后同时退出其他相关系统 | | | | 41 | | 登陆条款编辑 | 允许管理员编辑和更新登陆条款 | | | | 42 | | 登陆隐私政策编辑 | 允许管理员编辑和更新登陆隐私政策 | | | | 43 | | 登陆隐私政策编辑 | 允许管理员编辑和更新登陆隐私政策 | | | | | | | | | | | 44 | | 邮件二次登陆 | 允许用户通过邮件进行二次登陆 | | | | 45 | | 令牌二次认证 | 允许用户使用令牌进行二次认证 | | | | 46 | | 登陆数据加密 | 对用户的登陆数据进行加密保护 | | | | 47 | | 记住我安全加密 | 对“记住我”功能中的用户信息进行安全加密 | | | | 48 | | 钉钉/微信扫描登陆 | 允许用户使用钉钉或微信扫描二维码进行登陆 | | | | | | | | | | ## 其它 - 无 ## 鸣谢 - 集成alinesno-cloud-service核心工程结构 - 构建代码参考了dubbo代码 - 集成ruoyi-vue/ruoyi-vue-plus核心工程包模块 - ......