一种基于注解的通用安全检查及功能扩展方法及装置制造方法及图纸

技术编号:26478192 阅读:15 留言:0更新日期:2020-11-25 19:22
本申请公开了一种基于注解的通用安全检查及功能扩展方法及装置。所述方法包括:对源代码或程序进行统一规范注解,并且在编译之前使用注解分析器对源代码或者程序进行分析,若分析结果符合所述统一规范注解,则将所述源代码或者程序进行编译,若分析结果不符合所述统一规范注解,则发出注解错误信息,重新进行源代码或者程序的编辑。所述装置包括:注解模块和注解分析器;本申请有效降低了源代码或程序的开发成本,在安全性方面,对系统中的源程序或者代码提供统一的安全检查范式,避免了因缺少统一标准的安全性检查,造成安全性得不到有效保障的问题;同时,本申请也可以作为一种源代码或者程序功能扩展的方法。

【技术实现步骤摘要】
一种基于注解的通用安全检查及功能扩展方法及装置
本申请涉及计算机
,具体而言,涉及一种基于注解的通用安全检查及功能扩展方法及装置。
技术介绍
目前,在程序开发过程中,传统语言的开放性导致其在安全性上有很大的自由度,程序的安全性多由开发者来保证。且不同语言的语法差异较大,故现有技术中程序的安全性检查及其他通用扩展功能多使用自定义的方式实现。这导致了不同的开发者采用不同的规则和策略,没有一种统一的规范,所规定的策略也是良莠不齐,安全性得不到有效地保障。现急需一种标准的通用安全检查及功能扩展方法,以解决相关技术中缺少统一标准的安全性检查,造成安全性得不到有效保障的问题。
技术实现思路
本申请的主要目的在于提供一种基于注解的通用安全检查及功能扩展方法及装置,以解决相关技术中缺少统一标准的安全性检查,造成安全性得不到有效保障的问题。为了实现上述目的,一方面本申请提供了一种基于注解的通用安全检查及功能扩展方法,包括:对源代码或程序进行统一规范注解,并且在编译之前使用注解分析器对源代码或者程序进行分析,若分析结果符合所述统一规范注解,则将所述源代码或者程序进行编译,若分析结果不符合所述统一规范注解,则发出注解错误信息,重新进行源代码或者程序的编辑。所述注解包括:为所述源代码或者程序元素设置元数据(MetaData)信息,注解以字符@开头,注解名称为所述源代码或者程序合法的标识符,注解需放在注释内。所述注解能够使用参数,参数以key/value键值对的形式传递。所述注解规定的调用规范如下:/**注解验证逻辑*/boolvalidate_annotation(…);所有注解必须满足所述规范。所述注解分为四种类型:参数限定、方法行为限定、规定输入输出参数、其他附加功能。所述参数限定用来限定方法的操作对象。所述方法行为限定用来限定方式不可以执行哪些操作。所述规定输入输出参数,利用输入输出参数向源代码或者程序输入外部参数,或者将源代码或者程序计算结果暴露给外部对象。所述其他附加功能,包括:延迟任务、定时任务、持久化到链上。所述注解分析器实现流程如下:读取源代码或程序,进行词法分析。对词法分析的结果进行语法分析,找出注解,并生成注解抽象语法树。对注解抽象语法树进行语义分析;将语义分析结果输入注解分析器,判断是否合乎统一规范;若不符合统一规范,则发出注解错误信息,重新进行源代码或者程序的编辑。若符合统一规范,则将所述源代码或者程序进行编译。另一方面本申请提供了一种基于注解的通用安全检查及功能扩展装置,采用一种基于注解的通用安全检查及功能扩展方法实现,包括:注解模块和注解分析器;所述注解模块和注解分析器,依次顺序连接;所述注解模块,用于对源代码或程序进行统一规范注解;所述注解分析器,用于在编译之前使用注解分析器对源代码或者程序进行分析,若分析结果符合所述统一规范注解,则将所述源代码或者程序进行编译,若分析结果不符合所述统一规范注解,则发出注解错误信息,重新进行源代码或者程序的编辑。有益技术效果:本申请提供了一种通用的安全性检查及功能扩展的方法,有效降低了源代码或程序的开发成本;在安全性方面,可以对系统中的源程序或者代码提供统一的安全检查范式,避免了因缺少统一标准的安全性检查,造成安全性得不到有效保障的问题;同时,本申请也可以作为一种源代码或者程序功能扩展的方法。附图说明构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1是根据本申请实施例提供的一种基于注解的通用安全检查及功能扩展方法流程图;图2是根据本申请实施例提供的注解分析器实现过程流程图;图3是根据本申请实施例提供的一种基于注解的通用安全检查及功能扩展装置示意图。具体实施方式为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。在本申请中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为基于附图所示的方位或位置关系。这些术语主要是为了更好地描述本申请及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本申请中的具体含义。另外,术语“多个”的含义应为两个以及两个以上。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。本申请提供了一种基于注解的通用安全检查及功能扩展方法,如图1所示,包括:步骤S1:对源代码或程序进行统一规范注解;步骤S2:在编译之前使用注解分析器对源代码或者程序进行分析;步骤S3:判断分析结果是否符合所述统一规范注解;步骤S4:若分析结果符合所述统一规范注解,则将所述源代码或者程序进行编译;步骤S5:若分析结果不符合所述统一规范注解,则发出注解错误信息,重新进行源代码或者程序的编辑。所述注解包括:为所述源代码或者程序元素设置元数据(MetaData)信息,注解以字符@开头,注解名称为所述源代码或者程序合法的标识符,注解需放在注释内。所述注解能够使用参数,参数以key/value键值对的形式传递。所述注解规定的调用规范如下:/**注解验证逻辑*/boolvalidate_annotation(…);所有注解必须满足所述规范。注解,又称标注,是一种应用于类、方法、参数、变量、构造器等本文档来自技高网
...

