达梦数据库安全管理

文章详细介绍了达梦数据库在数据安全方面的核心机制,包括用户标识与鉴别、自主和强制访问控制、审计功能以及通信和存储加密。强调了用户管理在数据库安全中的重要性,特别是DBA、SSO、AUDITOR和DBO等不同角色的职责,以及如何通过创建用户和设置权限来确保数据的完整性、保密性和可用性。
摘要由CSDN通过智能技术生成

数据库安全的核心和关键是数据安全。数据安全是指以保护措施确保数据的完整性保密性、可用性、可控性和可审查性。由于数据库存储着大量的重要信息和机密数据,而且在数据库系统中大量数据集中存放,供多用户共享,因此必须加强对数据库访问的控制和数据安全防护。
数据库安全管理是指采取各种安全措施对数据库及其相关文件和数据进行保护。数据库系统的重要指标之一是确保系统安全,采用各种防范措施防止非授权使用数据库,这主要通过数据库管理系统来实现。数据库系统中一般采用用户标识与鉴别、存取控制及密码存储等技术进行安全控制。
达梦数据库安全管理是指为保护存储在达梦数据库中各类敏感数据的机密性、完整性和可用性提供必要的技术手段,防止这些数据被非授权泄露、修改和破坏,并保证被授权用户能按其授权范围访问所需要的数据。
达梦数据库作为安全数据库,提供了包括用户标识与鉴别、自主访问控制、强制访问控制、通信加密、存储加密、数据库审计等丰富的安全功能,并且各安全功能都可以进行配置,满足各种类型用户在安全管理方面不同层次的需求。达梦数据库安全管理体系各模块提供的安全功能如表6-1所示,结构如图6-1所示。

                         表6-1达梦数据库安全管理体系各模块提供的安全功能说明

安全管理模块安全功能说明
用户标识与鉴别可以通过登录账户区别各用户,并通过口令方式防止用户被冒充
自主访问与控制通过权限管理,使用户只能访问自己权限内的数据对象
强制访问控制    通过安全标记,使用户只能访问与自己安全级别相符的数据对象
数据库审计    审计人员可以查看所有用户的操作记录,为明确事故责任提供证据支持
通信加密,存储加密    用户可以自主地将数据以密文形式存储在数据库中,也可以对在网络上传输的数据进行加密
加密引擎用户可以用自定义的加密算法来加密自己的核心数据
资源限制可以对网络资源和磁盘资源进行配额设置,防止恶意地资源抢占
客体重用实现了内存与磁盘空间的释放清理,防止信息数据泄露

1.用户管理

达梦数据库用户管理是其安全管理的核心和基础。用户是达梦数据库的基本访问控制机制,当用户连接到达梦数据库时,需要进行用户标识与鉴别。在默认情况下,连接数据库必须提供用户名和口令,只有合法、正确的用户才能登录到数据库,并且该用户在数据库中的数据访问活动也应有一定的权限和范围。
用户包括数据库的管理者和使用者,达梦数据库通过设置用户及其安全参数来控制用户对数据库的访问和操作。

1.1  达梦数据库初始用户

数据库管理系统在创建数据库时会自动创建一些用户,如DBA、SSO、AUDITOR等,这些用户用于数据库的管理。

1.1.1 数据库管理员(DBA)

每个数据库至少需要一个DBA来管理,DBA可能是一个团队,也可能是一个人。在不同的数据库系统中,数据库管理员的职责可能会有比转较大的区别,总体而言,数据库管理员的职责主要包括:
(1)评估数据库服务器所需的软硬件运行环境;

(2)安装和升级DM 服务器;

(3)数据库结构设计;
(4)监控和优化数据库的性能;(5)计划和实施备份与故障恢复。

1.1.2 数据库安全员(SSO)

部分应用对数据库的安全性有很高的要求,传统的由DBA一人拥有所有权限,并且承担所有职责的安全机制可能无法满足企业的实际需要,此时数据库安全员和数据库审计员两类管理用户就显得异常重要,他们对于限制和监控数据库管理员的所有行为起着至关重要的作用。
数据库安全员的主要职责是制定并应用安全策略,强化系统安全机制。其中,数据库安全员用户SYSSSO达据始化的时候已经创建了,该用户可以再创建新的据库安全员。
用户SYSSSO据自己的应用安全策略,在应用安全策略中定义安全级别、范围和组,然后基于定义的安全级别、范围和组创建安全标记,并将安全标记分别应用于主体(用户)和客体(各种数据库对象,如表、索引等),以便启用强制访问控制功能。
数据库安全员不能对用户数据进行增加、删除、修改、查询,也不能执行普通的DDL操作,如创建表、创建视图等。他们只负责制定安全机制,将合适的安全标记应用于主体和客体,通过这种方式可以有效地对DBA的权限进行限制,DBA 此后就不能直接访问添加安全标记的数据了,除非数据库安全员给DBA也设定了与之匹配的安全标记,DBA的权限受到了有效约束。数据库安全员也可以创建和删除新的数据库安全员,并向这些数据库安全员授予和回收安全相关的权限。

