CN102411689A - 一种对数据库管理员权限进行控制的方法 - Google Patents

一种对数据库管理员权限进行控制的方法 Download PDF

Info

Publication number
CN102411689A
CN102411689A CN2011104337129A CN201110433712A CN102411689A CN 102411689 A CN102411689 A CN 102411689A CN 2011104337129 A CN2011104337129 A CN 2011104337129A CN 201110433712 A CN201110433712 A CN 201110433712A CN 102411689 A CN102411689 A CN 102411689A
Authority
CN
China
Prior art keywords
authority
data base
base administrator
library manager
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011104337129A
Other languages
English (en)
Other versions
CN102411689B (zh
Inventor
杨经正
孙旭
刘革非
王建华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingbase Information Technologies Co Ltd
Original Assignee
Beijing Kingbase Information Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingbase Information Technologies Co Ltd filed Critical Beijing Kingbase Information Technologies Co Ltd
Priority to CN201110433712.9A priority Critical patent/CN102411689B/zh
Publication of CN102411689A publication Critical patent/CN102411689A/zh
Application granted granted Critical
Publication of CN102411689B publication Critical patent/CN102411689B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种对数据库管理员权限进行控制的方法,包括如下步骤:步骤1:通过权限控制接口,对数据库管理员是否为受限状态进行设置;步骤2:设置数据库管理员运行状态;步骤3:将数据库管理员的运行状态保存成为一个布尔值,如果该值为真,则表示数据库管理员运行于不能访问私有对象的受限模式;如果该值为假,则表示数据库管理员运行于权限开放模式。本发明对数据库管理员的权限进行了重新界定,使数据库管理员不再必然拥有自主访问控制权限和对普通用户的私有对象进行访问和操作的权限,从而有效减少了安全隐患的发生,进一步改善了数据库系统的安全性能。

Description

一种对数据库管理员权限进行控制的方法
技术领域
本发明涉及一种数据库管理员权限控制方法,尤其涉及一种通过转移自主访问控制归属和受限管理员权限模式实现的数据库管理员权限控制方法,属于数据库安全技术领域。
背景技术
在通常的数据库系统中,管理员拥有以下权限:
Figure BDA0000123384650000011
启动或停止非安全相关的系统功能
Figure BDA0000123384650000012
实现对系统中基本资源的管理,例如:表空间、数据库管理等
Figure BDA0000123384650000013
管理自主存取控制的权限
●普通用户的创建和管理
●角色的创建和管理
●GRANT(授权)和REVOKE(撤销授权)语句
Figure BDA0000123384650000014
具有普通用户创建各种对象的能力
而数据库安全员拥有以下权限:
Figure BDA0000123384650000015
启动和停止强制存取控制功能
Figure BDA0000123384650000016
创建、删除、应用或移除策略
Figure BDA0000123384650000017
创建、删除标签
Figure BDA0000123384650000018
授予和回收强制存取控制的特权
Figure BDA0000123384650000019
管理默认安全员的用户属性,例如:密码
Figure BDA00001233846500000110
创建和管理其它安全员
对于数据库管理员而言,其拥有的操作特权越多,受到的访问限制越少。一旦出现账号泄露的情况,造成的损失也越大。因此,通过合理限制数据库管理员的权限,能够有效减少数据库管理中的不安全因素。
在申请号为200610019230.8的中国发明专利申请中,公开了一种应用于数据库安全管理的三权分立安全方法,其特点是:把数据库管理员分为数据库管理员、数据库审计员和数据库安全员三类,其中数据库管理员完成自主存取控制、系统维护及管理,数据库审计员完成系统的审计,而数据库安全员完成系统的安全(标记)管理。该方法实现了数据库系统权限的三权分立,对应这三个权限的系统管理员之间分工明确,各司其责,既相互制约又相互配合,共同实现数据库的安全管理功能。这种体系结构不仅解决了国内外数据库产品中存在的系统权限过于集中的问题,同时也实现了国家标准中所要求的强制访问控制功能,进一步提高了系统的安全性。
在没有采用三权分立的数据库系统中,数据库管理员拥有极大的权限,从另一个角度说也带来了无尽的隐患。一旦账号泄密,则数据库所有的安全保障都不复存在。因此对于数据库系统的安全管理来说,对数据库管理员进行一定程度的权限控制是非常必要的。另一方面,数据库管理员对数据库中各种对象的无限制访问,通常也会带来安全隐患。通过限制数据库管理员对私有对象的访问,从而减少安全隐患的发生也是非常有必要的。
发明内容
本发明所要解决的技术问题在于提供一种对数据库管理员权限进行控制的方法。利用该方法可以使数据库管理员不再对普通用户的私有对象具有访问和操作的权限。
为实现上述的发明目的,本发明采用下述的技术方案:
一种对数据库管理员权限进行控制的方法,其特征在于包括如下步骤:
步骤1:通过权限控制接口,对数据库管理员是否为受限状态进行设置;
步骤2:设置数据库管理员运行状态;
步骤3:将数据库管理员的运行状态保存成为一个布尔值,如果该值为真,则表示数据库管理员运行于不能访问私有对象的受限模式;如果该值为假,则表示数据库管理员运行于权限开放模式。
其中较优地,所述步骤2中,通过增加SQL语句设置数据库管理员运行状态。
其中较优地,在所述步骤3中,通过对所述SQL语句进行解析和执行,将数据库管理员的运行状态保存成为布尔值。
其中较优地,在对数据库管理员的权限操作中,通过固定的API去查询数据库管理员的权限状态。
其中较优地,将所述API的返回值与反映数据库管理员运行状态的所述布尔值进行与操作,判断出所述数据库管理员当前是否有权限执行相关的操作。
其中较优地,进行自主访问控制权限查询时,如果是数据库安全员则继续执行;如果是数据库管理员则结束执行。
其中较优地,所述自主访问控制通过SQL语句的方式进行设置。
本发明对数据库管理员的权限进行了重新界定,使数据库管理员不再必然拥有自主访问控制权限和对普通用户的私有对象进行访问和操作的权限,从而有效减少了安全隐患的发生,进一步改善了数据库系统的安全性能。
附图说明
下面结合附图和具体实施方式对本发明作进一步的详细说明。
图1为本发明中设置自主访问控制权限的示意图;
图2为本发明中设置数据库管理员访问私有对象权限的示意图;
图3为本发明中,数据库管理员访问私有对象的操作流程图。
具体实施方式
在本发明中,通过将自主访问控制权限转移给安全员以及限制数据库管理员访问私有对象权限的方式,实现对数据库管理员的权限控制。下面对此展开具体的说明。
自主访问控制(Discretionary Access Control,DAC)通过设置数据库中各种关系的访问权限来实现对数据库用户的约束。在现有的数据库技术中,特别是采用三权分立权限分配机制的数据库系统中,通常自主访问控制的权限属于数据库管理员,而强制防伪控制的权限属于数据库安全员。这种权限分配方式将自主访问控制作为一种常规的数据库功能来对待,实际上是忽略了自主访问控制的本质。
本发明人认为:自主访问控制是对用户操作SQL对象进行授权管理。它与强制访问控制一样,都具有限制用户对对象访问权限的特点,都是维护数据库安全的重要手段,因此将自主访问控制的设置权限归属到数据库安全员的名下是实至名归的。
与强制访问控制相比较,自主访问控制具有实施简单、粒度较粗等特点,但是自主访问控制作为权限控制的一种方式,对维护数据库的安全也具有重要的作用。其对数据库安全性的重要影响决定了其操作权更适合交给数据库安全员。为此如图1所示,本发明将自主访问控制的设置权限从数据库管理员中划分出去(数据库管理员的其它权限不变),将其归属于数据库安全员,即数据库安全员具有对数据库进行自主访问控制的权限,而数据库管理员将不能对数据库进行自主访问控制。这样,数据库安全员同时具有自主访问控制和强制访问控制的权限,不但能够有效地限制数据库管理员的超级特权,同时也能够将这两种访问控制手段有机地结合起来阻止对数据库的非法访问。
自主访问控制是通过SQL语句的方式进行设置的。在经过词法和语法解析后,数据库管理系统会进行权限查询,查看当前用户是不是数据库管理员,如果是数据库管理员则正常执行。因此,我们可以将权限查询修改为如果是数据库安全员则继续执行,从而将自主访问控制权限转移到数据库安全员。数据库安全员能够对数据库表应用各种自主访问控制的权限,同时也能够取消自主访问控制的权限。
如图2所示,本发明进一步限制了数据库管理员对访问私有对象的权限,即在数据库系统由权限受限的数据库管理员开启的情况下,数据库管理员不再对普通用户的私有对象具有访问和操作的权限。在默认情况下,除非数据表的属主用户自主授权,否则数据库管理员无法查询、修改和删除用户自有的数据表。
这种对数据库管理员限制私有对象访问权限的操作可以通过由数据库安全员设置受限模式的方式来进行,具体说明如下:
在数据库系统中,各种访问权限大致可以分为:
Figure BDA0000123384650000041
系统权限:是执行特定操作的权限。这些权限包括:CREATEDATABASE、CREATE USER、CREATE ROLE的权限,具体分为SUPERUSER、SSO、SAO、CREATEDB和CREATEROLE五个系统权限。
Figure BDA0000123384650000042
对象权限:是对给定的用户授予在给定对象(例如表)上执行的操作集。这些操作可以指明为INSERT、SELECT等,具体参见表1:
Figure BDA0000123384650000043
Figure BDA0000123384650000051
表1对象权限列表
Figure BDA0000123384650000052
列级权限:是对给定的用户授予在给定表或视图上某些列执行操作集。此动作只能为INSERT、UPDATE和REFERENCES。具体参见表2:
  对象   权限
  TABLE   SELECT|INSERT|UPDATE|REFERENCES
  VIEW   SELECT|INSERT|UPDATE|REFERENCES
表2列级权限列表
参考数据库系统中的权限结构,可以理解为权限所有者主要有三种:数据库管理员、属主(owner)、被属主直接授权或间接授权的用户。通常数据库管理员拥有全部以上三种权限,即系统权限、对象权限和列级权限。对象的属主(owner)在对象上拥有所有对象权限和列级权限。ACL(访问控制列表)授权用户拥有相应授权的对象的对象权限或列级权限,拥有CREATEROLE权限的用户可以转授权系统权限,数据库管理员、属主和赋予GRANT功能的ACL授权用户可以转授权对象权限或列级权限。
数据库安全员可以对数据库管理员的访问权限是否受限进行相应的控制。具体地说,数据库安全员可以主动屏蔽数据库管理员的对象权限和列级权限,即只赋予属主或ACL授权用户所拥有的对象权限和列级权限,但数据库管理员所拥有的系统权限不受影响。
在数据库管理员的访问权限受限的情况下,数据库管理员不再拥有访问私有对象的权限。具体地说,数据库安全员可以通过SQL语句的方式对数据库管理员的访问权限是否受限进行控制。如果设置为受限模式,则数据库管理员不能访问私有对象。
如图3所示,数据库管理员在执行访问私有对象的过程中,会定时检查是否为受限模式,其相应的功能伪码如下:
Figure BDA0000123384650000061
在本发明中,首先增加权限控制接口,以便对数据库管理员是否为受限状态进行设置。通过增加SQL语句的方式,可以设置数据库管理员运行于哪种状态。通过对SQL语句进行解析和执行,将数据库管理员的运行状态保存成为一个bool(布尔)值的方式。如果bool值为真,则表示数据库管理员运行于权限限制模式,即受限模式;如果bool值为假,则表示数据库管理员运行于权限开放模式。在对数据库管理员的权限操作中,可以通过固定的API去查询权限状态。如果将这个API的返回值与反映数据库管理员运行状态的bool值进行与操作,就能判断出数据库管理员当前是否有权限执行相关的操作。
上面对本发明所提供的对数据库管理员权限进行控制的方法进行了详细的说明。对本领域的一般技术人员而言,在不背离本发明实质精神的前提下对它所做的任何显而易见的改动,都将构成对本发明专利权的侵犯,将承担相应的法律责任。

Claims (7)

1.一种对数据库管理员权限进行控制的方法,其特征在于:
步骤1:通过权限控制接口,对数据库管理员是否为受限状态进行设置;
步骤2:设置数据库管理员运行状态;
步骤3:将数据库管理员的运行状态保存成为一个布尔值,如果该值为真,则表示数据库管理员运行于不能访问私有对象的受限模式;如果该值为假,则表示数据库管理员运行于权限开放模式。
2.如权利要求1所述的对数据库管理员权限进行控制的方法,其特征在于:
所述步骤2中,通过增加SQL语句设置数据库管理员运行状态。
3.如权利要求2所述的对数据库管理员权限进行控制的方法,其特征在于:
在所述步骤3中,通过对所述SQL语句进行解析和执行,将数据库管理员的运行状态保存成为布尔值。
4.如权利要求3所述的对数据库管理员权限进行控制的方法,其特征在于还包括下述步骤:
在对数据库管理员的权限操作中,通过固定的API去查询数据库管理员的权限状态。
5.如权利要求4所述的对数据库管理员权限进行控制的方法,其特征在于:
将所述API的返回值与反映数据库管理员运行状态的所述布尔值进行与操作,判断出所述数据库管理员当前是否有权限执行相关的操作。
6.如权利要求1或4所述的对数据库管理员权限进行控制的方法,其特征在于还包括下述步骤:
进行自主访问控制权限查询时,如果是数据库安全员则继续执行;如果是数据库管理员则结束执行。
7.如权利要求6所述的对数据库管理员权限进行控制的方法,其特征在于:
所述自主访问控制通过SQL语句的方式进行设置。
CN201110433712.9A 2011-12-21 2011-12-21 一种对数据库管理员权限进行控制的方法 Active CN102411689B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110433712.9A CN102411689B (zh) 2011-12-21 2011-12-21 一种对数据库管理员权限进行控制的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110433712.9A CN102411689B (zh) 2011-12-21 2011-12-21 一种对数据库管理员权限进行控制的方法

Publications (2)

Publication Number Publication Date
CN102411689A true CN102411689A (zh) 2012-04-11
CN102411689B CN102411689B (zh) 2015-04-08

Family

ID=45913760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110433712.9A Active CN102411689B (zh) 2011-12-21 2011-12-21 一种对数据库管理员权限进行控制的方法

Country Status (1)

Country Link
CN (1) CN102411689B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902254A (zh) * 2012-12-24 2014-07-02 上海格尔软件股份有限公司 信息系统三权分立管理中基于操作序列化的审核实现方法
CN108304715A (zh) * 2017-12-28 2018-07-20 上海你我贷互联网金融信息服务有限公司 一种多租户基于策略的访问控制方法
CN110135146A (zh) * 2019-04-29 2019-08-16 武汉中锐源信息技术开发有限公司 一种数据库权限管理方法及系统
CN110717153A (zh) * 2019-09-30 2020-01-21 新华三大数据技术有限公司 一种权限验证方法和装置
CN112214792A (zh) * 2020-09-29 2021-01-12 浪潮云信息技术股份公司 一种基于cockroachDB数据库的权限管理方法及工具

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101146311A (zh) * 2007-10-10 2008-03-19 华为技术有限公司 一种数据管理的方法及装置
CN101309478A (zh) * 2008-06-25 2008-11-19 宇龙计算机通信科技(深圳)有限公司 一种访问移动终端数据的方法
CN102043931A (zh) * 2010-01-19 2011-05-04 中国人民解放军第二军医大学东方肝胆外科医院 一种基于角色权限动态转换的隐私数据访问控制方法
CN102185826A (zh) * 2011-01-28 2011-09-14 北京开心人信息技术有限公司 一种保护用户隐私的方法与系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101146311A (zh) * 2007-10-10 2008-03-19 华为技术有限公司 一种数据管理的方法及装置
CN101309478A (zh) * 2008-06-25 2008-11-19 宇龙计算机通信科技(深圳)有限公司 一种访问移动终端数据的方法
CN102043931A (zh) * 2010-01-19 2011-05-04 中国人民解放军第二军医大学东方肝胆外科医院 一种基于角色权限动态转换的隐私数据访问控制方法
CN102185826A (zh) * 2011-01-28 2011-09-14 北京开心人信息技术有限公司 一种保护用户隐私的方法与系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902254A (zh) * 2012-12-24 2014-07-02 上海格尔软件股份有限公司 信息系统三权分立管理中基于操作序列化的审核实现方法
CN103902254B (zh) * 2012-12-24 2017-07-18 上海格尔软件股份有限公司 信息系统三权分立管理中基于操作序列化的审核实现方法
CN108304715A (zh) * 2017-12-28 2018-07-20 上海你我贷互联网金融信息服务有限公司 一种多租户基于策略的访问控制方法
CN110135146A (zh) * 2019-04-29 2019-08-16 武汉中锐源信息技术开发有限公司 一种数据库权限管理方法及系统
CN110135146B (zh) * 2019-04-29 2021-04-02 武汉中锐源信息技术开发有限公司 一种数据库权限管理方法
CN110717153A (zh) * 2019-09-30 2020-01-21 新华三大数据技术有限公司 一种权限验证方法和装置
CN110717153B (zh) * 2019-09-30 2021-08-24 新华三大数据技术有限公司 一种权限验证方法和装置
CN112214792A (zh) * 2020-09-29 2021-01-12 浪潮云信息技术股份公司 一种基于cockroachDB数据库的权限管理方法及工具

Also Published As

Publication number Publication date
CN102411689B (zh) 2015-04-08

Similar Documents

Publication Publication Date Title
CN107403106B (zh) 基于终端用户的数据库细粒度访问控制方法
CN102411689B (zh) 一种对数据库管理员权限进行控制的方法
CN103441926B (zh) 数控机床网安全网关系统
CN111797374B (zh) 一种基于公链智能合约的供应链访问控制系统和方法
CN103246849A (zh) 一种Windows下基于增强型ROST的安全运行方法
CN102034052A (zh) 基于三权分立的操作系统体系结构及实现方法
CN109684854B (zh) 一种适用于企业管理信息系统的底层数据加密方法
CN101847197A (zh) 一种文档访问权限的控制方法
CN105550590A (zh) 基于角色的权限控制机制
CN105528556A (zh) 一种混合的SQLite3安全访问方法
CN102904877A (zh) 一种基于云存储的二进制序列化角色权限管理方法
CN108898705A (zh) 一种具有权限分享的家庭门禁系统及其授权方法
CN102970317A (zh) 一种私有云存储系统的安全性设计方案
CN102663313A (zh) 一种实现计算机系统信息安全的方法
CN107147665A (zh) 基于属性的访问控制模型在工业4.0系统中的应用方法
CN106529230A (zh) 基于角色的权限控制机制
CN112364328A (zh) 一种计算机网络信息安全监护系统
CN101860436A (zh) 一项精准控制系统用户数据权限的技术
Cannady Security Models for Object-Oriented Databases
CN104732160A (zh) 一种防止数据库信息内部泄密的控制方法
CN101860517A (zh) 一种精准控制系统用户权限的方法
Jaidi et al. The problem of integrity in RBAC-based policies within relational databases: synthesis and problem study
Zhao et al. Design and implementation of multilevel secure database management access control
Jaidi Advanced access control to information systems: Requirements, compliance and future directives
Batra et al. Autonomous multilevel policy based security configuration in distributed database

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant