Skip to content

TiDB 等级保护合规 ​

等级保护基本概念 ​

什么是等级保护 ​

等级保护(全称:信息安全等级保护)是中国信息安全保障体系的重要组成部分,是对信息系统分等级实行安全保护、对安全保护工作实施监督管理的一项法定制度。

等级保护分级标准 ​

根据《信息安全技术 网络安全等级保护基本要求》(GB/T 22239-2019),信息系统分为五个安全保护等级:

等级名称适用场景保护要求
第一级用户自主保护级一般信息系统基本的安全保护
第二级系统审计保护级一般业务系统较强的安全保护
第三级安全标记保护级重要业务系统强安全保护
第四级结构化保护级特别重要业务系统很强的安全保护
第五级访问验证保护级核心要害业务系统极强的安全保护

等级保护合规流程 ​

  1. 系统定级:根据系统重要程度和数据敏感程度确定保护等级
  2. 备案:向公安机关备案
  3. 安全建设整改:按照等级保护要求进行安全建设和整改
  4. 等级测评:委托第三方测评机构进行等级测评
  5. 监督检查:接受公安机关的监督检查

TiDB 等级保护合规架构 ​

总体合规架构 ​

TiDB 组件与等保要求映射 ​

等保要求TiDB 实现方式
身份鉴别TiDB 用户名密码认证、证书认证、LDAP 集成
访问控制基于角色的访问控制(RBAC)、细粒度权限管理
安全审计审计日志、慢查询日志、TiDB Dashboard 审计功能
数据完整性Raft 共识算法、数据校验和
数据保密性TLS 加密、存储加密、传输加密
备份恢复BR 工具、增量备份、PITR 恢复
入侵防范基于角色的权限控制、IP 白名单
恶意代码防范操作系统级防护、容器安全
资源控制连接数限制、内存限制、CPU 限制

等级保护技术措施 ​

身份鉴别 ​

用户名密码认证 ​

TiDB 支持强密码策略,包括密码复杂度要求、密码有效期、密码历史记录等:

sql
-- 设置密码策略
SET GLOBAL validate_password_length = 12;
SET GLOBAL validate_password_mixed_case_count = 2;
SET GLOBAL validate_password_number_count = 2;
SET GLOBAL validate_password_special_char_count = 2;

证书认证 ​

TiDB 支持使用 TLS 证书进行身份认证,配置步骤:

  1. 生成证书和密钥
  2. 配置 TiDB、TiKV、PD 使用证书
  3. 启用客户端证书认证

配置示例:

yaml
tidb_servers:
  - host: 10.0.0.1
    port: 4000
    status_port: 10080
    config:
      security:
        ssl-cert: /path/to/tidb-cert.pem
        ssl-key: /path/to/tidb-key.pem
        ssl-ca: /path/to/ca.pem
        require-secure-transport: true

LDAP 集成 ​

TiDB 支持与 LDAP 系统集成,实现统一身份认证:

sql
-- 创建 LDAP 认证用户
CREATE USER 'ldap_user'@'%' IDENTIFIED WITH ldap AS 'uid=ldap_user,ou=users,dc=example,dc=com';

访问控制 ​

基于角色的访问控制(RBAC) ​

TiDB 实现了完善的 RBAC 机制,支持:

  • 创建自定义角色
  • 角色权限继承
  • 细粒度权限控制
  • 动态权限调整

示例:

sql
-- 创建角色
CREATE ROLE read_only_role;

-- 授予权限
GRANT SELECT ON *.* TO read_only_role;

-- 授予角色给用户
GRANT read_only_role TO 'user'@'%';

最小权限原则 ​

遵循最小权限原则,只授予用户完成工作所需的最小权限:

sql
-- 只授予特定表的 SELECT 权限
GRANT SELECT ON db.table TO 'user'@'%';

-- 只授予特定数据库的读写权限
GRANT SELECT, INSERT, UPDATE, DELETE ON db.* TO 'user'@'%';

安全审计 ​

审计日志配置 ​

TiDB 支持详细的审计日志,包括用户登录、查询操作、权限变更等:

yaml
tidb_servers:
  - host: 10.0.0.1
    config:
      audit:
        enable: true
        log-file: /path/to/audit.log
        log-rotate: true
        format: json
        slow-threshold: 1000

