System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据访问领域,尤其是一种低代码跨数据源可扩展的数据访问方法及装置。
技术介绍
1、如何采用低代码的方式访问数据库、设备、文件和事件中的数据是低代码或者无代码应用开发的关键。
2、当前低代码开发平台访问数据的方式通常由以下几种:
3、1.构建sql的方式预构建连接器
4、通过连接器访问数据源,该方式存在跨数据源语法不兼容的问题,存在大量的针对不同数据源的配置工作,且该方式存在一定的安全问题,无法开放给普通用户使用。
5、2.业务数据映射到统一模型视图
6、通过抽取数据映射到视图的方式,再通过视图进行数据源访问,该方式无法实时获取到业务数据,且难以通过视图反向映射到业务数据库进行数据的更新等操作。
7、3.通过集成插件的方式
8、每个集成插件对数据源进行开发,向上提供服务,集成插件大多是执行sql语句,或者是sql语句的映射文件,该方式虽然解决了安全性问题和屏蔽差异的问题,但是无法解决需要大量定制的问题。
9、开放数据的rest资源访问规范具备灵活性、安全性、配置少和低代码前端友好的特点,通过规范涵盖对数据源的各类操作,能够最大限度的将各种数据源访问功能以rest规范的方式暴露出来,同时通过web服务器基于角色权限的安全系统对所有资源进行统一管控和审计,能够为低代码开发平台提供统一数据访问层中间件。
10、构建这样一套系统面临以下挑战:
11、1.数据源的多样性
12、不同组织和应用程序使
13、2.安全性:设计一个强大的、基于角色权限的安全系统是必要的,但也是复杂的。确保数据的机密性、完整性和可用性,并在访问控制方面实施细粒度的权限管理需要深思熟虑。
14、3.性能和扩展性:处理大规模、高并发的数据请求可能对系统性能提出挑战。在设计时需要考虑缓存、负载均衡、分布式架构等技术,以确保系统的性能和可扩展性。
15、4.规范的设计和演进:设计一个灵活而又规范的rest api是关键的。需要考虑如何处理新的数据源类型、新的数据操作需求,并保证在不破坏现有系统的前提下进行演进。
16、5.低代码前端的友好性:提供一个易于使用、低代码友好的前端接口是关键的。确保前端开发者能够轻松地使用这个中间件,包括通过视觉化工具进行数据映射和操作。
17、6.审计和监控:实现对数据访问的审计和监控是必要的,以确保对系统的使用有清晰的可追溯性,并及时发现和应对潜在的问题。
18、7.合规性:确保系统的设计和实施符合法规和行业标准,尤其是在处理敏感数据时,需要特别注意数据隐私和合规性问题。
技术实现思路
1、针对上述情况,本专利技术提供一种低代码跨数据源可扩展的数据访问方法及装置,通过定义统一的数据访问规范和权限管理为上层应用提供安全数据查询、修改、删除、全文检索和聚合分析服务,同时支持权限控制和多类异构数据源的扩展,满足复杂场景下数据统一访问控制的需求。
2、为实现上述目的,本专利技术采用下述技术方案:
3、在本专利技术一实施例中,提出了一种低代码跨数据源可扩展的数据访问方法,该方法包括:
4、将数据定义为数据库、表和行三级数据,以http动作作为操作动作映射到对数据的新增、修改、删除和查询,形成数据服务端口规范;
5、监听数据服务端口,处理客户端响应;数据库以数据的挂载路径的方式暴露给客户端访问;
6、收到客户端发起的请求,对身份进行认证;认证通过之后对客户端访问的数据进行鉴权;
7、鉴权通过之后根据数据的挂载路径路由到不同的数据源,根据数据服务端口规范自动构建不同数据源的数据访问语句;
8、将非查询的事件发布出去,消费者通过文件方式记录审计日志;
9、将数据访问结果根据数据服务端口规范组装成响应结果返回客户端。
10、进一步地,收到客户端发起的请求,对身份进行认证,认证通过之后对客户端访问的数据进行鉴权,包括:
11、收到客户端发起的请求,对基本认证信息进行认证;
12、若基本认证信息认证通过,则将基本认证信息置于请求上下文,同时为认证通过的用户创建一个token,并保存到缓存中;
13、若基本认证信息认证未通过,则判断请求头中是否存在token,若存在,则对token的jwt信息进行解析并校验,校验通过则从缓存中取出基本认证信息置于请求上下文;
14、通过请求上下文中是否有基本认证信息来判断认证是否通过,若认证通过,则对客户端访问的数据进行鉴权;
15、在访问权限配置中,用户对数据库和数据表中数据的新增、修改、删除和查询权限,根据当前登录会话信息配置查询数据强制拼接数据行权限,在新增数据时可配置强制设置字段值为会话信息中的属性值;
16、通过访问权限配置来判断是否具备访问权限,若具备访问权限,则正常响应。
17、进一步地,鉴权通过之后根据数据的挂载路径路由到不同的数据源,根据数据服务端口规范自动构建不同数据源的数据访问语句,包括:
18、根据定义的数据服务端口规范解析请求信息,获取到数据定位和操作动作;
19、根据资源挂载配置文件,预先配置数据库与数据源的映射关系并保存到缓存中,数据访问构建器初始化,从缓存中取出数据源,并创建数据源对应的数据访问构建器;
20、根据数据服务端口规范以扩展的方式动态构建不同数据源的数据访问语句;
21、数据源执行器根据数据源和请求,驱动执行请求对应数据源的数据访问语句;
22、将数据库执行结果通过数据源执行器返回给请求上下文处理。
23、进一步地,将非查询的事件发布出去,消费者通过文件方式记录审计日志,包括:
24、通过数据源执行器执行新增、修改和删除操作时,发布新增事件、修改事件和删除事件到事件环形缓存区队列中,等待消费者进行消费;消费者可以通过自定义的方式进行扩展;
25、消费者进行消费时,先从事件环形缓存区队列中获取当前队列序号,再通过当前队列序号读取对应事件进行处理,并通过默认的文件方式记录到审计日志中。
26、在本专利技术一实施例中,还提出了一种低代码跨数据源可扩展的数据访问装置,该装置包括:
27、数据服务规范模块,用于将数据定义为数据库、表和行三级数据,以http动作作为操作动作映射到对数据的新增、修改、删除和查询,形成数据服务端口规范;
28、数据服务暴露模块,用于监听数据服务端口,处理客户端响应;数据库以数据的挂载路径的方式暴露给客户端访问;
29、认证鉴权模块,用于收到客户端发起的请求,对身份进行认证;认证通过之后对客户端访问的数本文档来自技高网...
【技术保护点】
1.一种低代码跨数据源可扩展的数据访问方法,其特征在于,该方法包括:
2.根据权利要求1所述的低代码跨数据源可扩展的数据访问方法,其特征在于,收到客户端发起的请求,对身份进行认证,认证通过之后对客户端访问的数据进行鉴权,包括:
3.根据权利要求1所述的低代码跨数据源可扩展的数据访问方法,其特征在于,鉴权通过之后根据数据的挂载路径路由到不同的数据源,根据数据服务端口规范自动构建不同数据源的数据访问语句,包括:
4.根据权利要求1所述的低代码跨数据源可扩展的数据访问方法,其特征在于,将非查询的事件发布出去,消费者通过文件方式记录审计日志,包括:
5.一种低代码跨数据源可扩展的数据访问装置,其特征在于,该装置包括:
6.根据权利要求5所述的低代码跨数据源可扩展的数据访问装置,其特征在于,所述认证鉴权模块,具体用于:
7.根据权利要求5所述的低代码跨数据源可扩展的数据访问装置,其特征在于,所述数据访问模块,具体用于:
8.根据权利要求5所述的低代码跨数据源可扩展的数据访问装置,其特征在于,所述审计日志记录
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-4任一项所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1-4任一项所述方法的计算机程序。
...【技术特征摘要】
1.一种低代码跨数据源可扩展的数据访问方法,其特征在于,该方法包括:
2.根据权利要求1所述的低代码跨数据源可扩展的数据访问方法,其特征在于,收到客户端发起的请求,对身份进行认证,认证通过之后对客户端访问的数据进行鉴权,包括:
3.根据权利要求1所述的低代码跨数据源可扩展的数据访问方法,其特征在于,鉴权通过之后根据数据的挂载路径路由到不同的数据源,根据数据服务端口规范自动构建不同数据源的数据访问语句,包括:
4.根据权利要求1所述的低代码跨数据源可扩展的数据访问方法,其特征在于,将非查询的事件发布出去,消费者通过文件方式记录审计日志,包括:
5.一种低代码跨数据源可扩展的数据访问装置,其特征在于,该装置...
【专利技术属性】
技术研发人员:肖伟军,邱勇,
申请(专利权)人:中盈优创资讯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。