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

推荐订阅源

The GitHub Blog
The GitHub Blog
M
MIT News - Artificial intelligence
Engineering at Meta
Engineering at Meta
云风的 BLOG
云风的 BLOG
博客园 - 叶小钗
Jina AI
Jina AI
Last Week in AI
Last Week in AI
The Cloudflare Blog
博客园 - 【当耐特】
Stack Overflow Blog
Stack Overflow Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
WordPress大学
WordPress大学
博客园_首页
I
InfoQ
G
Google Developers Blog
Martin Fowler
Martin Fowler
Recent Announcements
Recent Announcements
H
Help Net Security
U
Unit 42
Blog — PlanetScale
Blog — PlanetScale
阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
IT之家
IT之家
Microsoft Security Blog
Microsoft Security Blog

人人都是产品经理

为什么你的产品找不到差异化?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迎来强劲对手 – 人人都是产品经理,
Vol.17 SaaS产品架构设计之多应用的授权设计
产品海豚湾 · 2026-01-09 · via 人人都是产品经理

多应用SaaS平台的授权设计面临用户归属、角色管理和权限分配的多重挑战。本文深入剖析了平台型产品(如钉钉)中用户身份唯一性识别、应用间角色隔离、权限点自主管理等核心问题,并提出了基于业务对象关系的最优解决方案。通过对比不同场景下的设计思路,为复杂SaaS系统的权限架构提供实用参考。

首先说一下,我自己做过多应用的产品开发,但是 SaaS 这块我们当时是单应用。

这里的多应用是指一个 SaaS 平台有多个相互独立的业务应用,甚至服务提供方都是不同的公司。比如,在钉钉里我们可以用很多第三方的 SaaS 软件。

在这种情况下,我们的权限设计就又多了一层,即应用。这个时候授权又该如何设计?

01 先梳理业务对象关系

这个观点前面也提到过,对于我们一时无法判定的产品设计,可以先梳理一下业务对象关系,然后再来看看怎么设计我们的产品。这里的关键其实是下面几个问题:用户(指租户侧员工)归属哪个应用?角色归属哪个应用?权限点归属哪个应用?

02 用户归属

显然,对于像钉钉这种平台型的 SaaS 产品,用户实际上是属于整个平台的,也就是用户信息是在平台侧。租户那边添加用户为员工实际上是给用户开通了该租户的数据权限。那么,如果用户属于我们自己 SaaS 租户业务系统的主应用(比如员工账号是租户业务系统添加的),这种情况下怎么操作呢?

解决问题的关键其实是身份唯一性的识别。

对于用户属于平台,因为本身用户具备了唯一标识,所以这种方式多应用的授权会更简单一些。

对于我们说的这种情况,可以有以下几种确定用户唯一性标识的方式:

手机号:大部分情况下可以解决唯一性的问题,但是如果员工手机号变更,可能会在主应用中更改,但是无法同步到其他应用(应用服务商不同,意味着数据是隔离的)。

这个时候,就需要平台开放员工同步信息功能,也就是其他应用可以经过租户管理员操作同步最新的员工信息。这种好处是,假设其他应用有自己独立的入口(比如钉钉的 Teambition、纷享销客等等),那么他可以凭借手机号登录,也能继续使用。

员工 id:相比手机号,员工 id 在主应用中不会变更,因此是绝对的唯一。

当然,同样也会存在需要同步的情况,比如员工离职、变更部门等等。这种缺点是,员工 id 依赖主应用,意味着只能通过主应用进入到其他应用。

实际上面,钉钉里的第三方应用也有同步员工信息的功能,如果管理员发现应用内的员工信息和实际不符时,是需要手动同步的。从设计上来说,显然将用户归属到平台会是更好的方式,因为这应用间的隔离程度更高。这种情况下,平台自身就需要搭建一个维护员工组织关系的模块 —— 比如钉钉的通讯录。

03 角色归属

显然,我们没法将角色统一管理,那样意味着平台要获取所有第三方应用的权限点。

一方面是这样同步会非常复杂,另一方面是意味着第三方得按照平台的规则设计开发,保证权限点的数据格式相同。

这两点都是不合理的,但是实际上我确实见过一家 SaaS平台是这么做的。他们实际上不仅提供了平台,还提供了一套技术开发框架,应用必须要按照他们的框架进行开发才能入驻到该平台。

当然,这个平台属于内部 SaaS,这种方式可以统一公司的技术栈,所以问题倒也不大。

但是,从产品和开发的角度来说,真的非常不友好。

举个典型的例子,当他们的平台框架升级时,其他应用需要同步升级,这显然是不合理的。

所以,角色我们最好是有应用自己维护,给予应用更多的灵活处置能力,甚至的小应用干脆角色管理都可以没有。

这种情况下,应用既可以入驻到平台,也可以独立自己的产品,这样才能够吸引更多的第三方应用加入到你的平台。平台不要采取捆绑的方式来绑定第三方服务商,而应该保持足够的开放性才对第三方更有吸引力。

04 权限点归属

这个毫无疑问是归应用所有的,每个应用可以按照自己的方式去定义权限点,并且通过角色来管控账号的权限。

05 业务对象关系

经过上面的论述,我们就能够得到一个最优的业务对象关系了,如下图所示。

用户归属于平台,用户不一定是某个租户的员工(如果有 toC 业务);租户归属于平台,可以订阅多个应用。用户可以使用租户下的应用,前提是租户给员工开通应用权限,这样员工对应的用户就能够使用该应用了。

员工自然属于租户,当租户添加员工时,实际上是将用户和员工进行了关联。应用维护自身的角色和权限点,并管理应用内的授权。

租户管理员可以通过应用提供的权限管理模块来控制员工的使用权限。用户能不能用某个应用取决于两点,一是他是租户的某个员工,二是他被租户授权可以使用该应用。

06 产品设计

在上述的业务对象关系下,实际上租户侧的应用只需要做一件额外的事情,那就是同步租户的员工信息(可能包括组织架构信息),其他都不需要做任何修改。

这样的应用和我们自己基于自己的 SaaS 平台开发的租户侧业务系统几乎没什么差别。

对于平台侧而言,则是需要增加用户管理模块,这个模块中还需要维护用户与租户员工的关系。同时,还需要维护租户相关的应用信息,以便为租户的员工提供相应的应用入口。

具体这块的参考案例,建议是大家参考钉钉的设计。

07 纯内部应用设计

还有一种特殊情况,就是 SaaS 平台并不为第三方提供入驻,但是内部有产品矩阵。租户可以选择不同的产品订阅。

这种情况下,我们是可以简化设计的。也就是在授权管理时,增加应用切换功能,租户可以分应用进行授权,如下图所示。

这种情况下,我们可以对已经开通了应用权限的员工开放不同的应用入口。

本文由人人都是产品经理作者【产品海豚湾】,微信公众号:【产品海豚湾】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载。

题图来自Unsplash,基于 CC0 协议。