审计日志内容 ​

审计日志包含以下关键信息:

  • 事件时间
  • 事件类型
  • 用户名和主机
  • 数据库和表
  • SQL 语句
  • 执行结果
  • 执行时间

TiDB Dashboard 审计功能 ​

TiDB Dashboard 提供了可视化的审计功能,可以:

  • 查看审计日志
  • 搜索和过滤审计事件
  • 生成审计报告
  • 设置审计告警

数据完整性与保密性 ​

数据完整性 ​

TiDB 使用多种机制确保数据完整性:

  • Raft 共识算法:确保数据在多个副本之间的一致性
  • 数据校验和:在存储和传输过程中验证数据完整性
  • 事务机制:确保数据修改的原子性、一致性、隔离性和持久性

数据加密 ​

TiDB 支持多层级的数据加密:

传输加密 ​

使用 TLS 加密客户端与 TiDB 之间、TiDB 组件之间的通信:

yaml
tidb_servers:
  - host: 10.0.0.1
    config:
      security:
        ssl-cert: /path/to/tidb-cert.pem
        ssl-key: /path/to/tidb-key.pem
        ssl-ca: /path/to/ca.pem

tikv_servers:
  - host: 10.0.0.2
    config:
      security:
        cert-path: /path/to/tikv-cert.pem
        key-path: /path/to/tikv-key.pem
        ca-path: /path/to/ca.pem
存储加密 ​

TiKV 支持透明数据加密(TDE),对存储在磁盘上的数据进行加密:

yaml
tikv_servers:
  - host: 10.0.0.2
    config:
      security:
        enable-encryption: true
        data-encryption-method: aes-256-ctr
        data-key-rotation-period: 7d

备份与恢复 ​

定期备份策略 ​

TiDB 提供了多种备份方式,满足等保要求:

全量备份 ​

使用 BR 工具进行全量备份:

bash
br backup full --pd "${PD_ADDR}" --storage "s3://backup-bucket/full" --ratelimit 128
增量备份 ​

使用 BR 工具进行增量备份:

bash
br backup incremental --pd "${PD_ADDR}" --storage "s3://backup-bucket/incr" --last-backup "s3://backup-bucket/full" --ratelimit 128
PITR(Point-in-Time Recovery) ​

支持基于时间点的恢复,精确到秒级别:

bash
br restore point --pd "${PD_ADDR}" --storage "s3://backup-bucket" --restore-ts "${RESTORE_TS}"

入侵防范 ​

IP 白名单 ​

配置 IP 白名单,限制允许访问 TiDB 集群的 IP 地址:

yaml
tidb_servers:
  - host: 10.0.0.1
    config:
      security:
        whitelist:
          ips: ["10.0.0.0/24", "192.168.1.0/24"]

防火墙配置 ​

在 TiDB 集群前端部署防火墙,限制访问端口:

# 只允许必要的端口访问
-A INPUT -p tcp -m tcp --dport 4000 -s 10.0.0.0/24 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 2379 -s 10.0.0.0/24 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 20160 -s 10.0.0.0/24 -j ACCEPT

入侵检测系统(IDS) ​

部署 IDS 系统,监控 TiDB 集群的网络流量,检测异常访问:

  • 配置 IDS 规则,检测 SQL 注入、暴力破解等攻击
  • 实时告警异常访问行为
  • 生成入侵检测报告

资源控制 ​

连接数限制 ​

限制单个用户和整个系统的连接数:

sql
-- 设置全局最大连接数
SET GLOBAL max_connections = 1000;

-- 设置单个用户最大连接数
CREATE USER 'user'@'%' WITH MAX_USER_CONNECTIONS 100;

资源限制 ​

限制单个查询的资源使用:

sql
-- 设置查询超时时间
SET GLOBAL tidb_query_timeout = 300;

-- 设置事务大小限制
SET GLOBAL tidb_txn_total_size_limit = 1073741824;

-- 设置内存使用限制
SET GLOBAL tidb_mem_quota_query = 1073741824;

等级保护管理措施 ​

安全管理制度 ​

建立安全管理制度 ​

  • 制定信息安全方针和策略
  • 建立安全管理制度体系
  • 定期更新安全管理制度
  • 确保制度的有效执行

