风险防不胜防?看 YashanDB 如何守护你的数据库安全(下篇)

简介: 本文深入探讨数据库安全机制中的威胁监测与数据保护。在威胁监测方面,YashanDB 提供权限、行为和角色审计功能,支持异步审计降低性能影响,并通过安全漏洞扫描和硬件防护减少漏洞危害。数据保护部分涵盖通信加密(支持国密标准)、存储加密(表空间透明加密TDE)、备份加密及密钥管理等关键技术。此外,YashanDB 支持热备、增量备份和按时间点恢复,并实现安全销毁防止信息泄露,全面保障数据的机密性、完整性和可用性。

image.png

前言上一篇文章,咱们主要讲了数据库安全机制中的访问管理~今天继续深入聊聊威胁监测以及数据保护。

02 威胁监测

//安全审计

YashanDB 语法上支持权限审计、行为审计和角色审计,逻辑上包括了系统级、语句级、对象级进行审计,支持对指定用户或所有用户进行审计,并支持对系统权限进行审计。审计记录保存在物理表中,拥有 AUDIT_ADMIN 或 AUDIT_VIEWER 角色权限的用户可以通过审计视图 UNIFIED_AUDIT_TRAIL 查看审计日志信息。

image.png

权限审计指的是对 YashanDB 的所有系统权限进行审计,当对某个系统权限启用审计策略后,只要在 SQL 语句或其他操作中使用了这个系统权限,就会被审计,也是语句级审计。

行为审计包括系统审计和对象审计

系统审计:包括对象创建/删除、建库/关库、提交/回滚等所有的操作行为的审计。

对象审计:表示对某个具体对象的操作行为的审计。

此外,YashanDB 提供角色审计功能,在某个角色上启用审计策略后,所有直接被赋予给该角色的系统权限就可以被审计。

审计日志被记录在系统表中,只有审计管理员可以查看和分析该表。为了降低审计对系统的影响,YashanDB 支持审计日志异步入库。

