数据库安全如何保障?YashanDB有妙招(上篇)

数据库作为信息系统的核心,不仅承载着海量的关键数据,还负责向各类用户提供高效、可靠的信息服务,数据库的安全性显得尤为关键,已成为信息安全体系的重中之重。

什么是数据库安全?

数据库安全是数据安全的一个子集,由可以保护数据库免受恶意攻击的安全控制、工具和策略组成。数据库安全是一项复杂的任务,它包括对数据本身、管理数据的数据库管理系统以及使用数据的应用程序等等的保护。最终目标是保护企业或组织的信息的机密性、完整性、可用性(CIA)和可审查性等。

数据库面临哪些风险?

基于互联网的攻击、软件配置错误、漏洞、粗心或误用模式都可能导致数据库安全风险,以下是企业和组织常见的安全风险:

数据库面对哪些监管要求?

当这些风险发生时,给企业带来的处除了经济损失、品牌声誉受损等等之外,还会面临监管处罚。国家监管部门为数据安全和数据库安全制定相关的法律、法规和标准,并负责统筹协调网络数据安全和相关监管工作。

与之紧密相关的法律框架可简单概况为“三法两条例”:包括《网络安全法》、《数据安全法》、《个人信息保护法》和《关键信息基础设施安全保护条例》、《网络数据安全管理条例》,除此之外,还包括密码相关的法律法规和标准。

国家相关部门通过制定统一的管理和测评规范,为企业的安全合规提供指引和保障,主要可以概况为“三保一评”,分别是等保、关保、分保和密评。YashanDB按照国家各项标准的要求实现数据库安全功能,对客户的等保、关保和密评提供有效的支持。

数据库安全架构包括哪些?

用户数据存储在数据库中,处于数据安全被保护的核心,根据纵深防御的思想,应该以数据库为中心,应设置分层保护、多重验证、多重检测等技术措施,以增加攻击的复杂性和成本,从而降低被攻击成功的概率。

YashanDB的安全机制总体上可以分三个层次,包括:访问管理、威胁检测和数据保护。

访问管理采用良好的身份认证、访问控制和反入侵等措施;

威胁检测由统一安全审计和漏洞扫描构成;

数据保护通过加密、密钥管理、安全销毁和备份恢复实现。

(一)访问管理

身份认证

身份认证是对登录数据库的用户的身份鉴别。身份认证的机制包括:口令认证、操作系统认证、双因素认证。

1、口令认证:

1)存储在数据库表中的密码字段:这是在创建或修改用户时所设置的密码,这类密码与用户信息一同记录。

2)存储在数据库服务器上的密码文件:为系统用户SYS所设置的密码,这类密码脱离于数据库表,可满足数据库处于非open状态时的登录认证。

为了保障密码安全,启用密码强度控制,在密码设置时要求满足一定的复杂度要求。

为了保障用户口令的安全,YashanDB采用如下的安全策略:

1)启用密码强度控制,在用户设置口令时要求满足一定的复杂度。同时在服务端存储凭证时,采用加盐等安全策略,可有效避免各种恶意攻击。

2)在口令认证的过程中,采用有效的密码策略,对用户的登录行为和属性进行判断并作出相应的动作,包括:

a.为防止恶意攻击者反复登录尝试猜出密码,当用户因为密码错误连续登录失败达到阈值时,将被锁定一定时间。

b.用户长时间使用同一密码会影响数据库安全,因此系统对于密码的生命长度进行限制。

c.系统在用户登录过程中发现密码已使用超过限制天数时,将进行额外宽限期处理,并打印告警日志提示。宽限期过后,该密码完全过期,客户端提示用户输入新密码,用户可以立即更新密码。

d.为防止用户长时间使用相同密码,用户在设置新密码时还需要满足密码复用限制,不允许复用一定时间内使用过的密码以及最近变更次数内使用过的密码。

2、操作系统认证:

操作系统认证指的是,当用户属于操作系统的YASDBA用户组,从本地登录(UDS)时可免密登入,它的优点是避免在使用过程中多次连续输入口令,方便管理员的操作。更为重要的是,可以避免在一些执行脚本中暴露管理员的口令。

3、双因素认证

YashanDB根据国家标准GB/T 15843《实体鉴别》第2部分和第3部分的要求,通过智能密码钥匙对管理员进行双因素认证。

安全管理员使用数据库自带的工具进行初始化,并创建个人证书,然后安装个人证书到数据库服务端的配置目录下。

当数据库管理员登录时,除了输入口令外,还需要通过智能密码钥匙对鉴别信息进行签名。对于服务器既要验证口令,还需要通过个人证书进行签名的验签,只有两者同时验证通过了,登录才能成功。

访问控制

访问控制是一种确保数据处理系统的资源只能由经授权实体以授权方式进行访问的手段。常见的访问控制的模型,包括自主访问控制DAC、基于角色的访问控制RBAC、基于属性的访问控制ABAC等等。YashanDB实现了基于角色的访问控制(RBAC)和基于标签的访问控制(LBAC)。