安全管理机构 ​

  • 设立专门的安全管理机构
  • 明确安全管理职责
  • 配备专职安全管理人员
  • 建立安全管理工作流程

人员安全管理 ​

人员录用 ​

  • 进行背景调查
  • 签订保密协议
  • 明确安全责任

人员培训 ​

  • 定期进行安全意识培训
  • 进行安全技能培训
  • 开展等级保护专项培训
  • 培训效果评估

人员离职 ​

  • 办理离职手续
  • 回收访问权限
  • 归还设备和资料
  • 进行离职审计

系统建设管理 ​

系统定级与备案 ​

  • 确定系统安全保护等级
  • 编写定级报告
  • 向公安机关备案
  • 获得备案证明

安全方案设计 ​

  • 制定安全方案
  • 进行安全方案评审
  • 确保方案符合等级保护要求
  • 方案变更管理

产品采购与使用 ​

  • 采购符合等保要求的产品
  • 审核产品安全资质
  • 进行产品安全测试
  • 建立产品使用台账

工程实施 ​

  • 按照安全方案实施
  • 进行安全测试
  • 完成系统上线前评估
  • 建立系统配置基线

系统测评 ​

  • 委托第三方测评机构
  • 进行等级测评
  • 整改测评发现的问题
  • 获得测评报告

系统运维管理 ​

环境管理 ​

  • 机房环境管理
  • 设备物理安全
  • 环境监控
  • 电力保障

资产管理 ​

  • 建立资产台账
  • 资产分类管理
  • 资产变更管理
  • 资产报废管理

配置管理 ​

  • 建立配置基线
  • 配置变更管理
  • 配置审计
  • 配置备份

日志管理 ​

  • 集中日志管理
  • 日志存储安全
  • 日志备份与恢复
  • 日志审计与分析

安全事件管理 ​

  • 建立安全事件响应流程
  • 及时处置安全事件
  • 进行安全事件调查
  • 提交安全事件报告

应急预案管理 ​

  • 制定应急预案
  • 定期进行应急演练
  • 预案评估与更新
  • 应急资源保障

等级保护合规实施步骤 ​

1. 系统定级 ​

确定系统重要程度 ​

  • 评估系统的业务重要性
  • 评估系统处理数据的敏感程度
  • 评估系统遭到破坏后的影响

确定安全保护等级 ​

  • 根据评估结果确定等级
  • 编写《信息系统安全等级保护定级报告》
  • 组织专家评审
  • 获得主管部门批准

2. 系统备案 ​

准备备案材料 ​

  • 《信息系统安全等级保护定级报告》
  • 《信息系统安全等级保护备案表》
  • 系统拓扑结构图
  • 系统安全管理制度

向公安机关备案 ​

  • 向当地公安机关网安部门备案
  • 提交备案材料
  • 获得《信息系统安全等级保护备案证明》

3. 安全建设整改 ​

差距分析 ​

  • 对照等级保护要求进行差距分析
  • 识别安全隐患和不足
  • 制定整改计划

安全整改 ​

  • 按照整改计划实施
  • 完善技术措施
  • 建立管理体系
  • 进行内部测试

4. 等级测评 ​

选择测评机构 ​

  • 选择具有资质的第三方测评机构
  • 签订测评合同
  • 明确测评范围和要求

测评准备 ​

  • 准备测评环境
  • 提供测评所需资料
  • 配合测评机构工作

进行等级测评 ​

  • 测评机构进行现场测评
  • 进行技术测试和管理检查
  • 生成测评报告

整改测评问题 ​

  • 针对测评发现的问题进行整改
  • 提交整改报告
  • 重新测评(如有必要)

5. 监督检查 ​

接受公安机关检查 ​

  • 配合公安机关的监督检查
  • 提供相关资料和证明
  • 整改检查发现的问题

定期自查 ​

  • 定期进行安全自查
  • 及时发现和解决问题
  • 持续改进安全状况

TiDB 等级保护合规最佳实践 ​

技术层面最佳实践 ​

1. 实施多层次安全防护 ​

  • 网络层:防火墙、IDS/IPS、VPN
  • 系统层:操作系统加固、防病毒软件
  • 数据库层:TLS 加密、访问控制、审计日志
  • 应用层:SQL 注入防护、XSS 防护

