Markings 与组织

第 3 课 · 共 7 课 约 8 分钟

默认类别全满足,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 这一关,要做事还得有角色。

三条规矩

PROPAGATE

沿派生传播

资源层级和数据依赖可以继承上游 Markings。任意复制、Function 结果、Action 写值与平台外导出不自动继承。

RESTRICT

只限制,不授予

有资格不等于有权限: Markings 回答「你有资格吗」,角色回答「你能做什么」。别用 Markings 发权限。

EXPAND

拿掉要专门权限

挂上 Marking 要 Owner 和 USE。去掉 Marking 或停止继承,要 Owner、DECLASSIFY 和 USE。

  1. 01原始数据customer,带 pii 与 finance
  2. 02汇总沿派生继承同样两个 Markings
  3. 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:名字、谁能持有、贴在哪些类型或属性上。

小测

选一个答案,马上看解析。

Q1一份资源在默认类别中带有 pii 和 finance。一个人只有 pii,而且是 Owner,他能打开吗?

Q2为什么给数据贴 Markings 算「敏感操作」?

Q3AIDC 今天要让整个 CustomerCredit 类型只有财务读得到,下面哪种做法可行?

延伸阅读