1.RBAC

YashanDB定了如下的特权和角色:

三权分立是对数据库管理人员的职责划分,目的是使不同的管理职位各司其职,行使不同角色,互相限制和监督,保障系统整体安全。三种管理员权限应该互相独立,包括:

1)安全管理员,只具备管理角色(Role)或用户(User)以及为其他账号授予权限的权限

2)审计管理员用户,拥有AUDITADMIN能力,即审计策略和审计日志管理权限

3)数据库管理员,只具备DDL等权限等

2.LBAC

LBAC是强制访问控制的一种实现,在GB/T 22239-2019《信息安全技术 网络安全等级保护基本要求》和《数据库管理系统安全技术要求》中对强制访问控制有着明确要求。

主要的强制访问控制模型是BLP模型,该模型实现了信息的单向流通,即信息只能从低安全等级向高安全等级流通。

YashanDB实现了LBAC强制访问控制,强制访问控制是根据用户的安全标签以及数据的敏感性标签来控制数据访问。标签安全在自主访问控制之外增加了一层保护。

在表中添加一个标签(label)列,当在新建、插入和修改数据表时,同时在该列中写入对应的标签(label)值,代表当前行数据的敏感值。同时对于每个用户设置一个标签(label)值,代表用户的敏感属性。当用户访问数据库时,通过比较用户的 Label 和数据的 Label值,达到约束主体(用户)对客体(表中的数据)访问的目的,实现了基于LBAC策略对数据库中的表提供行级安全控制功能。

LBAC由策略、组件、标签构成。策略是一种预定义标记组件,由等级(level)、范围(compartment)和组(group)构成,从3个不同的维度对数据进行描述,其中等级在策略中是必须存在的,范围和组可以缺省。

YashanDB安全管理员可以创建安全策略、定义策略中的 Label、设置用户关联策络的读写label信息。一个安全策略可以应用到多张表上,一张表也可以应用多个安全策略。

反入侵

数据库反入侵是保护数据库免遭未经授权的访问、恶意活动等等。其中黑白名单是抵御恶意软件和有针对性的攻击的一种必要的手段。

YashanDB支持黑名单和白名单,白名单以外的用户都不能访问数据库。黑名单以内的用户都不能访问数据库,如果二者冲突则以黑名单优先。通常的配置形式如下图所示:

此外,YashanDB采用连接监听机制检测诸如连接风暴类的网络攻击。YashanDB通过记录监听日志的方式实现此功能。监听日志中记录了包括时间戳、用户、连接状态、IP、端口等连接信息(成功或失败的连接均被记录),通过查看这些信息可以帮助用户快速分析连接来源,并对恶意攻击立即做出反应,保护系统的安全。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/573687.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AI-数学-高中-45函数单调性与导数

原作者视频:【导数】【一数辞典】5函数单调性与导数(重要)_哔哩哔哩_bilibili 导数最重要作用:判断函数单调性。 示例:

基于SpringBoot和Leaflet的地震台网信息预警可视化

目录 前言 一、后台管理设计与实现 1、Model层 2、业务层 3、控制层 二、前端预警可视化设计与实现 1、网页结构 2、数据绑定 三、效果展示 总结 前言 在之前的几篇博客中,我们讲解了如何在Leaflet中进行预警信息提示效果,以及基于XxlCrawler进…

智能写作工具,一键改写文章不费力

改写是一种用来创作原创文章的方式,也是用来提升文章质量的方法。无论我们在创作中通过改写来提升文章的质量,还是用改写帮助我们达到原创文章的生成,文章改写都可以实现我们这些目的,然而,想要高效率轻松改写文章我们…

三分钟设计自己的工厂!基于昇腾AI处理器昇思MindSpore打造的智能化工大模型为化工研发效率带来10+倍提升

前言:华为与大连化物所深度合作,联合推出智能化工大模型,AI赋能化工领域,拥抱科学创新,提供了数据驱动化工研发的新范式。 2024年3月22日,在北京国家会议中心召开的昇思人工智能框架峰会上发布了由华为AI4…

VForm3的文件上传方式

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 http://122.227.135.243:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a…

智能条件单无需盯盘!

一般我们说到量化交易都觉得很困难,写策略难,看python难,不会使用程序难,电脑交易不方便难,今天我们来看看手机电脑都可以使用的量化基础条件单的操作。 迈入量化第一步,条件单的使用! 今天小编…

企业微信hook接口协议,标签变动回调

