千家信息网

应用基础框架全面解析

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,转载本文需注明出处:微信公众号EAWorld,违者必究。引言:应用基础框架Coframe是EOS产品自带的开源应用基础框架,提供了资源管理、权限管理、用户以及角色管理等业务应用基础能力,用户可以根据自
千家信息网最后更新 2026年11月01日应用基础框架全面解析

转载本文需注明出处:微信公众号EAWorld,违者必究。

引言:

应用基础框架Coframe是EOS产品自带的开源应用基础框架,提供了资源管理、权限管理、用户以及角色管理等业务应用基础能力,用户可以根据自己的需要进行二次开发与扩展。本文向大家分享Coframe的主要功能和设计实现方案。

目录:

一、简介

二、系统资源

三、权限管理

四、组织管理

一、简介

应用基础框架也叫Coframe,是产品自带的开源应用基础框架,提供了一些基础功能,用户可以根据自己的需要进行二次开发与扩展。

Coframe提供3大核心功能:

  1. 系统资源:提供了功能菜单管理、字典码表、应用管理折几个应用框架基础能力。

  2. 权限管理:提供了基于Party(参与者) 的复杂权限计算模型和授权模型。

    基于参与者、资源与授权等概念可扩展开发出符合用户个性化需求的参与者模型。

  3. 组织管理:提供了机构、岗位、员工、 用户、工作组等组织机构相关管理功能,支持与已有业务系统对接,使得基于普元EOS Platform 8.0开发的应用可方便地使用同一套组织机构。

逻辑架构

逻辑架构图展示了基础应用框架的基本功能模块,前端Restful形式接口调用后端服务。

进程架构


Coframe集成部署示意图

应用基础框架有两种部署模式:微服务架构Coframe集成模式和单应用架构Coframe集成模式。

单应用架构很好理解,即直接使用Coframe源码或者jar包开发应用,后端只有一个server,而集成模式可以将应用要对外暴露的服务封装在Coframe中,这样Coframe可以对应用进行权限管理。前端使用VUE开发,可以很方便的使用源码进行二次开发。

数据模型


(可点击图片放大查看)

应用基础框架的数据模型即DB表结构,展示了主要的一些表结构,包括权限表,用户表等。用户可以很方便的进行二次开发扩展应用。

二、系统资源

菜单管理

菜单框架支持两级菜单,用户可以自定义菜单的路径和打开方式等。

应用基础框架提供了几个基础的菜单,用户可以在页面编辑菜单或者直接在数据库端编辑菜单。目前应用基础框架前端Ui支持二级菜单,用户可以根据自己的需求扩展到三级菜单。

字典码表

字典码表即为系统内部定义的具有业务属性的数据字典。

系统管理员可以配置字典类型和字典项,用于管理系统中的枚举类型的基础数据,并且支持excel导入导出。字典类型和字典数据均支持一级子项。

  • 字典类型:对数据进行分类管理

  • 字典数据项:需要管理的枚举数据

应用管理

应用管理又叫服务权限控制,是指在多应用系统以及单应用系统下,实现对应用的服务功能的权限控制。实现角色、用户、功能的灵活绑定。

在需要进行权限管理的功能接口方法定义上添加@TarestOperation注解,发布服务。

@RequestMapping("/say-hello")
@TarestService(group = "SP1", displayName = "服务提供组1", version = "1.0.0.0", groupName = "服务提供组1", name = "ISampleAppHello")
public interface ISampleAppHello {

@GetMapping
@TarestOperation(checkPermission=false,name="DEMO_001",displayName="功能1")
String sayHello();

/**
* @TarestOperation 在@TarestOperation中默认是不进行权限管理的
* 通过设置checkPermission = true,打开权限控制功能
* **/
@GetMapping(value = "/user")
@TarestOperation(checkPermission =true,name="DEMO_002",displayName="功能2")
String insertDemo(@RequestParam String name, @RequestParam Integer age);

}

(左右滑动查看全部代码)

单应用系统即只有一个后端应用的系统,(直接以嵌入方式集成Coframe)无需新建应用。

多应用系统即有多个后端应用的系统,Coframe作为一个独立的应用部署的系统,需要在coframe中新建应用。如图所示:

三、权限管理

提供了基于Party(参与者) 的复杂权限计算模型和授权模型。

基于参与者、资源与授权等概念可扩展开发出符合用户个性化需求的参与者模型。

  • 角色:角色是Coframe一个重要的对象,也可以成为权限集,表示系统中权限一个子集,用于控制用户可以使用的功能集合,赋予用户一个角色表示给用户一定功能的使用权限。Coframe中角色的分配本身赋予某些用户,员工,机构等之外,还要向角色授予可访问某些功能,模块,表单,视图等资源的权限。拥有某角色的用户可访问角色被授予的资源的权限。

  • 用户:所有能登录系统的用户都是系统中的用户,需要增加登录账号有两种方式。一种是在用户管理中新增用户,第二种是在组织管理中新增员工时关联一个用户,如果用户的登录名不存在会创建一个新的用户。

