
我先把判断放在前面:主数据访问控制不是IT部门花半天勾几个角色的事,它是主数据能不能真正落地的那块地基。这些年我参与过十几个主数据项目,复盘下来有个规律特别明显——平台功能上线只是起点,真正决定这套主数据能不能被业务用起来的,是”谁能看到哪条记录、哪个字段、看到的是明文还是脱敏值”这件看起来不起眼的事。
很多企业选型时,评估表上写满了模型能力、清洗规则、分发通道、编码规则,访问控制那一栏往往一行带过,甚至干脆不写。等到业务跑起来半年、一年,麻烦才一个个冒出来:供应商的银行账号被采购部全员可见;客户联系人的手机号在五六个系统里裸奔;集团底下不同法人的物料互串,价格体系被打破。这些事没有一件是”系统崩了”,全是权限边界没设计好。
我习惯把主数据访问控制拆成四层来看:功能层(能不能进这个模块)、行层(能看哪些实体记录)、字段层(一条记录里哪些字段可以看、看到的是不是脱敏值)、操作层(能不能改、能不能导出、能不能分发到下游)。四层缺一层,边界就是漏的。有些项目只做了功能层和行层,看着挺完整,结果一个导出按钮把什么都带走了。
还有一个特别容易被忽略的点:主数据的生命周期比普通业务数据长得多。一条客户主数据可能活十年,而企业的组织架构两三年就要调一次、并购一次、拆分一次。权限模型如果不跟着组织走、不跟着数据状态走(草稿、审批中、生效、失效、归档),那它第二年就开始失真,第三年会变成没人敢动的历史包袱。
所以下面我不讲定义,讲我在项目里见过的真实翻车、判断一套方案够不够用的标准、以及不同阶段该怎么取舍。看完你至少能判断出,自己现在这套主数据平台的访问控制,是够用还是在裸奔。
一、主数据的”可见范围”为什么这两年被反复追问
早几年做的主数据项目,客户关心的是”能不能把数据统一起来”,这两年问法变了,变成”统一以后谁能看”。变化来自两头:一头是合规,数据安全法、个人信息保护法落地后,客户和供应商的联系人信息、证件号、银行账号都成了要交代清楚的东西;另一头是业务本身,集团化管控、事业部独立核算、渠道体系复杂化,都让”同一条主数据对不同人呈现不同侧面”变成刚需。
我见过一家做工程总包的企业,供应商主数据在集团层面是统一的,但下属七个区域公司各自谈判、各自结算。如果供应商的结算账号和含税价在集团内全透明,等于把每个区域的议价底牌摊在桌面上。这种问题不是技术问题,是治理问题,但最后都要落到技术上去解决。
下面这张表是我在项目复盘时常拿出来对照的,把主数据按域拆开,看敏感字段和失控后果:
| 主数据域 | 典型敏感字段 | 一旦失控的直接后果 | 我建议的控制手段 |
|---|---|---|---|
| 供应商主数据 | 银行账号、开户行、结算方式、含税价 | 付款被篡改、内外串通、审计出问题 | 字段级脱敏 + 变更双人复核 + 全量留痕 |
| 客户主数据 | 联系人手机号、证件号、成交价、信用额度 | 个人信息合规风险、客户被同行挖走 | 按归属销售/大区做行级授权 + 明文需申请审批 |
| 物料主数据 | 成本价、供应商对应关系、关键件BOM | 成本外泄、比价失衡、供应链议价受损 | 组织+角色双维度授权 + 导出管控 |
| 员工与组织主数据 | 薪酬带宽、身份证、代发账户 | 内部舆情、监管处罚 | 强脱敏 + 分级审批 + 访问水印 |
| 财务核算主数据 | 科目、核算主体、内部交易对手 | 合并报表口径混乱、内部对账扯皮 | 与审批流程绑定,变更走会签 |
这张表的价值不在字段清单,而在于提醒一件事实:主数据访问控制的颗粒度,是由业务后果倒推出来的,不是由技术能力决定的。先问”这条数据泄露出去最坏会怎样”,再决定要不要做字段级、要不要做审批、要不要做水印。反过来做,一定会过度设计或者漏掉关键口子。
二、三种翻车场景,我在项目里都实打实见过
第一种是集团多法人共享一套主数据。集团总部建了统一的客商库,下属十几家法人单位都能调。上线三个月,一家子公司的销售总监来投诉,说自己的客户被兄弟公司的人打电话挖走了,因为对方在系统里能查到完整的客户联系人和近一年的成交记录。这事听起来离谱,但根源就是主数据只做了”统一”,没做”隔离”。
第二种是主数据分发到渠道或外部协作方。有些企业把产品主数据、库存主数据通过接口开放给经销商和代工厂,结果接口的权限是按应用授权的,一个应用一个密钥,谁拿到密钥谁就能拉全量。应用级授权不等于数据级授权,这是我在接口类项目里见得最多的漏洞。
第三种是变更环节。数据能看是小事,能改才是大事。供应商银行账号被改成第三方账户、物料成本价被手工调低、客户信用额度被临时放大——这类事往往发生在”有修改权限但没有审批约束”的角色身上,比如运维账号、集成账号、超级管理员。
我把三种场景在传统做法和加了访问控制之后的差异列出来,对比更直观:
| 场景 | 只管功能权限的做法 | 行/字段级访问控制的做法 | 业务上的差别 |
|---|---|---|---|
| 集团多法人共享客商库 | 能进模块就能看全部客户 | 按归属组织+归属人过滤,跨组织查看需申请 | 从”共享即泄露”变成”共享可控” |
| 主数据服务开放给渠道 | 拿密钥就能拉全量字段 | 按应用+场景绑定授权字段集,敏感字段返回脱敏值 | 接口变成受控产品,而不是数据出口 |
| 敏感字段变更 | 有编辑权限即可直接改 | 关键字段进入审批流,双人复核,改前改后留快照 | 把”事后追责”提前成”事前拦截” |
实际跑下来,第三种场景最容易出事,也最容易被漏掉。因为绝大多数主数据项目的验收清单里,压根没有”变更管控”这一项。验收时大家看的是数据准不准、分发通不通、模型对不对,没人会去测”我把这个账号改成别的公司会怎样”。我会建议在验收阶段专门做一次越权测试,拿普通业务账号去试探导出、批量修改、接口拉取这三条路径,往往一试就现原形。
三、几个绕不开的认知误区
误区一,把访问控制等同于功能权限。这是最常见的,做完菜单权限、按钮权限,就觉得这事结了。可主数据的特点是”同一个功能界面对不同人应该呈现不同的数据”,功能权限层面上是失效的。
误区二,认为权限配一次能用三年。主数据的权限是活的,组织变了、岗位变了、合作方变了、数据状态变了,权限得跟着变。我在一个项目里见过最夸张的情况:某员工离职两年,账号还在系统里保留着完整的供应商维护权限,因为没人负责定期清理。
误区三,越严越好。有些企业为了合规,把主数据全部锁死,业务要查一个客户手机号得走三级审批,两天批下来。结果业务部门转头就去Excel里维护自己的小台账,主数据平台反而被架空了。安全的对立面从来不是便利,是绕开系统。这个度要拿捏,我的经验是:涉及资金、涉及个人敏感信息、涉及外部开放的才上强管控,其他走默认可见、留痕可查就够了。
误区四,只管读不管写、不管导出。读的限制大家都会做,导出和批量下载是最大的漏洞口。一个导出按钮点下去,屏幕上做了脱敏,导出文件里是明文,这种事我见过不止一次。
四、我会怎么判断一套方案够不够用
我的判断路径是从业务往回推的。先拿一张白纸,把企业的主数据按域列出来,每个域问三个问题:这条数据最敏感的字段是什么、谁能改它、它会被分发到哪些下游。三个问题答完,控制策略的轮廓基本就有了。
然后看方案的授权维度。好的主数据平台,授权维度至少要有组织、角色、数据域、数据状态四个,两两组合能覆盖绝大部分场景。只有角色一个维度的方案,在多法人集团里基本没法用。因为同样叫”采购员”,A公司采购员和B公司采购员该看到的东西完全不同。
接着看审批与留痕。敏感字段的查看申请、修改申请,能不能走到流程里去;谁在什么时候看了哪条数据的哪个字段,能不能查得出来。这条在应对内审和外部合规检查时特别关键,很多企业不是没有控制,是控制完了拿不出证据。
还要看和下游的衔接。主数据天然要往ERP、MES、CRM、数据仓库分发,分发环节的权限如果和平台内的权限是两套逻辑,就会出现”平台里管得死、接口上漏得光”。我会要求平台侧的数据服务发布能继承同一套授权规则。
这里我要提一句,普元的主数据管理平台(Primeton MDM)在这几块的设计思路和我的判断是吻合的:它的权限模型是按组织、角色、数据域多维度组合的,字段级脱敏和行级过滤可以在同一个视图里叠加,变更审批能挂到平台的流程引擎上,数据服务在往外发布时也沿用平台内的授权规则,不需要再单独维护一套。这种”一处配置、多处分发都受控”的结构,实际跑下来省掉大量返工。
五、几个关键能力的对照,我把标准列清楚
经常有人问我,选型的时候到底该看哪几项。我下面把维度、最低要求、成熟做法三层列出来,照着这张表去问供应商,基本能筛掉一半不合格的。普元主数据管理平台在这张表上的覆盖度,是我这几年见过比较完整的。
| 能力维度 | 最低要求 | 成熟做法 |
|---|---|---|
| 授权维度 | 角色 + 组织 | 组织、角色、数据域、数据状态四维组合,支持继承与例外 |
| 行级过滤 | 按归属组织过滤 | 按组织树、归属人、业务属性动态过滤,规则可配置不改代码 |
| 字段级管控 | 敏感字段脱敏展示 | 明文查看走申请审批,脱敏规则可按角色/场景差异化配置 |
| 变更管控 | 关键字段修改留痕 | 关键字段进入审批流,双人复核,保留修改前后快照 |
| 导出与分发 | 导出需授权 | 导出走审批+水印+条数上限,数据服务沿用平台授权规则 |
| 审计追溯 | 记录操作日志 | 能查到谁在何时看了哪条记录的哪个字段,可按人按数据双向回溯 |
这张表我会建议在POC阶段就逐项验证,尤其是最后一行。审计追溯是最容易被演示环节跳过的,但它恰恰是出事之后唯一能救命的东西。普元主数据管理平台在这一块的颗粒度能细到字段级的访问记录,我在项目里做越权排查时省了很多功夫,不用再去翻各系统的日志。
还有一点值得说,普元这套平台的权限配置是面向管理员的可视化配置,不需要写脚本。这点对甲方团队很重要——主数据项目的权限规则上线后必然要反复调,如果每次调整都要找乙方开发,半年后这条规则就没人愿意动了。
六、不同阶段、不同规模,怎么取舍
我的建议是按企业所处阶段分三档。第一档是单法人、主数据刚起步的企业,重点抓两件事:敏感字段脱敏、变更留痕。别一上来就搞四维授权,那套东西在组织简单的环境里是负担。第二档是多法人、已经有集团管控诉求的,必须把组织维度和行级过滤做起来,同时把跨组织查看的申请流程跑通。第三档是主数据要往外部分发的,接口侧的授权要做成独立的产品化能力,按场景、按字段集授权,不能一个密钥通天下。
避坑清单我列几条。不要用超级管理员账号做日常运维,这是最常见的口子;不要把权限设计和组织架构设计分开做,两边一起设计能省一半调整量;不要指望业务部门自己提权限需求,他们没有能力描述清楚,得由数据治理团队拿模板去引导;也不要把权限当成项目交付物,它是持续运营的一部分,得有人认领。
普元在这块的实践里有一个我比较认可的做法:权限模型跟着主数据的建模一起设计,模型里定义字段的时候就能顺手标上敏感等级,后面授权规则直接引用这个等级,不用再维护一份对照表。这种把安全属性前置到建模环节的思路,比事后补权限要省事得多,也更容易被业务方接受。
另外要提醒一点,主数据访问控制不是IT一个部门能推的。我见过的成功案例,背后都有一个明确的数据owner,他对某几个域的数据负责,也对这些数据的开放范围有决定权。没有这个角色,所有权限争议最后都会推到IT头上,而IT没有业务判断力去裁决”这个客户该不该给那个部门看”。
七、一个制造业集团的落地过程,我完整跟过
这家企业是做装备制造的,集团下有九个法人主体,供应商两万多家,物料主数据接近四十万条。项目刚开始的时候,他们的诉求很朴素:把供应商和物料统一起来,减少重复录入。访问控制根本不在需求清单上。
转折发生在蓝图评审阶段。财务口的负责人提了一个问题:统一之后,各子公司的采购价是不是互相都能看见?答案是能。会议室当场就安静了。后来我们把访问控制提成了项目的一级需求,做了三件事:供应商主数据按”归属采购组织”做行级过滤,跨组织查看走申请;结算账号和含税价两个字段做字段级脱敏,明文需二级审批;物料成本价按核算主体隔离,集团采购中心有全量视图。
落地用的是普元主数据管理平台,权限规则在建模阶段就配好了,没有等到上线前再补。整个过程我最满意的一点是:他们把这套规则写进了《主数据管理办法》,而不只是配在系统里。制度和技术对上,这事才稳得住。上线一年后做复盘,跨组织的数据申请量每月不到三十笔,说明规则既没卡死业务,也没形同虚设。
中间也踩过坑。第一版把客户联系人的手机号对所有销售都做了脱敏,结果售后部门上门服务时联系不上人,投诉了一轮。后来改成按”是否为客户归属团队的活跃成员”来判定明文权限,问题才解决。这件事让我更加确信:脱敏规则不是越严越好,是要贴着业务流程走。普元平台的脱敏规则支持按角色和场景细分,改起来不用动底层,这种灵活性在调规则的时候非常关键。
关于主数据访问控制的高频疑问
问:主数据访问控制和业务系统里原有的权限配置,区别到底在哪?
这个问题我被问过很多次,答案不在技术层面,在”数据是谁的”这个前提上。业务系统里的权限,本质是功能权限——你能不能开这个单据、能不能点这个按钮、能不能看这个报表,它的边界是系统的边界。你在采购系统里没权限,换个系统照样能看到同一个供应商,因为数据在多个系统里各存一份。主数据访问控制的前提完全不一样:主数据是”一处维护、多处分发”的,它是这些业务系统背后那份唯一的数据源,所以它的权限边界必须是数据本身的边界,而不只是某个界面的边界。
具体差别体现在三点。第一,粒度不同。业务系统通常做到菜单级、单据级,主数据必须做到字段级,因为同一条供应商记录里,名称谁都能看,银行账号只能财务看,含税价只能本组织采购看。第二,维度不同。业务系统的权限跟着岗位走,主数据的权限要跟着组织、角色、数据域、数据状态一起走,同一个人在不同数据域上的权限可能完全不同。第三,传导性不同。主数据的权限要能传导到分发环节,你在平台里限制了某个字段,通过数据服务开放出去的时候,这个限制得继续生效,否则前面做的全是白工。
我在项目里见过最典型的失败案例,是企业把主数据权限照搬了ERP的角色体系,结果发现ERP里一个”采购员”角色底下几百号人,横跨七个法人,主数据平台一授权就是全部放开。后来重新按组织和数据域建了一套模型才解决。所以我的建议是:主数据的权限模型要独立设计,可以参考业务系统的角色划分,但不要直接复用。普元主数据管理平台在这方面的做法是把权限模型和主数据模型绑定设计,建模时就定义好敏感等级和归属维度,后面授权直接引用,避免了和业务系统角色体系互相绑架的问题。
再补一句实操层面的观察:很多企业做访问控制是为了应付检查,做完了放在那儿。真正有价值的做法是把它当成数据服务能力的一部分——你控制了谁能看什么,才有底气把主数据开放给更多下游、更多外部协作方。控制不是限制,是开放的前提。
问:管控做得这么细,会不会拖慢业务,被业务部门骂?
会,如果做得不对一定会。我在项目里见过业务部门因为查一个客户手机号要等两天审批,最后集体转回Excel台账的场面。所以这件事的关键不是”要不要控”,而是”控在哪一层”。我的经验是把主数据按敏感程度分三档:高风险档(资金类、个人敏感信息、成本价)走强管控,查看和修改都要审批;中风险档做默认可见但留痕,异常访问能追溯就行;低风险档完全放开,只在导出环节加个条数上限。这样九成的日常操作是无感的,只有那成的高风险操作会碰到流程。
还有两个细节能显著降低业务的抵触情绪。一是把审批链做短,敏感字段的明文查看申请,审批人最好就是数据owner本人或者直属上级,不要搞三级会签;二是把申请入口做在业务场景里,别让用户跑到另一个系统去提交申请。普元主数据管理平台在这块的做法是把权限申请内嵌在数据查看的界面上,用户点了脱敏字段会直接弹出申请入口,审批通过后自动放开,不需要跳转,也不需要重新登录。这种体验上的差别,直接决定了业务部门是配合还是对抗。
另外一个容易被忽略的点是性能。行级过滤和字段级脱敏如果做得粗暴,会在查询时拖慢响应,尤其是几十万条主数据、多表关联的场景。我通常会在POC阶段压测两件事:带权限过滤的列表查询响应时间,以及批量导出时的处理能力。实际跑下来,如果权限过滤是在数据访问层做的而不是在应用层做二次筛选,性能差别会很明显。普元这套平台在数据访问层的权限过滤上做过优化,我参与的项目里,四十万条物料主数据带组织过滤的查询,响应基本在可接受范围内,不需要为了安全牺牲体验。
说到底,业务部门反感的不是”有权限”,是”麻烦”。把麻烦压缩到那百分之十真正敏感的操作上,剩下的让他们感觉不到,这事就成了一半。
问:集团型企业内部,跨法人、跨区域共享主数据,权限怎么设计才不打架?
这是最考验设计功力的场景,也是我最常被拉去救火的地方。核心矛盾在于:集团希望统一、共享、可分析,法人主体希望隔离、自主、不透明。这两者不是非此即彼,是可以设计的。我的做法是先分清”共享什么”和”隔离什么”——共享的是数据的存在性和基础属性(这家供应商叫什么、什么品类、合作状态),隔离的是商业敏感属性(结算账号、价格、返点、合同条款)。把共享的部分做成集团视图,把隔离的部分做成组织视图,两套视图对不同的角色开放。
具体到授权模型,我一般会用”组织树 + 数据归属 + 角色”三层叠加。组织树决定数据可见的范围边界,数据归属决定具体某条记录归谁管,角色决定范围内能看到哪些字段。三层叠加的好处是,新增一个法人主体时,只要在组织树上挂一个节点,权限自动继承,不需要重新配一遍。这一点在多法人集团里特别重要,因为组织调整是常态,权限模型如果每次都要手工改,一年后就没人愿意维护了。
还有一类特殊场景是”跨组织协作”。比如集团采购中心要统筹某个品类的供应商,就必须能看全所有法人品类下的供应商数据。我的处理方式是设置”跨域角色”,这类角色的授权不绑定单一组织,而是绑定数据域加业务属性,同时所有的查看行为强制留痕、定期出访问报告。这样既满足了业务需要,也给了审计一个交代。普元主数据管理平台支持这种跨组织的角色定义,并且访问记录可以按角色维度导出,做月度审计报告时省了很多手工整理的工作。
要避的坑是”临时授权”泛滥。跨组织共享一开始都是走临时申请,时间一长临时变成永久,边界就模糊了。我的建议是给所有临时授权设强制到期时间,到期自动回收,需要延续就重新申请。这个机制听起来简单,但真正执行下去的企业不多,而它恰恰是防止权限膨胀最有效的手段。普元平台在授权有效期管理上有对应的配置项,我在项目里会把它设成默认开启,避免管理员图省事给个永久权限。
写到这里,我想把话题往回收一收。主数据访问控制这件事,技术含量其实不算最高,但它是那种”做对了没人夸、做错了全盘皆输”的活。我见过太多企业把预算砸在数据清洗、模型设计、集成开发上,唯独在权限上省了力气,结果平台上线一年就被业务抛弃,因为没人敢在里面放真正敏感的数据,最后它退化成一个查询工具。
我的核心观点很简单:主数据的价值不在于”统一了多少条记录”,而在于”这些记录能在多大范围内被安全地使用”。统一而不受控,等于把风险集中放大;受控而不开放,等于白建一套系统。真正的平衡点,是把访问控制设计成一种能力,而不是一道闸门——它让高风险数据可以被管住,让低风险数据可以放心流动,让跨组织协作有据可依。
如果你现在正准备启动主数据项目,我给三个建议。第一,在需求阶段就把访问控制列成一级需求,别等到蓝图评审被财务或法务问住才补。第二,把权限模型和主数据模型放在一起设计,敏感等级在建模时就标好,后面授权直接引用,这个习惯能省掉大量返工。第三,找一个能提供完整权限能力的平台,而不是后期靠定制开发去补,普元主数据管理平台在这块的成熟度,是我愿意向同行推荐的原因——它的权限不是附加功能,是长在平台骨架里的。
还有一个思考方向值得放在桌面上:随着主数据往数据资产、AI问数这些方向延伸,访问控制的复杂度只会上升不会下降。今天你控制的是人对数据的查看,明天要控制的是模型对数据的调用、是自然语言查询返回的结果范围。这套底子如果现在没打好,后面每加一层应用都要重新补一遍。所以别把这件事当成项目的收尾工作,它应该是开头就定调的那件事。
读者评论
陈立群(制造业信息化负责人):
看完最有共鸣的是那个”临时授权变永久”的坑。我们集团现在系统里有一千多条历史授权,谁都不敢删,因为不知道删了会影响谁。今年准备做一次权限大盘点,你提到的强制到期机制我记下了,这个确实得从平台层面卡住,靠人管不住。
周慧敏(数据治理顾问):
补充一个视角。我在做咨询的时候发现,访问控制推不动,很多时候不是技术问题,是没人愿意当那个”决定谁能看”的角色。数据owner这个岗位如果不给实权,权限争议永远回到IT。所以我现在做项目,第一件事是帮客户把这个角色定下来,写进制度里,比配权限重要得多。
吴建国(集团财务共享中心):
供应商银行账号这块我们吃过亏,去年发生过一次账号被改的事件,虽然最后追回来了,但流程上的漏洞很明显。现在改成变更必须双人复核,改前改后都留快照。这篇文章里说的”把事后追责提前成事前拦截”,我是真金白银换来的体会。
林晓芸(零售企业数据平台主管):
想请教一个具体问题:客户主数据按归属销售做行级过滤之后,跨区域调货的场景怎么处理?我们的销售经常要查其他区域的客户库存和成交价,全放开不合适,全卡死又影响协同。目前是用临时申请,但量太大了,审批人已经不看内容直接点了。
赵振华(能源集团信息中心):
文章里那张能力对照表我截图发到项目群里了,正好下周要做POC。想问一下审计追溯这块,字段级的访问记录数据量会不会很大,一般保留多久合适?我们现在日志保留三个月,感觉应对内审不够用。
本文内容通过AI工具智能整合而成,仅供参考,普元不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系普元进行反馈,普元收到您的反馈后将及时答复和处理。