个人标签新增回调 {"labellist": [{"op": 3, "bDeleted": 0, //0代表新增"create_time": 1678114162, "label_groupid": 14073749131792038, "label_type": 2, "source_appid": 0, "business_typ…

Python 装饰器

Python 装饰器 1. 简单的装饰器 下面是一个简单的装饰器示例,它记录被装饰函数的调用信息: def my_decorator(func):""" 中层函数:接收被装饰的函数 """def wrapper():""" 内层函数&#xf…

嵌入式4-25

整理思维导图在课上练习的基础上&#xff0c;完成拷贝赋值函数完成下列类 #include <iostream> using namespace std;class person {string name;int age;char sex; public:int *p;person(){cout<<"person无参构造"<<endl;};person(const string n…

专业护眼灯什么牌子好?2024年专业护眼灯品牌排行分享

专业护眼灯什么牌子好&#xff1f;各位家长可能已经注意到一个令人关切的现象&#xff1a;戴眼镜的孩子人数在不断上升&#xff0c;许多孩子正在接受眼部治疗。眼睛健康的问题变得越来越普遍&#xff0c;这无疑令人担忧。在当今数字化时代&#xff0c;孩子们每日需长时间阅读和…

对腾讯文档AI助手技术架构的简单分析

腾讯文档全面接入了AI&#xff0c;今天腾讯技术大佬tensorchen作者发表了一篇文章《腾讯文档AI助手技术实践》&#xff0c; 里面讲解了从技术应用架构以及AI大模型赋能角度&#xff0c;介绍腾讯文档AI智能助手的探索和实践之路。作为一款集多功能为一体的AI产品&#xff0c;腾…

Web前端开发之HTML_3

标签之表格Form表单块元素与行内元素&#xff08;内联元素&#xff09;HTML5新增标签 1. 标签之表格 <table></table> 1.1 表格&#xff08;快速生成&#xff1a;table>tr*2>td*3{单元格}&#xff09; 表格由行、列、单元格组成。单元格有同行等高、同列等…

(八)Servlet教程——创建Web项目以及Servlet的实现

1. 打开Idea编辑器 2. 点击界面上的“新建项目”按钮 3. 设置好项目名称和位置 应用服务器选择之前设置好的Tomcat服务器 构建系统默认选择Maven 4. 点击“下一步”按钮 5. 点击“完成”按钮&#xff0c;Idea就创建好了项目&#xff0c;创建完成后的目录结构如下图所示 6. 此…

2024.4.25

#include <iostream> #include <iomanip> using namespace std; class Person{const string name;int age;char sex; public:Person(const string name):name(name){cout << "第一个Person构造函数" << endl;}Person():name("zhangsan&…

js网络请求---fetch和XMLHttpRequest的用法

fetch 语法规则 let promise fetch(url, [options]) //url —— 字符串&#xff1a;要访问的 URL。 //options —— 对象&#xff1a;可选参数&#xff1a;method&#xff0c;header 等。 fetch函数返回一个promise&#xff0c;若存在网络问题&#xff0c;或网址不存在&…

Java通过邮件发送验证码和通过手机号发送验证码

前提&#xff1a;我将验证码存入了map集合&#xff0c;进行验证。 private static HashMap<String, Integer> emailMap new HashMap<>();一、通过邮箱发送验证码&#xff1a; 1、准备条件&#xff1a;引入hutool依赖&#xff0c; <!--hutool--><depend…

【C语言】深入理解KMP算法及C语言实现

一、KMP算法简介 KMP算法&#xff08;Knuth-Morris-Pratt算法&#xff09;是一种高效的字符串匹配算法&#xff0c;由Donald Knuth、James H. Morris和 Vaughan Pratt共同发明。KMP算法的核心思想是当一次字符比较失败时&#xff0c;利用已经得到的部分匹配信息&#xff0c;将模…

Kubernetes TDengine 系列|安装 TDengine 的 Grafana 插件|Grafana监控TDengine数据

为了让Grafana 能够监控到TDengine 数据&#xff0c;快速集成搭建数据监测报警系统&#xff0c;所以直接安装TDengine 插件。 目录 一、安装 TDengine 的 Grafana 插件1、下载TDengine grafana插件2、解压到指定目录3、配置未签名插件 二、配置数据源&#xff0c;简单查询TDen…

想在游泳健身的同时畅听音乐,随时哈氪漫游这款IP68防水的骨传导耳机

平时健身的过程中&#xff0c;音乐是许多健身爱好者的忠实伴侣。无论是在室内的健身房&#xff0c;还是户外的自然风光中&#xff0c;一副优质的耳机可以极大地提升我们的锻炼体验。现在市面上专为运动设计的耳机选择非常多&#xff0c;我喜欢用骨传导耳机&#xff0c;目前在用…

Linux--忘记root密码解决办法

Linux忘记密码解决的方法有两种&#xff1a; 方法一&#xff1a; 第一步&#xff1a;打开虚拟机时&#xff0c;疯狂按方向键&#xff0c;让该虚拟机不进入系统停留在开机界面&#xff0c;按方向键使光标停留在第一行&#xff0c;按字母E编辑它&#xff0c;如 按E后&#xff0…