2. 定期安全评估 ​

  • 定期进行漏洞扫描
  • 开展渗透测试
  • 进行安全配置检查
  • 评估安全措施有效性

3. 数据分类分级 ​

  • 对数据进行分类分级
  • 不同级别数据采用不同的保护措施
  • 重点保护敏感数据
  • 数据访问控制精细化

4. 建立安全监控体系 ​

  • 实时监控系统状态
  • 监控安全事件
  • 建立告警机制
  • 定期生成安全报告

管理层面最佳实践 ​

1. 建立完善的安全管理体系 ​

  • 制定安全管理制度
  • 明确安全管理职责
  • 建立安全管理流程
  • 确保制度有效执行

2. 加强人员安全管理 ​

  • 提高安全意识
  • 加强安全培训
  • 严格权限管理
  • 定期进行人员审计

3. 定期进行应急演练 ​

  • 制定应急预案
  • 定期演练
  • 评估演练效果
  • 更新应急预案

4. 持续改进安全状况 ​

  • 定期进行安全评审
  • 跟踪安全技术发展
  • 及时更新安全措施
  • 持续提升安全水平

常见问题(FAQ) ​

Q1: TiDB 支持哪些等级保护等级? ​

A1: TiDB 可以支持从第一级到第四级的等级保护要求。通过合理的配置和部署,TiDB 集群可以满足不同等级的安全保护要求。对于第五级保护要求,需要根据具体情况进行定制化设计和实施。

Q2: TiDB 如何满足等保要求中的审计日志留存时间? ​

A2: TiDB 支持将审计日志导出到外部系统(如 ELK Stack、Splunk 等),可以根据等保要求配置日志留存时间。默认情况下,TiDB 的审计日志会进行轮转和压缩,建议将日志导出到专门的日志管理系统,以满足长期留存需求。

Q3: TiDB 的备份数据如何保证安全性? ​

A3: TiDB 的备份数据可以通过以下方式保证安全:

  • 加密备份数据:使用 BR 工具的加密功能
  • 访问控制:限制备份数据的访问权限
  • 存储安全:将备份数据存储在安全的存储介质上
  • 定期测试:定期测试备份数据的可恢复性

Q4: 如何验证 TiDB 集群的等保合规性? ​

A4: 可以通过以下方式验证:

  • 进行内部安全评估
  • 委托第三方进行等级测评
  • 对照等保要求进行自查
  • 接受公安机关的监督检查

Q5: TiDB 支持哪些身份认证方式? ​

A5: TiDB 支持多种身份认证方式:

  • 用户名密码认证
  • TLS 证书认证
  • LDAP 集成
  • OAuth 2.0 集成(通过插件)

Q6: 如何配置 TiDB 的访问控制以满足等保要求? ​

A6: 可以通过以下方式配置:

  • 实现基于角色的访问控制(RBAC)
  • 遵循最小权限原则
  • 定期 review 权限配置
  • 启用细粒度权限控制
  • 配置 IP 白名单

Q7: TiDB 如何处理安全漏洞? ​

A7: TiDB 采用以下方式处理安全漏洞:

  • 建立漏洞响应机制
  • 及时修复发现的漏洞
  • 发布安全公告
  • 提供安全补丁
  • 定期进行安全审计

Q8: 等保合规对 TiDB 性能有影响吗? ​

A8: 等保合规措施可能会对 TiDB 性能产生一定影响,但影响通常在可接受范围内:

  • TLS 加密会增加网络延迟
  • 审计日志会增加 IO 开销
  • 访问控制会增加认证开销

可以通过合理的配置和优化,将性能影响降到最低。

Q9: 如何准备 TiDB 等保测评? ​

A9: 准备 TiDB 等保测评需要:

  • 了解等保测评要求
  • 完成系统定级和备案
  • 进行安全建设和整改
  • 准备测评所需资料
  • 配合测评机构工作

Q10: TiDB Cloud 是否符合等保要求? ​

A10: TiDB Cloud 提供了符合等保要求的服务,包括:

  • 物理安全保障
  • 网络安全防护
  • 数据加密保护
  • 访问控制机制
  • 审计日志功能
  • 备份恢复机制

TiDB Cloud 可以根据客户需求,提供相应的安全合规证明和支持。