惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 三生石上(FineUI控件)
月光博客
月光博客
人人都是产品经理
人人都是产品经理
Google DeepMind News
Google DeepMind News
M
MIT News - Artificial intelligence
Vercel News
Vercel News
MyScale Blog
MyScale Blog
爱范儿
爱范儿
博客园 - 司徒正美
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
H
Help Net Security
Last Week in AI
Last Week in AI
阮一峰的网络日志
阮一峰的网络日志
酷 壳 – CoolShell
酷 壳 – CoolShell
L
LangChain Blog
罗磊的独立博客
Stack Overflow Blog
Stack Overflow Blog
宝玉的分享
宝玉的分享
博客园 - 聂微东
云风的 BLOG
云风的 BLOG
J
Java Code Geeks
博客园 - 叶小钗
D
Docker

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理,
应用层数据安全管控实践—权限模型篇
明明 · 2022-11-03 · via 人人都是产品经理

权限的本质是人与人之间的信任建立和打散,权限管控的是人与权限的关系,本文以应用层数据安全管控实践为例,探讨权限模型的迭代历程和应用实践,希望对你有所启发。

一、权限模型迭代概览

权限的本质其实是人与人之间信任关系的建立和打散,权限管控的核心是声明人和权限的关系。纵观行业发展,权限管控模型先后经历了以ACL模型为代表的1.0时代和以RBAC模型为代表的2.0时代,现在正式迈入以TRFAC模型为代表的3.0代。

图表1:基础权限模型示意图

【基础权限模型介绍】注释:

[1] ACL模型:即Access Control List,访问控制列表,用户与权限直接关联,直接维护列表中用户与资源的关系从而达到权限管控的目的。

[2] RBAC模型:即Role-Based Access Control,基于角色的访问控制,RBAC模型则是角色与权限进行关联,用户成为相应的角色而获得对应的权限。

[3] TRFAC模型:即target-resource-factor-act Control,基于“对象-资源-条件-行为”的权限控制,TRFAC模型描述了“XX对象(人/应用/组织/角色等)对 XX资源(页面/菜单/按钮/数据等)在 XX条件/因素(城市=北京等)下拥有 XX行为类型(增删改查等)的权限”。

二、权限模型在产品设计中的应用

图表2:基于权限模型设计的XX权限产品DEMO

三、TRFAC模型实践

数据产品天然存在人和资源之间的复杂关系,传统权限模型,无论是ACL模型还是RBAC模型,都不能很好地声明人和权限的关系。以下就以两个典型案例的解决方案,来阐述TRFAC模型的应用实践。

[ 案例1 ]

某业务团队需要实现报表权限控制(维度权限)需求。业务逻辑并不复杂,但是人和资源的权限关系比较细,传统ACL模型和RBAC模型均不能满足,因此,我们采用TRFAC模型来实现。

首先,鉴权主体是人,资源为报表;然后,行级别权限控制,可以理解为在正常资源关系中,新增了“维度值”附属条件,比如,当报表资源满足“城市=北京”的条件时,用户XX拥有对该报表的权限。所以我们实现路径如下:

图表3:行级别权限实现逻辑图

图表4:行级别权限鉴权流程示意图

思考:为什么不把报表中每一行数据都当作是资源注册到权限中心,这样行级别权限其实只是一次更细粒度的资源鉴权,为什么要把维度值当作是条件呢?

[ 案例2 ]

某某智能数仓平台(其实就是指标/维度生产维护服务平台),需要权限中心帮助实现功能和数据权限控制。系统简易架构图如下:

图表5:XX智能数仓平台系统架构图

该智能数仓平台兼具功能和数据权限管控需求,其中功能权限包括业务线/业务域/业务过程的管理和维护,修饰词的管理和维护,指标/维度的录入和管理维护;数据权限包括“指标+维度”的数据探查权限,底层库表的数据读取权限,具体组织形式如下图所示:

图表6:XX智能数仓平台功能权限管理体系设计

图表7:XX智能数仓平台角色管控体系

在业务逻辑上比较复杂,既有功能权限,又有数据权限,同时资源之间还有归属和继承关系,同时还有较为丰富的角色体系,这时候单纯用ACL或者RBAC模型都无法全部满足需求,因此我们采用TRFAC模型来实现:

图表8:角色-权限实现逻辑图

案例2小结

  • 业务线、业务域、业务过程在TRFAC模型看来都是“资源”:平台超管角色对业务线拥有管理维护权限,业务线管理员对业务域拥有管理维护权限,业务域管理员对业务过程拥有管理维护权限
  • 指标/维度的探查权限属于数据权限,既能以角色-权限的方式来管控,也能以人-资源-权限的方式管控
  • 资源需要依附对象,也就是触发鉴权动作的对象
  • 以系统为依附对象,即进入系统时对所有资源都触发一遍鉴权询问。优点是业务逻辑简单,不用设计复杂的权限关系;缺点是鉴权响应速度和性能较差
  • 以菜单/模块/页面为依附对象,即进入相应模块或者页面时触发鉴权询问。优点是无论是权限关系复杂度还是鉴权速度和性能都比较均衡;缺点是复杂或者细粒度业务需求满足不了
  • 以具体的触发按钮为依附对象,即点击XX按钮时触发鉴权询问。优点是自由度和灵活性高,复杂业务需求容易满足,且性能优异;缺点是管理维护成本高,不通用,迭代更新成本高

本文由 @明明 原创发布于人人都是产品经理,未经许可,禁止转载

题图来自 unsplash,基于 CC0 协议

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。