1.1.3 数据库审计员(AUDITOR)

在达梦数据库中,数据库审计员的主要职责就是创建和删除数据库审计员、设置1取消对数据库对象和操作的审计设置、查看和分析审计记录等。为了能够及时找到DBA或其他用户的非法操作,在达梦数据库车系统建设初期,就由数据库审计员(SYSAUDITOR 或其他由 SYSAUDITOR 创建的数据库审计员)来设置审计策略(包括
审计对象和操作),在需要时数据库审计员    也可以查看审计记录,及时分析并查找出    
“幕后真凶”。

1.1.4 数据库对象操作员(DBO)

数据库对象操作员是“四权分立”新增加的的一类用户,可以创建数据库对象,对自己拥有的数据库对象(如表、视图、存储过程、序列、包、外部链接等)有所有的权限,并
且可以授予和回收数据库对象权限,但无法管理    与维护数据库对象权限。

1.2 创建用户

数据库系统在运行过程中,需要根据实际需求创建用户,然后为用户指定适当的权限。创建用户的操作一般只能由系统预设用户SYSDBA、SYSSSO 和 SYSAUDITOR 完成,如果普通用户需要创建用户,必须具有 CREATEUS SER的数据库权限。

1.2.1 创建用户命令

创建用户的命令是CREATEUSER,创用户涉及内容包为用户指定用户名、认证模式、口令、口令策略、空间限制、只读属性及资源限制。其中,用户名是代表用户账号的标识符长度为1~128个字符用户名可以用双引号括起来。在达梦数据库中使用CREATEUSER 语句创建用户,具体的SQL语法格式如下: CREATE USER<用户名>IDENTIFIED<身份验证模式>[PASSWORD_POLICY<口令策略>][<锁定子
[<允许时间子句>][<禁止时间子句>][<TABLESPACE子句>];    有>][<存储加密密钥>][<空间限制子句>][<只读标识>][<资源限制子句>][<允许IP子句>][<禁止IP子句>    
<身份验证模式>::=<数据库身份验证模式>外部身份验证模式><数据库身份验证模式>:BY<口令>
<外部身份验证模式>:::EXTERNALLYEXTERNALLYAS<用户DN><口令策略>::=口令策略项的任意组合
<锁定子句>::ACCOUNTLOCK|ACCOUNTUNLOCK<存储加密密钥>::ENCRYPT BY<口令>
<空间限制子句>:: DISKSPACELIMIT<空间大小>DISKSPACE UNLIMITED<只读标识>::-READ ONLYI NOT READ ONLY
<资源限制子句>::=LIMIT<资源设置项>{<资源设置项>
<资源设置项>:SESSIONPER_USER<参数设置>|CONNECT_IDLE_TIME<参数设置 CONNECTTIME参数设置>|CPUPERCALL<参数设置>CPU_PER_ESION<参数设置> MEMSPACE<参数设置>READ_PER_CALL<参数设置>READ_PERSESSION<参数设置>1 FAILEDLOGIN_ATTEMPS<参数设置>|PASSWORDLIFE_TIME<参数设置>| PASSWORDREUSETIME<参数设置>K参数设置>:=<参数值>UNLIMITED
<允许IP子句>::=ALLOW_IP<IP项>{,<IP项>)
<禁止IP子句>::=NOT_ALLOW_IP<IP项><IP项>)<IP项>=<具体IP><网段>
<允许时间子句>::=ALLOW_DATETIME<时间项>{,<时间项>)
<禁止时间子句>::= NOT_ALLOW_DATETIME<时间项>{,<时间项><时间项>:=<具体时间段>|<规则时间段>
<具体时间段>::=<具体日期><具体时间>TO<具体日期><具体时间>
<规则时间段>::=<规则时间标识><具体时间>TO<规则时间标识><具体时间><规则时间标识>::-MON|TUE|WED|THURS|FRI|SAT|SUN<TABLESPACE子句>::=DEFAULTTABLESPACE<表空间名>
例如,创建用户名为BOOKSHOP_USER、口令为BOOKSHOP_PASSWORD、会话超时3分钟的用户。
CREATE USER BOOKSHOP USER IDENTIFIED BY BOOKSHOP_PASSWORD LIMITCONNECT_TIME3;

1.2.2 用户口令策略

用户口令最长为48 字节,创建用户语句中的 PASSWORD POLICY子句用来指定该用户的口令策略,系统支持的口令策略如下。
0:无策略;
1:禁止与用户名相同;
2:口令长度不小于9字节;
4:至少包含一个大写字母(A~Z);8:至少包含一个数字(0~9);
16:至少包含一个标点符号(在英文输入法状态下,除空格外的所有符号)。
口令策略可以单独应用,也可以组合应用。口令策略在组合应用时,如果需要应用策略 2和策略 4,则设置口令策略为 2+4=6 即可。
除了在创建用户语句中指定该用户的口令策略,达梦数据库配置文件dmini中的参数 PWD_POLICY也可以指定系统的默认口令策略,其参数值的设置规则与 PASSWORD POLICY子句一致,默认值为2。若在创建用户时没有使用 PASSWORD POLICY 子句指定用户的口令策略,则使用系统默认的口令策略。
系统管理员可以通过查询 V$PARAMETER 动态视图来查询 PWD_POLICY的当前值。 SELECT*FROM VSPARAMETER WHERE NAME='PWD_POLICY;
系统管理员也可以通过使用客户端工具console,或调用系统过程SP_SET_PARA_VALUE重新设置PWD POLICY的值。

1.2.3 用户身份验证模式

达梦数据库提供数据库身份验证模式和外部身份验证模式来保护对数据库访问的安全。数据库身份验证模式需要利用数据库口令,即在创建或修改用户时指定用户口令,用在登录时输入对应用户口令进行身份验证;外部身份验证模式支持基于操作系统(OS)的身份验证、LDAP 身份验证和KERBEROS 身份验证。
1)基于操作系统的身份验证
若要利用基于操作系统的身份验证,则在创建用户或修改用户时,要利用IDENTIFIED EXTERNALLY 关键字。
基于操作系统的身份验证分为本机验证和远程验证。本机验证在任何情况下都可以使用。远程验证则需要将达梦数据库配置文件 dm.ini中的ENABLE_REMOTE_OSAUTH参数设置为1(默认值为0),表示支持远程验证;同时要将配置文件 dm.ini 中的 ENABLE ENCRYPT 参数设置为1(默认值为1),表示采用 SSL 安全连接。这两个参数均为静态参数,数据库管理员可以使用系统过程 SP_SET_PARA_VALUE 进行修改,但修改后需要重新启动DM 服务器才能生效。
用户在登录时将用户名写为“//username”形式,表示基于操作系统的身份验证模式登录,不需要输入口令。

我:
用户在登录时将用户名写为“//username”形式,表示基于操作系统的身份验证模式登录,不需要输入口令。
ALIOW
我:
2)LDAP身份验证
达梦数据库提供对 LDAP支持,利LP器储数据信息,验证用户是否是数据库的合法用户。假设企业已经部署了LDAP服购买了证书认证)。
要使用件min中添加参数DA HOST。P所机器名,假名为dapserver.dameng.org则LDAPHOST=1dapserverdamengorg.
LDAP 身份验证创建用户的语法如下:
CREATE USER<用户名>IDENTIFIED EXTERNALLYAS<用户DN>
…”表示61.2中创建用户语法从“<锁定子句>”开始往后的语法部分。语法中的“用户DN”指LDAP数据源中的用户DN,可以一地标识每个用户。
例如,如果域名为 dameng.org,若以 Administrator 用户登录,按 DN 规范书写,则 certificate_dn 为“cn=Administrator,cn-users,dc=dameng,dc-org”。创建用户的语法 Windows操作系统和Linux操作系统下可以分别写为如下格式。
在Windows操作系统下:
CREATE USER user01 IDENTIFIED EXTERNALLY AScn=Administrator,cn-users,dc-dameng, dc=org;
在Linux操作系统下:
CREATE USER user01 IDENTIFIED EXTERNALLY ASn=rootdc=dameng,dc=org;
当用户使用达梦数据库客户端或接口登录达梦数据库时,将用户名写为“/username形式,表示以LDAP验证方式登录,登录密码为LDAP数据源中创建用户时使用的密码。
3)KERBEROS 身份验证
KERBEROS 是为TCP/IP 网络系统设计的、可信的第三方认证协议,达梦数据库支持 KERBEROS 身份验证。假设用户已经正确配置了 KERBEROS 使用环境。
KERBEROS 身份验证创建用户的语法如下:
CREATE USER<用户名>IDENTIFIED EXTERNALLY ……
“……”表示6.1.2节中创建用户语法从“<锁定子句>”开始往后的语法部分。
当用户使用达梦数据库客户端或接口登录达梦数据库时,将用户名写为“///username”形式,表示以KERBEROS验证方式进行登录,不需要输入密码。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值