摘要

  • RFC 1274 于 1991 年 11 月作为 IAB standards-track 文件发布,为 COSINE 和 Internet X.500 试验提出与具体实现无关的 schema。它认为基础 X.500 定义虽有用,却不足以支撑大规模试验;若每个站点私下重复共同类型,远端系统就无法确定其语义。
  • 符合该 schema 的最低要求是 DSA 能存储规定的属性与 object class 值,DUA 能向用户识别每个类型。正确匹配、执行 class 约束、正确显示和与旧版本兼容是“可取”而非必需。仅新增可选属性可扩展原 class;改动必填属性类型则需创建新 class 并使旧 class 失效。

共同定义解决的是语言,不是现实的归属

RFC 1274 没有要求把所有本地需求收入共同 schema。罕见、地方性或高度试验性的需求仍应采用私有定义。它要协调的是多个站点都会遇到的对象和属性,因为同一概念被各自私下命名,会让远端系统看见一个值却无法判断该类型究竟承诺什么。

共同定义因此让类别可交流。它没有证明某条目录记录真实、及时、完整或得到记录对象授权,也没有把目录管理员变成现实主体的代表。一个属性名只能把一项主张放进可读的语法;主张是否成立,仍需别处的证据。

可存储、可识别,是兼容性下限

RFC 对符合性的要求很窄:DSA 要能存储规定的值,DUA 要能用适当表示让用户识别类型。大值还带有限定——DSA 不一定要存储,DUA 不一定要显示,但必须表明其存在。

这是跨站点交换的必要下限,不是完整的语义担保。系统可以保存一个值,却未必能正确比较它;客户端可以报出类型名,却未必正确呈现内容;可见的条目也不会仅因可见就证明身份、权限、隐私处理或现实世界关系。

“可取”不等于已经实现

RFC 列出的四项可取行为是:正确匹配所有已定义语法、执行隐含的 object-class schema、由 DUA 正确显示值、保持与前一版本兼容。它们分别涉及比较、约束、呈现和跨版本延续。共同类型名或存储能力不能替代其中任何一项。

所以,目录页面显示一项值,只能证明某系统呈现了某个已存值;它不是该值正确、被正确匹配、符合 class 约束或得到主体同意的综合证明。

可选扩展没有重写 class;必填变更会

若修改只增加可选属性,RFC 1274 允许增强既有 class。旧条目不必补出新事实,仍可属于它。可是一旦必填属性类型需要改变,文件要求新建 object class,并让旧 class 失效。

原因不在版本美学。必填属性定义“什么可以进入这一 class”。悄悄改掉它,会让同一个 class 名称在后来描述不同的归属条件,并把过去的记录伪装成从来带有新要求。新 class 让断点可见、可审计。

schema 管的是词汇,不是被命名世界的权力

RFC 1274 的成果是共享语法:它帮助独立系统交换常用对象的定义。它不决定记录真假、人员身份、发布权限、数据隐私、某个 DSA/DUA 的实际行为或一次查询的结果。正因不把 schema 夸大成这些东西,它才留下了可持续的边界。

来源与证据限制

本文仅使用 RFC 1274 — The COSINE and Internet X.500 Schema。它支持 1991 年文件身份、共同/本地定义边界、符合性下限、可取行为和 class 演进规则。它不证明真实 X.500 服务、特定实现、目录值准确性、身份、授权、隐私、匹配、强制执行、显示、兼容性或当代服务结果。