【安当产品应用案例100集】014-使用安当TDE实现达梦数据库实例文件的透明加密存储

本文主要是介绍【安当产品应用案例100集】014-使用安当TDE实现达梦数据库实例文件的透明加密存储,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

随着数据安全重要性的不断提升,数据库文件的落盘加密已成为数据保护的一项基本要求。达梦数据库作为一款高性能的国产数据库管理系统,为用户提供了一种高效、安全的数据存储解决方案。本文将详细介绍如何利用安当KSP密钥管理平台及TDE透明加密组件来实现达梦数据库文件的透明加密,从而进一步提高数据的安全性。

一、安当产品简介

1. KSP密钥管理平台

KSP作为数据保护系统的核心模块,提供密钥全生命周期的管理及日志审计功能。通过细粒度的密钥权限策略提升数据安全性,安全简便的web管理界面简化了用户使用的便利性。对于TDE透明数据加密,KSP还提供了集中化的模块策略管理,便于系统管理和维护。

2. TDE透明加密组件

TDE组件能在不修改应用程序的前提下,对结构化/非结构化数据实现存储加密和访问控制。它对应用系统完全透明,并能有效保护数据库实例文件免受未经授权的访问,通过操作系统级别的用户权限控制,防止黑客或内部人员非法获取数据。

二、实现透明加密的业务流程

在实现达梦数据库实例文件的透明加密过程中,主要涉及以下几个步骤:首先是TDE客户端注册到KSP,注册完成后即使与服务器断开连接也能自动进行二次登录;接着是KSP完成策略配置并下发给TDE客户端;最后,TDE客户端接收并解析策略,对指定资源集执行相应的加解密操作。

三、实现步骤

为了实现透明加密,用户需要完成以下准备工作:

准备工作:

在正式开始之前,确保已本地私有化部署一套KSP密钥管理平台,或使用安当提供的KSP阿里云服务。

1. 部署TDE客户端

在数据库服务器上安装TDE客户端软件,通常只需简单的安装步骤即可完成。

2. 注册TDE客户端

安装完毕后,需要配置KSP服务地址及注册令牌以建立通信。注册成功后,TDE客户端便能够与KSP进行通信。

3. 配置加密策略

在KSP端创建自定义加密策略,包括定义资源集、用户集、进程集、安全规则以及密钥规则等元素。

  • 资源集:需加密的数据资源
  • 用户集:与计算机系统进行交互的用户的集合
  • 进程集:指定用于加密和解密操作的系统进程
  • 安全规则:控制用户访问权限
  • 密钥规则:用于文件加解密的密钥

具体规则解读:

rule1:允许Operator用户使用指定进程对资源进行所有操作

rule2:允许Backup用户使用指定进程对资源进行读写操作,但不允许查看明文

rule3:允许Operator用户使用任意进程访问保护点目录下的所有资源

rule4:拒绝所有其他用户对资源的操作,包括Admin用户

4. 下发保护点

创建并下发保护点,即指定要加密的文件或目录集合。通过合理配置保护点,可以确保关键数据在客户端上获得全面的加密保护。在达梦数据库中,一般是表空间存储的目录。

保护点创建并下发成功后,加密策略会自动推送到TDE客户端。随后,TDE客户端将策略转发至底层驱动程序进行解析,并根据策略对指定的资源集和本地应用进程实施加密和权限控制操作。至此,实现达梦数据库实例文件透明加密所需的所有步骤均已完成。接下来,我们将展示策略下发后的实际效果。

四、加密效果验证

1. 使用具有全部操作权限的Operator用户访问加密的数据库实例文件,能正常访问

2. 使用仅限读写但无解密权限的Backup用户访问加密的数据库实例文件,能访问但无法查看明文

3. 使用没有任何权限的Admin用户尝试访问加密的数据库实例文件,被拒绝访问

五、数据完整性校验

通过TDE的透明加密机制,数据库实例文件在存储过程中始终处于加密状态,即便是在静止状态下也能有效抵御未授权访问的风险。更重要的是,TDE内置的数据完整性校验功能,可以在每次读取或写入数据时自动进行校验,确保数据在传输和存储过程中未被篡改。

六、数据库性能影响评估

在启用安当TDE组件加密后,我们进行了大量测试,结果显示加密操作对达梦数据库的增删改查性能影响较小,具体损耗如下:

通过上述步骤,我们不仅提升了达梦数据库中敏感数据的安全性,还确保了系统的易用性和性能稳定性。借助安当KSP密钥管理平台与TDE透明加密组件的结合,企业得以构建起坚固的数据防护屏障。随着数据安全要求的日益严格和技术的不断进步,此类解决方案将成为保障企业核心数据资产安全的关键。希望本文能够帮助读者有效地掌握透明加密技术的应用方法,为构建更为安全可靠的数据存储环境打下坚实的基础。

文章作者:久洋 ©本文章解释权归安当西安研发中心所有

这篇关于【安当产品应用案例100集】014-使用安当TDE实现达梦数据库实例文件的透明加密存储的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130982

相关文章

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

HDFS—存储优化(纠删码)

纠删码原理 HDFS 默认情况下,一个文件有3个副本,这样提高了数据的可靠性,但也带来了2倍的冗余开销。 Hadoop3.x 引入了纠删码,采用计算的方式,可以节省约50%左右的存储空间。 此种方式节约了空间,但是会增加 cpu 的计算。 纠删码策略是给具体一个路径设置。所有往此路径下存储的文件,都会执行此策略。 默认只开启对 RS-6-3-1024k

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu