快手成立于 2011 年,致力于成为全球最痴迷于为客户创造价值的公司。公司在 2022 年 Q4 时,整体的日活用户达到了 3.66 亿,月活用户达到 6.4 亿。为了支撑快手如此大的规模体量,背后有很多数据相关的建设。
快手的数据平台旨在提升决策效率和业绩。该平台通过数据中台构建数据仓库和数据服务,包括分析决策、实验决策、AB 测试和核心资产服务等。目前,快手的数据量已达到万亿级,总数据量达到 EB 级。
本次分享聚焦于数据安全,将分享快手在大数据安全治理方面的实践。
一、背景介绍
1. 快手大数据安全平台定位
作为上市公司,快手对于数据安全非常关注。快手大数据安全平台的主要职责是为大数据全链路、全生命周期保驾护航,保障数据安全。这里的全链路包含几个层面:
- 在数仓建设阶段,数据开发人员可利用平台提供的开发能力进行数据仓库建设,如基于 ODS 创建数据集市和维表。其中数据平台有完善的数据权限申请管控机制,防止机密数据泄露。
- 在数据采集阶段,数据平台会识别敏感数据,进行数据加密、脱敏等操作,在数据入仓时进行安全管控。
- 在数据应用阶段,数据平台也采取了安全措施,在数据服务或应用上对用户鉴权,确保数据资产的安全。
2. 快手大数据安全面临的挑战
在构建数据平台过程中,面临多项挑战:
- 通用性:系统覆盖范围广泛,涉及 30+ 系统,需具备较强的通用性。
- 精细化管控:分为三个层面,首先是资源精细化,涵盖报表、数据集、指标、维度库表等异构资源;第二是操作类型精细化,包含读写操作;第三是账号精细化,包含个人账号和多租户体系账号,需做好权限管控和隔离。
- 高可用:认证和鉴权处于数据服务核心链路,一旦异常影响范围非常大,因此对安全要求极高。
- 扩展性:业务需求灵活多变,需满足多种业务线的权限管控要求,对扩展性提出了较高要求。
3. 快手大数据安全建设思路
为了应对数据平台建设面临的挑战,快手的建设思路围绕着几个方向展开:
- 首先是组织规范,快手成立了数据委员会、信息安全委员会等虚拟组织,制定了数据分类分级规范、数据权限规范、数据安全隐私打标规范等,还建立了专门的安全平台组,负责落地这些规范。
- 其次,建设原则兼顾安全与效率,制定了分级审批流程,并建立了协调机制。既要保证安全,又要提高效率。
- 最后,在安全原则方面,遵循相关法律法规,并遵循最小权限原则。
二、平台建设
1. 发展历程
大数据安全平台的发展历程可分为四个阶段:
- 原始阶段,数据平台主要是围绕报表平台建设,当时落地了初级的权限管理;权限模型基于 RBAC;安全能力处于 2A 级,包括鉴权、申请权限等,整体相对原始。
- 发展阶段,引入了 RPAC 权限模型,增强了权限控制,并扩展系统覆盖,涵盖了引擎类系统(如 Hive)。
- 精细化建设阶段,引入了行级权限(PRBC),实现了更精细的权限控制;加强租户数据隔离,保障数据安全;迭代安全能力,达到 4A 级别,完善了认证体系以及全链路审计。
- 数据合规建设阶段,聚焦隐私数据保护,引入加解密脱敏、安全隔离舱等能力,实现了 5A 级能力;系统覆盖扩展至 Druid、CK、Kafka、HDFS 等平台;持续推进数据合规建设,保障数据安全。
2. 建设思路
安全平台建设思路围绕以下三个方面展开:
- 全域覆盖,涵盖存储引擎、中台系统(如生产平台、分析平台)、分析决策平台等系统。
- 全能力建设,基于 5A 方法论,构建认证、授权、访问控制、资源保护、审计等全方位安全能力。
- 全生命周期管控,事前重点关注隐私数据合规性,通过数据安全打标、隐私数据打标等措施,加强数据加密和权限控制;事中关注认证鉴权稳定性;事后基于审计日志,构建安全态势感知能力,识别异常访问行为,制定风险策略,保障数据安全。
3. 系统架构
系统采用多层架构,包括:
- 应用层:面向用户,提供应用服务。
- 安全平台核心层:包含插件层、接口层、服务层和存储层。
- 依赖层:提供外部依赖,如租户账号体系和资源体系。
核心层包含以下模块:
- 插件层:满足不同引擎的特点,实现权限鉴权。
- 接口层:提供 HTTP 和 RPC 接口,面向中台应用和开发平台。
- 服务层:统一接入资源和账号,提供权限授予和管理服务。
- 存储层:自动缓存和加速数据,提高访问效率。
为保障系统高可用和高性能,该系统提供了完善的监控、告警、降级、容错预案、演练限流等保障措施。
4. 关键技术 – 认证体系
认证体系旨在验证用户的身份。在设计认证体系时,我们面临以下挑战:
- 轻量化:避免对现有系统造成较大影响。
- 本地化:与组织体系相结合。
- 易演化:满足未来国际化探索等新的业务需求。
我们借鉴业界成熟方案,自研了一套基于三方无密钥传输的认证体系。认证过程包含三次网络通信:客户端身份验证、获取有效期内访问令牌、后台服务令牌验证。认证体系包含以下关键点:
- 账号体系:包括个人账号和组账号。
- 令牌类型:包括常规访问令牌、代理访问令牌和降级令牌。
- 降级令牌机制:确保在密钥分发中心异常时,不影响当前访问。
5. 关键技术 – 权限模型
权限模型用于控制用户对资源的访问权限。业界常见的权限模型包括:
- 访问控制列表 (ACL):直接建立用户和资源之间的关系,每次访问时检查用户是否有权限。
- 基于角色的访问控制 (RBAC):引入角色的概念,角色与资源绑定,用户通过加入角色继承权限。
- 基于策略的访问控制 (PBAC):引入策略概念,根据主体的属性、环境或客体的属性综合判断访问权限。
- 基于属性的访问控制 (ABAC):与 PBAC 类似,但更强调属性在访问控制中的作用。
快手由于资源复杂、账号体系本地化等特点,结合 RBAC 和 PBAC 自研了基于策略的角色访问控制 (PRBAC) 模型。PRBAC 模型以策略为核心,涵盖以下四个方面:
- 主体:自定义用户组、租户账号。
- 资源:统一标识符 (UIN),由公司域、资源域和唯一 ID 组成。
- 动作:读、写等常见动作。
- 条件:行级权限的关键所在,根据 SQL 查询中的 WHERE 条件判断访问权限。
6. 关键技术 – 统一鉴权
鉴权体系可分为两类:
- 应用系统类:QPS 较低,延迟容忍度较高,与快手体系结合良好,可直接集成中间件框架和访问远程鉴权服务。
- 大数据引擎类:与大数据框架结合较少,基于开源引擎改造,提供鉴权插件,根据引擎特性选择本地或远程鉴权模式。
对于鉴权核心服务,包括:
- 自动化刷新器:增量或全量加载数据。
- 本地数据缓存:异常后快速恢复。
- 鉴权引擎:权限模型和策略规则计算,从而实现灵活的鉴权规则判断。
7. 关键技术 – 全链路审计日志
全链路审计旨在追踪数据泄露的源头,包括生产系统、应用系统、Hive 引擎、HDFS Server 等环节。审计基于上游数据源,实时收集资产操作日志、访问日志和下载日志。审计日志经过转换处理,例如展开 Hive 上下文,便于后续审计。审计日志用于清查和策略构建,如审批日志策略。全链路审计的特点包括:
- 全链路覆盖
- 融合血缘信息
- 审计格式统一
- 支持实时风险告警
三、治理实践
接下来将具体介绍快手数据治理实践中的重点问题和解决方案。
1. 数据分类分级
首先要介绍的是分类分级。分类分级旨在将数据按敏感性划分为不同级别,优先处理高敏感数据。
- 分类:原先融合在一起的数据现已区分开,隐私数据单独列出。通用数据和隐私数据均按公开级别分级,通用数据分为 C1 至 C4 级(公开级、内部级、机密级、原密级),隐私数据分为 P1 至 P4 级。
- 分级:分级后,不同敏感级别的数据将采取不同的保护措施。例如,C4 级和 P4 级数据将采用更严格的审批流程,涉及部门负责人和二级部门负责人审批。此外,这些数据在存储时将采取加密或脱敏等保护措施。
数据分类分级遵循以下原则:
- 升级原则:如果表中存在敏感信息,则整表按最高标准处理。
- 降级原则:数据脱敏或匿名化后,可降低其敏感级别。
数据分类分级流程分为三个阶段:
- 元数据采集:通过元数据中台自动采集外部平台的数据源、数据表变更信息,并存储至元数据中心和图库中。
- 基于元数据,采用以下三种方式进行自动化识别,其中,血缘识别:分析表血缘、任务血缘等,识别敏感字段并进行打标。算法检测:使用算法检测特定数据类型,如银行卡号。规则模板匹配:匹配内置的个人信息识别规则模板,如姓名、手机号、银行卡号等。
- 数据大盘分析,识别后,将数据推送给用户进行二次确认和打标。同时,提供事后资产大盘,帮助用户从个人、组织、部门等视角审查资产分布情况。
2. 数据引擎安全
数据引擎安全存在以下问题:
- 内部规范方面:早期缺乏账号体系和租户账号体系;资产归属不明确,安全责任不清。
- 安全能力方面:缺乏身份认证信息,缺少安全审计和溯源能力,权限管控缺失。
- 运营治理方面:无法定位真实访问用户,阻碍推动工作;多个团队使用多个平台,协作困难。
针对数据引擎安全问题,我们制定了以下解决方案:
- 规范方面:落实账号体系和认证体系。明确管理角色职责,包括租户管理员和安全接口人的审批权限。
- 工具方面:引入精细化权限管控,如行列级权限。优化鉴权模式,根据引擎层级进行分层认证。
- 治理方面:成立专门工作组,针对每个引擎推进治理工作。采用二八原则,重点关注头部平台。采取灵活的封禁策略,逐步推进平台改造。
3. 敏感数据保护
敏感数据保护治理面临以下挑战:
- 法律法规差异:不同国家对敏感数据的要求不尽相同,需要仔细研究相关法律法规。
- 集中管控:敏感数据应与通用数据分开管理,以便于安全管理和风险预警。
- 成本与效率:将敏感数据从通用数据中分离会涉及不同链路的改造,需要综合考虑成本和效率。
各改造的成本和效率存在差异,需要综合考量。改造涉及以下方面:
- 数据入仓:加强识别和自动脱敏。
- 数据加工:注重敏感数据审批。
在敏感数据保护解决方案中,为解决敏感数据保护挑战,我们重点引入了安全隔离仓的概念:
- 安全隔离仓:虚拟概念,用于隔离包含敏感信息的外部数据源。
- 加密和隔离:识别包含敏感信息的外部数据源后,自动加密并将其放置在安全隔离仓中。
此外,我们还采取了以下措施:
- 规范建设:研究不同国家法律法规,定义敏感信息类型、脱敏方式和要求。
- 工具建设:开发数据识别、文件字段加密和脱敏工具。
- 数据保护措施:实施字段级权限管控、严格审批流程等数据保护措施。
- 增量处理:定期扫描识别新出现的敏感信息,推动用户治理和落地。
通过上述措施,我们建立了全面的敏感数据保护体系,确保敏感数据得到有效保护。
四、成果和规划
1. 成果总结
自建设以来,快手大数据安全体系已在 30 余个系统中落地实施,资源规模达到千万级,日均申请量达到千级,覆盖了 C2 至 C4 及 P4 等审批流。应用范围涵盖多个层面,包括 Web 系统、认证鉴权等服务。整体运行稳定,未出现重大故障。有效保障了数据安全,提升了数据治理水平。
2. 未来规划
未来规划主要包括以下几个方面:
- 覆盖度提升:推动底层引擎使用方 100% 接入认证和鉴权;完善 HDFS 上层使用方的认证和鉴权接入。
- 态势感知增强:分析数据资产分布和敏感数据访问行为;检测数据异常行为。
- 新技术探索:探索增强型数据保护技术,如增强隐私数据保护、多方安全检测等;研究 data fabric 等新思路,实现数据可用但不可见。
- 智能化提升:利用大模型和机器学习算法提升数据分类分级和敏感数据识别准确性;探索智能化数据治理手段。
通过以上工作,保障敏感数据的保护,为企业数据安全保驾护航。
五、问答环节
Q1:关于令牌化数据入湖处理:如何处理已令牌化的实时数据库数据入湖?
A1:入湖时,识别令牌化数据的敏感性。如果数据仅用于建模,则无需额外处理。否则,根据数据脱敏规范进行脱敏处理,确保数据安全。
Q2:关于跨部门数据权限申请:快手如何划分数据权责归属?
A2:权限申请分为不同级别:
- 普通数据:权限负责人审批。
- 重要数据(如 C4):权限负责人、二级部门负责人审批。
- 非常重要数据:权限负责人、二级部门负责人、一级部门负责人审批。
申请方式包括个人名义和组名义,权限有效期过后可续签或升级。
Q3:关于大数据平台行级记录删除:快手如何支持隐私合规下的行级记录删除?
A3:全链路删除数据,包括业务库和下游数据。Hive 分区文件:不适合行级删除,成本高。建议采用 Hudi 引擎:支持行级增删改,性能较好。其删除的具体流程如下:
- 用户提出数据删除请求。
- 系统验证请求合法性。
- 启动全链路数据删除流程。
- 业务库删除对应数据。
- Hudi 引擎删除对应行级数据。
- 其他下游系统同步删除对应数据。
关键字:
声明:我公司网站部分信息和资讯来自于网络,若涉及版权相关问题请致电(63937922)或在线
提交留言告知,我们会第一时间屏蔽删除。