51mee - AI智能招聘平台Logo
模拟面试题目大全招聘中心会员专区

在360这种安全公司,存储的数据可能包含用户隐私信息(如设备ID、扫描结果),如何保证数据在存储过程中的加密(传输、存储),以及访问控制(RBAC、细粒度控制),请举例说明具体实现。

360大数据开发工程师-分布式存储难度:中等

答案

1) 【一句话结论】在360等安全公司,用户隐私数据的安全需通过传输加密(TLS保障传输)、存储加密(AES+密钥管理系统确保静态安全)、访问控制(RBAC结合ABAC动态授权+数据脱敏)三重机制,并辅以密钥轮换、性能优化等工程措施,实现全生命周期安全与性能平衡。

2) 【原理/概念讲解】传输加密:数据在网络传输时用TLS(如TLS 1.3)加密,通过公私钥交换建立会话密钥,保障机密性、完整性和真实性,类比“数据在传输中穿了一层‘加密外套’,只有合法接收方能解开,中间人无法窃取内容”。存储加密:数据写入存储前用AES-256等对称加密算法加密,密钥由集中式密钥管理系统(KMS)管理,确保即使存储介质被盗,数据也无法直接读取,类比“数据存入‘加密锁柜’,钥匙由KMS统一保管,柜子本身无法破解”。访问控制:RBAC(基于角色的访问控制),先定义角色(如管理员、分析师),再分配权限(如管理员全操作,分析师仅读取),细粒度控制结合ABAC(基于属性的访问控制),根据用户属性(部门、角色)和资源属性(敏感级别、访问时间)动态生成权限,比如“仅允许财务部门分析师在工作日9-18点访问财务数据”。数据脱敏:对敏感信息(如设备ID)按规则处理,如设备ID脱敏为“设备ID-12345”,通过脱敏算法(如哈希+前缀保留)确保脱敏后仍可识别,同时满足隐私保护要求。

3) 【对比与适用场景】表格对比传输加密与存储加密:

类别传输加密(TLS)存储加密(AES)
定义保障数据在网络传输过程中的机密性、完整性和真实性保障数据在静态存储时的机密性
算法TLS协议(如TLS 1.3,基于ECDHE密钥交换,支持前向 secrecy)AES-128/256(对称加密,速度快,适合大规模数据)
密钥管理传输双方协商会话密钥,会话结束后密钥销毁密钥由KMS集中管理,存储密钥与数据分离,支持轮换
适用场景数据跨网络传输(如客户端-服务器、服务间通信)数据持久化存储(如数据库、对象存储)
注意点需考虑TLS握手开销(高并发下可能影响性能),需配置短连接或连接池需考虑加密解密性能(如AES-NI硬件加速),避免影响存储性能,需预加载密钥

4) 【示例】:假设存储用户设备ID和扫描结果,传输时用TLS加密,存储时用AES-256加密,密钥由KMS管理。密钥轮换流程(每90天):KMS生成新密钥,旧密钥标记为过期,旧数据用新密钥重新加密(可选,根据业务需求)。访问控制示例(ABAC规则):规则存储在规则引擎(如Drools),检查逻辑为“if (user.department='财务' and resource.sensitive_level='高' and time.between(9,18)) then allow”,伪代码(存储加密):

def encrypt_and_store(data, key_id,轮换周期=90):
    if is_key_expired(key_id,轮换周期):
        new_key = kms.generate_new_key()
        re_encrypt_old_data()
        key_id = new_key.id
    storage_key = kms.get_key(key_id)
    encrypted_data = aes_encrypt(data, storage_key)
    storage_client.put_object(bucket, key, encrypted_data)

设备ID脱敏示例:脱敏规则为“保留前3位+随机4位+后3位”,如设备ID“123456789”脱敏为“123-****-789”,伪代码:

def desensitize_device_id(device_id):
    return f"{device_id[:3]}-****-{device_id[-3:]}"

5) 【面试口播版答案】:在360这种安全公司,用户隐私数据的安全需从传输、存储、访问控制三方面协同保障。传输时采用TLS 1.3加密,确保数据在传输中不被窃听或篡改;存储时用AES-256加密,密钥由密钥管理系统(KMS)集中管理,即使存储介质泄露,数据也无法直接读取,且密钥每90天轮换一次,泄露时触发告警并销毁密钥。访问控制上,采用RBAC结合ABAC动态授权,比如定义“数据分析师”角色,仅允许其访问脱敏后的设备ID(如“设备ID-12345”),而“安全审计员”可访问全量数据,通过规则引擎根据用户部门和访问时间限制权限。同时,对设备ID等敏感信息进行脱敏处理,确保即使数据泄露,也无法直接识别用户身份。这样能全面保障用户隐私数据在存储和传输全生命周期安全,同时兼顾系统性能。

6) 【追问清单】:

  • 问:密钥轮换的具体策略是怎样的?比如周期和触发条件?
    回答要点:密钥每90天自动轮换一次,触发条件包括密钥使用次数达到阈值或手动触发,泄露时立即触发应急流程(告警、密钥销毁、数据恢复)。
  • 问:加密对系统性能有影响吗?如何优化?
    回答要点:加密解密有开销,通过硬件加速(如CPU的AES-NI指令)、缓存密钥池(预加载到内存)、分片加密(将大文件分片加密后存储)优化,同时选择高效算法(如AES-256比3DES更快)。
  • 问:细粒度访问控制中的ABAC规则如何具体实现?比如如何动态生成权限?
    回答要点:ABAC规则存储在规则引擎(如Drools),检查逻辑为“if (用户属性=财务部门 and 资源属性=高敏感数据 and 时间=工作日9-18点) then 允许”,通过规则匹配引擎实时检查权限。
  • 问:数据脱敏的具体规则是怎样的?比如设备ID如何脱敏?
    回答要点:设备ID脱敏为“保留前3位+随机4位+后3位”,如“123456789”→“123-****-789”,通过哈希+前缀保留算法,确保脱敏后仍可识别(如通过前缀匹配还原部分信息,但无法完全还原)。
  • 问:存储加密后,备份和恢复如何处理?
    回答要点:备份时同样加密,密钥与数据备份分离存储,恢复时解密,确保备份数据安全,且备份密钥与生产密钥分开管理。

7) 【常见坑/雷区】:

  • 坑1:只说加密不提密钥管理,面试官会追问密钥如何保护,若答不上可能扣分。
  • 坑2:访问控制只说RBAC,没提细粒度,显得方案不够全面,缺乏动态授权能力。
  • 坑3:混淆传输加密和存储加密,比如说传输用AES,存储用TLS,错误,因为传输加密用TLS,存储用对称加密。
  • 坑4:忽略性能影响,比如没考虑加密解密开销对系统性能的影响,显得方案不实际。
  • 坑5:没考虑数据脱敏,比如设备ID直接存储,未脱敏,违反隐私保护要求。
51mee.com致力于为招聘者提供最新、最全的招聘信息。AI智能解析岗位要求,聚合全网优质机会。
产品招聘中心面经会员专区简历解析Resume API
联系我们南京浅度求索科技有限公司admin@51mee.com
联系客服
51mee客服微信二维码 - 扫码添加客服获取帮助
© 2025 南京浅度求索科技有限公司. All rights reserved.
公安备案图标苏公网安备32010602012192号苏ICP备2025178433号-1