System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及一种基于细粒度访问控制的数据库审计方法、系统、设备及可读存储介质,属于数据库安全领域。
技术介绍
1、近年来,随着信息技术快速发展,数据库在各个领域的应用越来越广泛。数据库中存储的大量数据不仅包含了重要的信息和资源,也存在着潜在的安全风险和隐私泄露的威胁。因此,如何保护数据库中的数据安全和隐私,以及如何有效监控和审计数据库操作成为了亟待解决的问题。
2、传统的数据库审计系统主要通过记录操作日志进行审计和监控。虽然数据库审计系统加强了对数据隐私的保护,系统采用加密、匿名化等技术,确保敏感数据在采集、存储和处理过程中的安全,但是这种方法在细粒度审计和监控方面仍存在局限性。具体来说,传统的审计系统仅仅实现了对敏感数据的隐私保护,在对用户访问权限的控制方面的实现上欠缺更加安全高效的解决方案。因此,为了实现用户对数据库访问权限的细粒度控制,需要进一步在数据库审计系统中加入用户认证和访问权限撤销的功能,无法有效检测和预防潜在的安全威胁和异常行为。
技术实现思路
1、为了解决上述问题,本专利技术提出了一种基于细粒度访问控制的数据库审计方法,该方法具体步骤为:
2、(1)存储数据,并进行其他数据库操作;
3、(2)实时监控数据库操作,并生成审计日志;
4、(3)利用基于时间因子的加密算法实现用户权限的访问控制;
5、(4)触发器持续监控用户操作,不断生成审计记录,并定期清理过期数据与更新密钥;
6、(5)在应用程
7、进一步地,步骤(3)中,基于时间因子的加密算法具体步骤为:
8、3.1系统初始化:输入安全参数λ,计算y=e(g,g)α,其中g和α∈zq分别表示生成元和随机数,e表示双线性映射。算法输出主公钥mpk=(h1,h2,g,y,{ki}),主私钥msk=(α,{ki}),其中h1,h2为hash函数,ki(i∈[1,n])表示系统中每一个属性ai对应的随机值,
9、3.2生成密钥:系统输入用户身份标识uid,属性值ai,用户获取属性ai的时间为ti,1,选择随机值tr和计算sk4,i,2=h1(uid||tr||ti,1),则用户私钥为(sk1,{sk2,i},{sk3,i},{sk4,i,1,sk4,i,2})。
10、3.3加密:由数据库管理员设置访问策略,系统选择随机值ti,si∈zq,用户拥有属性ai的时间限制节点在ti,2前,令否则设置tag标记位,由数据库访问者和数据库管理员分别将sk4,i,2和tag上传至时间验证服务器,并由时间验证服务器计算c3,i=h1(sk4,i,2,uid||tag)发送给数据库管理员,其中tag∈{0,1}为前后向表示,tag的值为0时标记为后向,否则标记为前向;对消息m的加密,计算c=mys,cm=h2(c||m);输出密文ct=(c,cm,{c1,i},{c2,i},{c3,i});
11、3.4认证属性时间:时间验证服务器计算ht′i=h1(uid′||a′i||tr),sk′4,i,2=h1(uid′||tr||t′i,1);若sk4,i,2≠sk′4,i,2,时间验证服务器终止属性时间认证,返回空字符;时间验证服务器根据标记tag比较ti,2<t′i,1,若tag标记为前向,ti,2≥t′i,1;否则,ti,2<t′i,1,用户属性满足访问策略要求,时间验证服务器计算否则,用户属性时间不满足访问策略要求,时间验证服务器终止属性时间认证,返回空字符。当用户属性集中所有属性满足访问策略属性时间要求时,时间验证服务器返回用户{tvi}。
12、3.5解密:数据库访问者属性集时间认证成功将从时间验证服务器返回{tvi},输入明文ct、私钥ski,计算若则输出明文m,否则返回空字符。
13、3.6用户属性撤销:当用户uid需要撤销属性ai时,由时间验证服务器为用户重新选择tr′,更新用户时间参数tr为tr′;用户收到时间验证服务器返回的消息后,更新本地密钥。
14、3.7撤销用户:当系统需要撤销用户uid时,属性授权终端向时间验证服务器发送用户撤销指令,时间验证服务器删除本地用户时间参数tr。
15、本专利技术又提出一种基于细粒度访问控制的数据库审计系统,该系统包括数据库管理模块、审计模块和加密模块,其中,数据库管理模块负责数据存储与其他数据库操作,审计模块实时监控数据库操作并生成审计日志,加密模块基于时间因子实现用户权限的访问控制。
16、(1)数据库管理模块中,存储数据,并进行其他数据库操作;
17、(2)审计模块:实时监控数据库操作,并生成审计日志;
18、(3)加密模块:利用基于时间因子的加密算法实现用户权限的访问控制;
19、(4)审计管理模块:生成审计记录,并清理过期数据与更新密钥;
20、(5)应用管理模块:实现应用程序层,提供管理员权限。
21、进一步地,在加密模块中,基于时间因子的加密算法具体步骤为:
22、3.1系统初始化:输入安全参数λ,计算y=e(g,g)α,其中g和α∈zq分别表示生成元和随机数,e表示双线性映射。算法输出主公钥mpk=(h1,h2,g,y,{ki}),主私钥msk=(α,{ki}),其中h1,h2为hash函数,ki(i∈[1,n])表示系统中每一个属性ai对应的随机值,
23、3.2生成密钥:系统输入用户身份标识uid,属性值ai,用户获取属性ai的时间为ti,1,选择随机值tr和计算sk4,i,2=h1(uid||tr||ti,1),则用户私钥为(sk1,{sk2,i},{sk3,i},{sk4,i,1,sk4,i,2})。
24、3.3加密:由数据库管理员设置访问策略,系统选择随机值ti,si∈zq,用户拥有属性ai的时间限制节点在ti,2前,令否则设置tag标记位,由数据库访问者和数据库管理员分别将sk4,i,2和tag上传至时间验证服务器,并由时间验证服务器计算c3,i=h1(sk4,i,2,uid||tag)发送给数据库管理员,其中tag∈{0,1}为前后向表示,tag的值为0时标记为后向,否则标记为前向;对消息m的加密,计算c=mys,cm=h2(c||m);输出密文ct=(c,cm,{c1,i},{c2,i},{c3,i});
25、3.4认证属性时间:时间验证服务器计算ht'i=h1(uid′||a′i||tr),sk′4,i,2=h1(uid′||tr||t′i,1);若sk4,i,2≠sk′4,i,2,时间验证服务器终止属性时间认证,返回空字符;时间验证服务器根据标记tag比较ti,2<t′i,1,若tag标记为前向,ti,2≥t′i,1;否则,ti,2<t′i,1,用户属性满足访问策略要求,时间验证服务器计算否则,用户属性时间不满足访问策略要求,时间验证服务器终止属性时间认证,本文档来自技高网...
【技术保护点】
1.一种基于细粒度访问控制的数据库审计方法,其特征在于:该方法具体步骤为:
2.如权利要求1所述的一种基于细粒度访问控制的数据库审计方法,其特征在于,步骤(3)中,基于时间因子的加密算法具体步骤为:
3.一种基于细粒度访问控制的数据库审计系统,该系统包括数据库管理模块、审计模块和加密模块,其中,数据库管理模块负责数据存储与其他数据库操作,审计模块实时监控数据库操作并生成审计日志,加密模块基于时间因子实现用户权限的访问控制,其特征在于:
4.如权利要求3所述的一种基于细粒度访问控制的数据库审计系统,其特征在于:在加密模块中,基于时间因子的加密算法具体步骤为:
5.一种设备,所述设备包括:数据采集装置、处理器和存储器;所述数据采集装置用于采集数据;所述存储器用于存储一个或多个程序指令;所述处理器,用于执行一个或多个程序指令,用以执行上述1-2任一项方法。
6.一种计算机可读存储介质,所述计算机存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行上述1-2任一项方法。
【技术特征摘要】
1.一种基于细粒度访问控制的数据库审计方法,其特征在于:该方法具体步骤为:
2.如权利要求1所述的一种基于细粒度访问控制的数据库审计方法,其特征在于,步骤(3)中,基于时间因子的加密算法具体步骤为:
3.一种基于细粒度访问控制的数据库审计系统,该系统包括数据库管理模块、审计模块和加密模块,其中,数据库管理模块负责数据存储与其他数据库操作,审计模块实时监控数据库操作并生成审计日志,加密模块基于时间因子实现用户权限的访问控制,其特征在于:
【专利技术属性】
技术研发人员:王伟斌,陈传凯,杨小华,
申请(专利权)人:北京新数科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。