用户管理

所有能登录系统的用户都是系统中的用户,需要增加登录账号有两种方式。一种是在用户管理中新增用户,第二种是在组织管理中新增员工时关联一个用户,如果用户的登录名不存在会创建一个新的用户。当Coframe使用IAM的统一认证登录的时候能够同步IAM端的同一租户下的用户信息。

Coframe的用户账号由其登录认证方式决定是本地创建的还是又IAM即同一认真平台同步过来的用户信息。

  • 本地登录:用户账号及其认证密码在本地存储,本地认证配置可以参考:http://t.cn/EUrzEtL

  • 单点登录:即与IAM集成的sso方式登录,可以参考:http://t.cn/EUrZPOs

授权管理

目前提供了菜单授权与服务授权,授权管理即将资源与参与者之间建立关系。如下图所示,菜单和应用:

即可以视为资源,而账号、角色、组织机构、工作中等,即可以视为参与者。授权表结构如下图所示:

此注解用来标志一个数据实体为授权实体,授权实体需要指定类型:资源、授权主体,比如:

@Entity
// 此实体名称为order,类型为resource
@AuthEntity(name = "order", type = AuthEntityType.RESOURCE)
@Table(name = "SAMPLE_ORDER")
public class SampleOrder {

@Id
@GeneratedValue
private Long id;

private String name;

private Date date;
}

(左右滑动查看全部代码)

四、组织管理

机构管理

机构指企业的组织机构,一般包含机构、岗位、员工等信息。

机构管理通过对一棵机构人员树的维护把机构、岗位、人员等信息和关系维护好,并可设置这些组织对象的角色。

工作组管理

工作组与机构类似,是为了将项目组、工作组等临时性的组织机构管理起来,业务上通常工作组有一定的时效性,是一个非常设机构。

工作组是企业动态创建的组织机构分组,工作组下可以有子工作组、员工信息。

总结:



以上介绍了应用基础框架的主要基础功能,以及设计过程中的一些理念,比如授权模型等。

作为开源应用基础框架会随着规划发展不断完善,用户可以根据自身的需求来更改适配。也非常欢迎大家能够更多参与使其更加健壮。

精选提问:

问1:这个是一个前后端分离的项目吗 我看前端单独部署在nginx中。

答:是前后端分离的,前端是用VUE开发的。

问2:接入的SSO是支持CAS吗?如果是CAS的话,在前后端分离的项目在前端有什么好的设计吗?因为CAS一般基于fliter来接入CAS server的。

答:接入的SSO是Oauth3.0的,目前不支持CAS,可以参考。

问3:Coframe是开源的吗?可以商用吗?

答:一般对公司的客户是开源的,但是对外并没有公布源码(没有放在github之类的托管平台上面)。

问4:它是一个平台级的应用吗,我可以接入第三方的应用进来吗?

答:不是,它提供了类似菜单、授权等基础能力,可以基于源码二次开发,也可以基于jar开发自己的应用。

问5:目前最新版本是多少?授权用的是Shiro吗?

答:最新快照版本8.0.0-SNAPSHOT,目前准备开发8.0.0-LA2-SNAPSHOT。授权不是用的shiro,是基于参与者、资源与授权 这三种模型开发的授权方式。

关于作者:许方杰,普元资深软件工程师,曾在华为负责项目核心模块开发,运维等,擅长Web、运维等领域技术,参与普元 EOS 8微服务平台应用基础框架(Coframe)的建设与实施。

应用 用户 管理 基础 系统 权限 功能 机构 开发 框架 菜单 资源 角色 字典 数据 模型 服务 参与者 工作 登录 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广东猪兼强互联网科技有限公司 广州万易互联网科技有限公司 以房互联网科技 万易互联网科技有限公司 菲比寻常互联网科技 苏州大垚互联网科技 互联网科技股午盘股票涨跌 深圳互联网科技怎么样 农村开互联网科技讲堂 创业天下互联网科技有限公司 来此购互联网科技有限公司 互联网金融中的现代科技 为客找房互联网科技公司怎么样 互联网公司高科技产品 富国互联网金融科技混合基金 珠海东科互联网科技有限公司 艺电能源互联网科技有限公司招聘 互联网科技对化妆品行业 伍佰万互联网科技是干嘛的 山东亿川互联网科技有限责任公司 伟宏互联网科技 涨乐互联网科技 致聘互联网科技 上海致骋互联网科技 北京禾田雨橡互联网科技 开启互联网科技时代小说 青岛中康互联网医疗科技有限公司 互联网科技平台产品运营 广州智享互联网科技 保山浩联互联网科技有限公司
0