Markings 与组织
默认类别全满足,DISJUNCTIVE 类别内满足一个;Markings 沿资源层级与数据依赖继承。

本课目标
读完这一课,你将能够
- 说明 Markings 如何限制访问,区分类别内的 AND 与 OR,并说出继承边界
- 设计示例工厂的 Markings 方案:分成几类、谁能持有、贴在哪里
- 说清 AIDC 的组织边界,并用命令建立和挂载 Markings
Markings:按类别判断
上一节的角色授予权限,Markings 再限制访问。Marking 是资源上的访问要求。默认类别内要全部满足;DISJUNCTIVE 类别内满足一个即可。类别之间仍要同时满足。Owner 和 developer 也受约束。
示例工厂可以把 pii 和 finance 放进默认类别,分别保护联系人和信用额度。属性用 propertySecurityGroups 引用 Marking 的 id。下表按默认类别判断:
资源只带 pii | 资源带 pii 与 finance | |
|---|---|---|
只持有 pii | 打得开 | 打不开:缺 finance |
只持有 finance | 打不开:缺 pii | 打不开:缺 pii |
| 两个都持有 | 打得开 | 打得开 |
| 什么都没有,但是 Owner | 打不开 | 打不开 |
「打得开」只表示过了 Markings 这一关,要做事还得有角色。
三条规矩
沿派生传播
资源层级和数据依赖可以继承上游 Markings。任意复制、Function 结果、Action 写值与平台外导出不自动继承。
只限制,不授予
有资格不等于有权限: Markings 回答「你有资格吗」,角色回答「你能做什么」。别用 Markings 发权限。
拿掉要专门权限
挂上 Marking 要 Owner 和 USE。去掉 Marking 或停止继承,要 Owner、DECLASSIFY 和 USE。
- 01原始数据
customer,带pii与finance - 02汇总沿派生继承同样两个 Markings
- 03导出导出后的文件不自动继承平台控制
Markings 管平台内的敏感访问底线,角色管谁能用、谁能改。对于任意复制或导出,另行检查目标与输出,不能假设 Markings 一直跟着值走。
组织:更硬的一道墙
组织也是强制控制,但更粗:它把用户和资源分成互不相通的圈子。每个用户只是一个组织的成员,也可以是别的组织的访客;资源上要求了组织,你至少要是其中一个的成员或访客。要和另一家公司共享,又不想让对方看到你这边的用户和组,就该另建一个组织。
| Markings | 组织 | |
|---|---|---|
| 贴在哪 | 资源与属性 | 空间、本体(Ontology)、用户、组这一层,不能贴在单个资源上 |
| 用户要满足 | 默认类别全满足;DISJUNCTIVE 类别满足一个 | 至少一个组织(成员或访客) |
| 用来做什么 | 按敏感度或数据主人分类,如 pii、finance | 把公司与公司、群体与群体严格隔开 |
Markings 怎么设计,常见三种分法:
- 按敏感类别:一类一个 Marking,最常用。有多种敏感性的数据,就同时贴上多个。
- 按数据主人:每个团队给自己的数据贴 Markings,由主人决定放给谁。
- 按流程阶段:原始数据一个 Marking,清洗脱敏之后换成别的。
如果连「这份数据存在」都要藏住,就用 Markings:没有资格的人在搜索里也看不到它。
在 AIDC 里:组织与 Markings
组织按公司命名空间隔离。Key 代表所属组织,访问仍按主体的授予与限制判断。外部账号访问未开放的资源,需要 Owner 分享。文件、应用、组织 Applications 和 Space 条目有指定的匿名只读入口;开放应用的 Custom widget 可调用允许的读接口。匿名访客不能执行 Action 或查询 SQL。
aidc semantic admin marking-categories create --name 数据分级
aidc semantic admin markings create --name 财务 --category <类别 id> --member <财务组 id>
aidc semantic admin markings grant <财务 Marking id> USE <负责人账号 id>
aidc semantic filesystem mark <rid> <财务 Marking id>
要点
- 默认类别内的 Markings 要全部满足;DISJUNCTIVE 类别内满足一个即可。Owner 也受约束。
- Markings 沿资源层级与数据依赖继承,只限制不授予。移除要 DECLASSIFY 和 USE,任意复制与平台外导出不自动继承。
- Markings 按敏感类别、数据主人或流程阶段来设计;组织把公司与公司严格隔开。
- AIDC 已有组织隔离与 Markings。资源层级控制和行 Marking 条件都可用;只有 Owner 能改分享。
练一练
设计示例工厂的 Markings
先在纸上设计,再看 AIDC 今天能用什么承担。
为示例工厂列出不超过三个 Markings:名字、谁能持有、贴在哪些类型或属性上。
工作流的 AI 分析步骤读了客户数据,写周报给销售主管。说明为什么不能假设周报自动继承 Markings,并写出怎样检查信用额度是否外泄。
跑 aidc whoami,写下你的 Key 代表哪家公司,再说明为什么泄露的 Key 带不出别家的数据。
小测
选一个答案,马上看解析。
Q1一份资源在默认类别中带有 pii 和 finance。一个人只有 pii,而且是 Owner,他能打开吗?
本题用默认类别,要同时满足两项;Owner 不能绕过。DISJUNCTIVE 类别内才是满足一个即可。
Q2为什么给数据贴 Markings 算「敏感操作」?
Markings 沿派生立即生效,所以贴之前要先看下游有谁在用。它不会动角色授予。
Q3AIDC 今天要让整个 CustomerCredit 类型只有财务读得到,下面哪种做法可行?
类型挂上 finance Marking,非成员连 Owner 也不能读。只保护信用额度这一列,不能保护整个类型;Object Type 也不能单独设为 Private。