【技术保护点】
1.一种基于注解的通用安全检查及功能扩展方法,其特征在于,包括:/n对源代码或程序进行统一规范注解,并且在编译之前使用注解分析器对源代码或者程序进行分析,若分析结果符合所述统一规范注解,则将所述源代码或者程序进行编译,若分析结果不符合所述统一规范注解,则发出注解错误信息,重新进行源代码或者程序的编辑。/n

【技术特征摘要】
1.一种基于注解的通用安全检查及功能扩展方法,其特征在于,包括:
对源代码或程序进行统一规范注解,并且在编译之前使用注解分析器对源代码或者程序进行分析,若分析结果符合所述统一规范注解,则将所述源代码或者程序进行编译,若分析结果不符合所述统一规范注解,则发出注解错误信息,重新进行源代码或者程序的编辑。


2.如权利要求1所述的基于注解的通用安全检查及功能扩展方法,其特征在于,所述注解包括:为所述源代码或者程序元素设置元数据信息,注解以字符@开头,注解名称为所述源代码或者程序合法的标识符,注解需放在注释内。


3.如权利要求1所述的基于注解的通用安全检查及功能扩展方法,其特征在于,所述注解能够使用参数,参数以key/value键值对的形式传递。


4.如权利要求1所述的基于注解的通用安全检查及功能扩展方法,其特征在于,所述注解规定的调用规范如下:
/*
*注解验证逻辑
*/
boolvalidate_annotation(…);
所有注解必须满足所述规范。


5.如权利要求1所述的基于注解的通用安全检查及功能扩展方法,其特征在于,所述注解分为四种类型:
参数限定、方法行为限定、规定输入输出参数、其他附加功能。


6.如权利要求5所述的基于注解的通用安全检查及功能扩展方法,其特征在于,所述参数限定用来限定方法的操作对象;
所述方法行为限定用来限定方式不可以执行哪些操作。

【专利技术属性】
技术研发人员:方玉书贾震贡建军陈浩
申请(专利权)人:上海玳鸽信息技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1