12 KiB
12 KiB
苏州教育E卡通数据安全运维操作手册
前言
本手册基于苏州教育E卡通平台的实际运维需求,旨在建立一套实用、可操作的数据安全管控体系。聚焦于解决实际工作中真正存在的风险问题。
本手册适用于所有参与平台运维、管理的人员,包括但不限于系统管理员、客服人员、学校管理人员等。
一、风险分级体系
1.1 三级操作分类
等保三级依据:根据GB/T 22239-2019要求,对不同风险的操作采取相应控制措施。
🔴 关键操作 (CRITICAL)
识别标准:
- 系统核心配置修改
- 用户权限分配
- 审计规则修改
- 批量数据处理(≥50条)
- 系统运维重大调整 管控要求:
- 主管审批:事前纸质(电子档)审批流程
- 双人确认:一人操作,一人监督
- 双因素认证:密码+动态码,堡垒机或摄像记录
- 操作记录:详细日志记录
- 自动备份:执行前自动备份
🟡 重要操作 (IMPORTANT)
识别标准:
- 特殊敏感数据修改(身份证、家庭住址、监护人联系方式)
- 新生录入、注册报到等
- 账号创建和权限分配(非管理员,如班主任等)
管控要求:
- 主管审批:事后审核
- 双因素认证:重要操作时启用
- 操作确认:关键步骤二次确认
- 操作日志:完整记录操作链路
🟢 一般操作 (NORMAL)
识别标准:
- 学生信息查询
- 系统状态查看
- 非敏感信息修改
- 补换卡订单处理
- 报表生成和统计
管控要求:
- 基本认证:用户名密码认证
- 操作记录:基础日志记录
- 访问控制:基于角色的权限控制
- 会话管理:超时自动退出
二、简化的角色体系
2.1 核心角色定义
| 角色 | 主要职责 | 可操作范围 | 禁止操作 |
|---|---|---|---|
| 家长用户 | 查看自己孩子信息 | ✓ 查看基本信息 ✓ 修改联系方式 ✓ 查看卡状态 |
✗ 查看其他学生 ✗ 修改关键信息 ✗ 批量操作 |
| 学校教师 | 管理本校学生 | ✓ 新生录入 ✓ 修改非关键信息 ✓ 本校数据查询 |
✗ 跨校查询 ✗ 删除记录 ✗ 批量导出 |
| 客服人员 | 处理补卡业务 | ✓ 学生信息查询(补卡用) ✓ 处理补换卡订单 ✓ 查询卡状态 |
✗ 查看敏感信息 ✗ 修改数据 ✗ 批量导出 |
| 系统(区域)管理员 | 处理学校业务 | ✓ 信息修改 ✓ 敏感信息 ✓ 执行任务 ✓ 用户账号管理 |
✗ 参与业务审批 ✗ 单独操作 |
| 审核管理员 | 业务审核 | ✓ 业务审批 ✓ 信息查询 ✓ |
✗ 修改数据 ✗ 用户账号管理✗ 单独操作 |
| 安全审计管理员 | 安全审计 | ✓ 查看所有日志 ✓ 生成安全报告 ✓ 设置监控规则 ✓ 调查安全事件 |
✗ 修改业务数据 ✗ 执行业务操作 ✗ 查看敏感信息 |
| 系统运维人员 | 系统运维 | ✓ 服务器维护 ✓ 数据库备份 ✓ 执行审批脚本 |
✗ 查看业务数据 ✗ 参与业务审批 ✗ 单独操作 |
2.2 权限分离原则
核心原则:
- 操作与审核分离:操作人不能同时是审核人
- 技术与业务分离:系统管理员不接触业务数据
- 监督与执行分离:安全管理员只监督不执行
简化的权限矩阵:
| 操作类型 | 学校教师 | 客服人员 | 系统管理员 | 安全管理员 |
|---|---|---|---|---|
| 数据查询 | ✅(本校) | ✅(授权) | ❌ | ✅(审计) |
| 数据修改 | ✅(非关键) | ❌ | ✅(脚本) | ❌ |
| 关键操作 | ❌ | ❌ | ✅(双人) | ❌ |
| 系统运维 | ❌ | ❌ | ✅ | ❌ |
| 安全审计 | ❌ | ❌ | ❌ | ✅ |
三、统一的操作流程
3.1 标准三阶段流程
所有操作统一采用三阶段流程:
申请阶段 → 审批阶段 → 执行阶段
第一阶段:申请
- 操作人提交申请
- 系统自动检查权限
- 生成操作编号
第二阶段:审批
- 关键操作:需要双人确认
- 重要操作:需要主管审批
- 一般操作:自动审批
第三阶段:执行
- 验证审批状态
- 执行操作
- 记录结果
3.2 操作流程简化图
┌─────────┐ ┌─────────┐ ┌─────────┐
│ 申请 │───→│ 审批 │───→│ 执行 │
└─────────┘ └─────────┘ └─────────┘
│ │ │
│ │ │
自动检查 分级审批 结果记录
权限验证 双人确认 日志保存
四、简化的技术控制
4.1 访问控制
表级权限控制(避免过度复杂的字段级控制):
-- 简化的角色权限表
CREATE TABLE role_permissions (
role_id VARCHAR(20),
table_name VARCHAR(50),
can_select BOOLEAN DEFAULT FALSE,
can_insert BOOLEAN DEFAULT FALSE,
can_update BOOLEAN DEFAULT FALSE,
can_delete BOOLEAN DEFAULT FALSE
);
-- 学校教师权限示例
INSERT INTO role_permissions VALUES
('school_teacher', 'students', TRUE, TRUE, TRUE, FALSE), -- 可以增删改查但不能删除
('school_teacher', 'card_status', TRUE, FALSE, TRUE, FALSE);
简单的数据脱敏:
-- 敏感信息视图
CREATE VIEW student_public_view AS
SELECT
student_id,
name,
-- 简单脱敏:不根据角色复杂判断
CONCAT(SUBSTRING(id_card, 1, 6), '****', SUBSTRING(id_card, 15, 4)) as id_card_masked,
school_name,
card_status
FROM students;
4.2 身份鉴别
简化的双因素认证:
// 不需要复杂的多种组合,就用最简单的
enum auth_method {
PASSWORD_ONLY, // 一般操作
PASSWORD_SMS, // 重要操作
PASSWORD_DUPLICATE // 关键操作(双人)
};
会话管理:
- 关键操作:15分钟超时
- 重要操作:30分钟超时
- 一般操作:60分钟超时
4.3 审计日志
简化的审计结构:
-- 简单的审计表,不要复杂的数字签名
CREATE TABLE audit_logs (
id BIGSERIAL PRIMARY KEY,
user_id VARCHAR(50) NOT NULL,
operation_type VARCHAR(50) NOT NULL,
table_name VARCHAR(50),
operation_time TIMESTAMP DEFAULT NOW(),
client_ip INET,
result VARCHAR(20), -- SUCCESS/FAILURE
details TEXT, -- 简单的JSON描述
prev_hash VARCHAR(64) -- 简单的哈希链保护
);
完整性保护:
- 使用简单的哈希链而不是复杂的数字签名
- 每条记录包含前一条记录的哈希值
- 定期验证链的完整性
五、监控和告警
5.1 简单的告警规则
告警规则(不要搞得太复杂):
- 单个账号1小时内操作超过50次
- 非工作时间操作(22:00-7:00)
- 连续5次登录失败
- 未审批就执行的操作
告警处理:
- 系统自动发送告警
- 安全管理员15分钟内响应
- 记录处理结果
5.2 监控指标
核心监控指标:
- 登录成功率
- 操作执行成功率
- 异常操作数量
- 系统响应时间
六、数据保护和备份
6.1 数据完整性
简单的完整性检查:
-- 每日自动检查
CREATE OR REPLACE FUNCTION daily_check() RETURNS void AS $$
BEGIN
-- 检查重复数据
INSERT INTO integrity_issues
SELECT 'duplicate_id_card', COUNT(*)
FROM students
WHERE id_card IN (
SELECT id_card FROM students
GROUP BY id_card
HAVING COUNT(*) > 1
);
-- 检查数据格式
INSERT INTO integrity_issues
SELECT 'invalid_phone', COUNT(*)
FROM students
WHERE phone NOT LIKE '1________';
END;
$$ LANGUAGE plpgsql;
6.2 备份策略
简单的备份方案:
- 实时备份:关键数据实时同步
- 每日备份:全量数据备份
- 异地备份:备份到异地存储
- 保留期限:在线30天,离线1年
七、应急响应
7.1 简化的应急流程
三级响应:
| 事件级别 | 响应时间 | 处理方式 |
|---|---|---|
| 一般事件 | 2小时内 | 在线处理 |
| 重要事件 | 30分钟内 | 紧急处理 |
| 重大事件 | 15分钟内 | 立即处理 |
7.2 应急联系人
| 角色 | 联系人 | 电话 |
|---|---|---|
| 应急总指挥 | [姓名] | [电话] |
| 技术负责人 | [姓名] | [电话] |
| 安全负责人 | [姓名] | [电话] |
八、培训和考核
8.1 培训内容
新员工培训(4小时):
- 手册内容和操作规范(2小时)
- 系统操作演示(1小时)
- 应急流程说明(1小时)
年度复训(2小时):
- 安全事件案例分析(1小时)
- 操作规范更新(1小时)
8.2 考核要求
- 每年1次操作规范考试
- 每半年1次应急演练
- 不合格人员重新培训
九、操作检查表
9.1 关键操作检查表
申请阶段:
- 操作目的明确
- 影响范围确认
- 申请人权限验证
审批阶段:
- 必要性评估
- 风险评估
- 备份方案确认
执行阶段:
- 双人确认(关键操作)
- 操作步骤按计划执行
- 结果验证
完成阶段:
- 操作记录保存
- 相关人员通知
- 异常情况处理
9.2 系统管理员操作检查表
操作前:
- 维护时间窗口确认
- 影响范围评估
- 备份完成确认
- 回滚方案准备
操作中:
- 按计划执行
- 每步确认结果
- 异常情况记录
操作后:
- 系统功能验证
- 性能检查
- 操作记录归档
十、附录
附录A:角色申请表
申请编号: [自动生成]
申请人: [姓名]
所属部门: [部门]
申请角色: [角色名称]
申请原因: [详细说明]
申请权限:
□ 查询权限
□ 修改权限
□ 删除权限
□ 系统管理权限
申请人签字: _________ 日期: _________
部门主管审批: _________ 日期: _________
安全管理员审核: _________ 日期: _________
附录B:操作申请单
申请单编号: [自动生成]
申请时间: YYYY-MM-DD HH:MM
申请人: [姓名]
操作类型: [关键/重要/一般]
操作描述: [详细说明]
影响范围: [影响的人数/系统范围]
操作步骤: [简要步骤]
申请人签字: _________ 日期: _________
审批人签字: _________ 日期: _________
执行确认: _________ 日期: _________
附录C:应急响应记录表
事件编号: [自动生成]
发生时间: YYYY-MM-DD HH:MM
事件类型: [一般/重要/重大]
事件描述: [简要描述]
响应时间: ____分钟
处理过程: [简要记录]
处理结果: [成功/失败]
处理人签字: _________ 日期: _________
确认人签字: _________ 日期: _________
结语
简单就是美
本手册采用简化的设计,在满足等保三级要求的同时,最大限度地降低系统复杂度和操作难度。
核心原则:
- 消除特殊情况
- 统一操作流程
- 减少概念数量
- 保持实用主义
通过这种方式,我们既能满足合规要求,又能确保系统的可维护性和操作的便利性。
本手册自发布之日起执行,由数据安全管理领导小组负责解释和修订。