#YashanDB安全体系概述
随着信息技术日新月异的发展,互联网在提供便利性同时也带来更严重的信息安全问题。所有企业在建立信息安全防护体系时,都将数据库置于被保护的核心位置,使其不易被黑客攻击,同时也要求数据库自身具备强大的防护能力,能够应对外部的入侵窃取和内部的信息泄露,保障数据的安全。
一个安全的数据库系统应该能够建立安全保护机制,实施安全管理措施,保护数据库管理系统软件和数据不因偶然和恶意的原因而遭到破坏、更改和泄漏。安全总体目标通常会被划分为保密性、完整性、可用性、可控性和不可抵赖的要求:
保密性(Confidentiality):数据不能泄露给非授权用户、实体。通常通过加密、访问控制等方式达到保密性要求。
完整性(Integrity):数据在存储和传输过程中,非授权情况下原始信息保持非修改、非破坏和非丢失的特性。通常通过访问控制、完整性校验来达到完整性要求。
可用性(Availability):数据可被授权用户、实体正确访问,在非正常情况下能恢复使用。通常通过访问控制、连接管理、备份与恢复、高可用等方式来达到可用性要求。
可控性(Controllability):可以控制授权范围内的信息流向及行为方式。
不可抵赖(Non-repudiation):对出现的信息安全问题提供调查的依据和措施。
# YashanDB安全体系
在YashanDB安全体系中,使用分层防御的思想,构建形成多方式、多层次、功能互补的安全防护能力体系,如果一个安全技术或工具失效或被攻击者绕过,其他正确配置的技术或工具仍然可防止未授权访问。
按照分层防御的理念,我们把所有的安全技术分层组织,实现了一个具有多个控制层实现的安全解决方案,包括数据层、审计层、访问层和连接层。
| 防御层 | 关键安全能力 |
|---|---|
| 数据层 | * 密码加密 * 数据透明加密 * 数据动态脱敏 * 数据备份与恢复、闪回 * 备份集加密 |
| 审计层 | * 系统权限审计 * 行为审计 * 角色审计 |
| 访问层 | * 数据访问控制:自主访问控制(Discretionary Access Control,DAC)、基于角色的访问控制(Role-Based Access Control,RBAC)、基于标签的访问控制(Label-Based Access Control,LBAC) * 资源控制:会话资源控制、保留链接 |
| 连接层 | * 连接管理:IP黑白名单管理、连接监听 * 身份鉴别:密码认证、操作系统认证、双因素认证 * 可信通道:SSL/TLS协议、TLCP协议 |
YashanDB提供了一系列安全工具、特性和策略,用以满足安全性要求,主要包括以下几个方面:
身份标识与鉴别:创建一个账号即表示创建了一个数据库用户,账号代表了用户的身份,包含密码、权限、默认表空间等信息。通过密码认证、操作系统认证等不同认证方式,完成对数据库访问者的身份合法性验证,任何未通过认证的访问都会被数据库拒绝。
数据访问控制:提供细粒度的权限控制,数据库使用者只允许在权限范围内操作数据库和访问数据,支持DAC、RBAC和LBAC。
安全审计:通过审计机制记录用户访问数据库的行为,从而进行安全风险识别、危险/恶意行为阻止、安全问题追溯等。
加密支持:通过加密技术,避免数据、用户密码在存储时被泄漏的风险,保障数据的机密性。
连接管理:通过连接请求IP黑/白名单、连接监听、会话资源管控等功能,提供数据库反入侵的能力。
数据高可靠:通过数据备份与恢复、闪回技术,可有效保证数据的可靠性、完整性。
高可用:通过数据实时冗余技术,保证意外情况下数据库服务的快速恢复。
EAL残余数据保护:删除对象后,清理残余数据避免数据泄露。
# 默认的安全机制
为满足不同级别的安全需求,YashanDB提供的安全特性和策略大多可以进行配置或控制开关。在完全不进行任何调整的情况下,YashanDB有一套默认的安全机制,满足系统运行安全和数据安全的基本要求。
| 安全项 | - | 默认机制 |
|---|---|---|
| 用户 | 无任何普通用户,需使用sys超级管理员创建第一个普通用户并授权 | |
| 身份鉴别 | 密码认证 | 开启 |
| 操作系统认证 | 开启 | |
| 数据访问管理 | 三权分立 | 关闭 |
| 强制访问控制 | 关闭 | |
| 安全审计 | 关闭 | |
| 加密支持 | 可信通道 | 关闭 |
| 连接管理 | 应急连接资源预留 | 开启,且无法关闭 |
| 连接监听 | 开启 | |
| 请求方IP黑/白名单 | 关闭 | |
| 会话资源管控 | 关闭 |