为减少审计对数据库性能的影响,YashanDB 默认采用异步审计的方式写审计记录(由 AUDIT_QUEUE_WRITE 参数控制开。

异步审计将审计数据信息先写入审计数据队列,当审计数据队列达到阈值(数据刷新时间间隔、数据队列时 ,再将数据批量插入审计记录表中。这些阈值可通过 AUDIT_FLUSH_INTERVAL 和 AUDIT_QUEUE_SIZE 进行调整。异步审计可以减少对数据库性能的影响,但在一些异常情况下(例如数据库异常宕可能导致丢失部分审计数据。

//反漏洞

YashanDB 使用以下的机制,降低漏洞的危害。

1.安全漏洞扫描:代码安全静态扫描、开源代码扫描,并及时发布的安全补丁和更新版本,以修复已知的安全漏洞。

2.使用已经取得安全资质的硬件和操作系统。

03 数据保护

//通信加密

在数据库客户端和服务端之间,在数据库各节点之间应建立安全的通信信道,保障通信数据的机密性和完整性。YashanDB 可以通过 TLCP/TLS 协议进行通信信道加密和服务端身份认证,可通过配置文件进行密码协议的选择和关键参数的配置。

《信息安全技术传输层密码协议(TLC》是 2020 年 11 月 1 日开始实施的一项中国国家标准,是国密版 SSL。国密 SSL 参照了 TLS 规范,但和 TLS 并不兼容。协议架构如下所示:
image.png

//存储加密

数据加密对于数据库安全具有十分重要的意义,是一种主动保护技术。关于存储加密的模型,通常有多种实现方式,比如应用系统加密、前置代理加密、后置代理加密、透明加密、文件加密、磁盘加密等等。YashanDB 平衡了各种技术的优缺点,采用了表空间透明加密 TDE,这种技术的优点是:

1.对于数据库用户和应用程序是透明的。

2.不对数据库功能有任何影响。

3.性能损耗极小,通常可以忽略

TDE 要求在数据库写入存储介质时自动加密,从存储读取至数据库 buffer 内时解密,对应用程序是透明的,数据库层的访问控制、SQL 查询等都不会改变。

YashanDB 采用国密 SM4 的加密算法进行表空间数据加密,用户无需指定策略,在保证密文的破解难度外,同时兼顾了加解密对数据库的低性能损耗,可适用于大数据量的表空间加密。对某个表空间是否启用加密,需要在创建时就确定,且不可更改。

对于分区表,YashanDB 支持各分区可以任意存储在加密或非加密的表空间,即可对表进行部分数据加密。

//备份加密

YashanDB 支持在备份时指定加密策略,保障备份集数据的安全。用户可依据自身需求选择不同的加密算法,YashanDB 提供 AES128、AES192、AES256 和 SM4 四种流行的加密算法供选择。

备份加密的密钥采用与 YashanDB 用户口令一致的策略,并使用与其相同的密钥保护机制,保证在没有明文密码的情况下永远不会被破解,进一步保障了数据的安全。

//密匙管理

密钥管理是指对加密系统中使用的密钥进行全面管理和保护的过程和实践。在计算机安全和信息安全领域中,加密算法通常使用密钥来对数据进行加密和解密,而密钥管理则涉及生成、存储、分发、轮换、撤销和销毁这些密钥的活动。

YashanDB 支持软件硬件统一的密钥管理框架,并采用三级密钥管理体系,这可以在一定程度上提高加密系统的安全性和合规性,同时也能够提供更大的灵活性和管理便利性。

//备份和恢复

对数据库的备份分为冷备和热备,其中冷备表示将数据库关闭后,通过操作系统命令进行文件系统的复制,热备表示在数据库正常运行期间所进行的在线备份,YashanDB 所支持的备份功能为热备。以备份集的形式持久化,恢复则是使用备份集还原出数据库文件,恢复到备份时的状态。管理员应定期执行备份,可有效避免意外场景下的数据损坏。

数据库备份又分为全量备份和增量备份:

1.全量备份:对某一时间点上的所有数据进行完全复制,不依赖之前的备份集。一个全量备份集可以恢复出所有数据

2.增量备份:在有全量备份基线(level的情况下,增量备份(level只备份上一次备份后,发生过变化的数据。增量备份可以减少备份时间,减少磁盘占用,但是恢复时,需要按增量备份集链逐个恢复。

3.累计增量备份:第一次增量备份,必须是 LEVEL 0.即全量备份。后续每次备份自上一次完全备份之后有变化的数据。

YashanDB 支持如下方式的数据备份:

1)使用 BACKUP DATABASE 语句发起备份操作,备份集将生成在数据库服务端。

2)使用 yasrman 工具发起远程备份操作(对分布式可以发起多节点的统一备份操作),备份集可以选择生成在工具端或者数据库服务端。

用户可以选择任一种方式进行备份操作,两种方式均支持如下备份策略:

1.支持选择全量备份和增量备份。

2.支持选择对备份集数据进行压缩。

3.支持选择对备份集数据进行加密。

YashanDB 支持按指定时间点恢复 Point-in-Time Recovery,恢复操作需要指定时间点或者 SCN。约束条件是:

1.从备份结束时间到指定 TIME 或 SCN 的归档日志都在。

2.TIME 或 SCN 要大于备份结束时间(精确点,是指 data 文件备份结束时间,但 data 文件备份结束时间<备份结束时。

3.指定时间点恢复会有 1s 误差。

4.指定时间点比最后一条日志的时间都大时,不报错,即时间太大,回放不到指定时间不报错,与 oracle 保持一致。

5.需要回放的归档,resetid 需要和备份集 reset id 相同,否则 restore 阶段无法注册不同 reset id 的归档。

//安全销毁

安全销毁又叫剩余信息保护或者客体重用:在普通的环境下,数据库客体(主要指数据库对象、数据文件、缓存回收后不做处理,直接分配给新来的请求,但是有些攻击者会利用这一点编写特殊的非法进程通过数据库管理系统的内存泄露来获取数据库系统的信息。

YashanDB 通过两者手段实现了基本的剩余信息保护:

1.在释放表空间内存之前,将对应内存区域清空(置

2.在删除表空间文件之前,将文件内容用零值覆盖。

YashanDB 能够建立相对完整的安全保护机制,保护数据和数据库管理系统不因偶然和恶意的原因而遭到泄漏、破坏和滥用,保障数据和系统的保密性、完整性、可用性和可审查性。随着数据安全形势的变化和客户安全需求的更新,YashanDB 的安全规划和安全能力建设仍然一直在路上。

相关文章
|
1月前
|
运维 监控 数据可视化
一文拆解 YashanDB Cloud Manager,数据库运维原来还能这么“智能”!
传统数据库运维依赖人工,耗时耗力还易出错。YashanDB Cloud Manager(YCM)作为“智能运维管家”,实现主动、智能、可视化的运维体验。它提供实时资源监控、智能告警系统、自动巡检机制、高可用架构支持和强大的权限管理功能,帮助用户统一管理多实例与集群,减少人工干预,构建现代化数据库运维体系,让企业高效又安心地运行数据库服务。
|
1月前
|
监控 数据库
【YashanDB 知识库】ycm 托管数据库时报错 OM host ip:127.0.0.1 is not support join to YCM
在托管数据库时,若 OM 的 IP 被设置为 127.0.0.1,将导致无法托管至 YCM,并使数据库失去监控。此问题源于安装时修改了 OM 的监听 IP。解决方法包括:将 OM 的 IP 修改为本机实际 IP 或 0.0.0.0,同时更新 env 文件及 yasom 后台数据库中的相关配置。经验总结指出,应避免非必要的后台 IP 修改,且数据库安装需遵循规范,不使用仅限本机访问的 IP(如 127.0.0.1)。
|
1月前
|
存储 安全 数据库
风险防不胜防?看 YashanDB 如何守护你的数据库安全(上篇)
数据库作为信息系统核心,其安全性至关重要。本文聚焦数据库安全机制中的访问管理,涵盖身份认证、访问控制与反入侵措施。YashanDB通过口令认证、操作系统认证及双因素认证确保用户身份安全;实施基于角色(RBAC)和标签(LBAC)的访问控制,实现权限精细化管理;同时利用黑白名单与连接监听机制防范未授权访问和恶意攻击。这些措施共同保障数据的机密性、完整性和可用性,助力企业满足国家合规要求。下期将探讨威胁检测与数据保护内容,敬请期待!
|
1月前
|
SQL 运维 监控
数据库国产化选型?YashanDB 给中大型企业的五个答案
近两年,“国产数据库”成为企业数字化升级的重要议题。YashanDB作为新一代国产关系型数据库,以完整产品矩阵解决企业核心关切:通过图形化工具提升开发效率;提供自动化迁移平台简化数据库切换;云管理工具减轻运维负担;支持复杂业务场景;拥有成熟团队保障企业级服务。YashanDB不仅是“可替代”,更是“更可靠”的选择,助力企业实现高效、可控的数据库升级。
|
1月前
|
监控 Java Shell
【YashanDB 知识库】ycm 托管数据库时,数据库非 OM 安装无法托管
本文主要介绍了因数据库未按规范使用 yasboot 安装导致的问题及解决方法。问题表现为无 yasom 和 yasagent 进程,且目录结构缺失,致使 ycm 无法托管与监控。分析发现可能是数据库版本旧或安装不规范引起。解决方法为先生成配置文件,安装 yasom 和 yasagent,再生成并修改托管配置模板,最终通过命令完成托管至 yasom 和 ycm。总结强调了按规范安装数据库的重要性以避免类似问题。
|
1月前
|
SQL 调度 数据库
开发YashanDB数据库?用 DBeaver for YashanDB 更顺手
数据库开发复杂易错,尤其在企业级场景中。为提升效率,YashanDB 团队基于 DBeaver 开源工具打造专属解决方案——DBeaver for YashanDB。它支持多类型数据库对象管理(表、视图、函数等),适配 YashanDB 特有表结构(HEAP、LSC),提供智能补全、语法高亮、SQL 调试等功能,让开发更高效流畅。推荐用于数据库应用开发团队、高频调试用户及中大型企业统一工具栈场景。
|
1月前
|
SQL 数据可视化 IDE
开发数据库不想写命令?YashanDB Developer Center 帮你轻松搞定
YashanDB Developer Center(YDC)是一款可视化的数据库开发工具,专为提升数据库开发效率而设计。它通过图形化对象管理让数据库对象清晰可见,提供智能SQL编辑器支持语法高亮与自动补全,实现PL调试的图形化操作,帮助快速定位问题。此外,操作记录可追溯,多端灵活部署,适配多种场景。无论是中大型企业研发团队,还是不熟悉命令行的业务开发者,YDC都能显著优化开发体验,堪称YashanDB的“可视化IDE”。
|
23天前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
2月前
|
关系型数据库 MySQL Java
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
|
23天前
|
存储 关系型数据库 MySQL
大数据新视界 --面向数据分析师的大数据大厂之 MySQL 基础秘籍:轻松创建数据库与表,踏入大数据殿堂
本文详细介绍了在 MySQL 中创建数据库和表的方法。包括安装 MySQL、用命令行和图形化工具创建数据库、选择数据库、创建表(含数据类型介绍与选择建议、案例分析、最佳实践与注意事项)以及查看数据库和表的内容。文章专业、严谨且具可操作性,对数据管理有实际帮助。
大数据新视界 --面向数据分析师的大数据大厂之 MySQL 基础秘籍:轻松创建数据库与表,踏入大数据殿堂

热门文章

最新文章