状态:全篇为建议,可调整。第 12 节 PAT-AUTH 由代理依用户授权采用为有界文档候选,设计未创建、实现未验证、运行未执行;第 10、11 节的验收测试与夹具均未执行,不代替后端安全测试。 更新:2026-10-20 所属章节:系统状态、权限与恢复
本页维护权限与并发的界面要求。权限模型、身份认证、安全策略、版本控制与原子执行由产品和服务端负责;YUDS 不定义行业审批制度,也不以界面限制代替真实授权。
任务导引:第 12 节「PAT-AUTH:认证入口与会话恢复」是通用 UI 有界主合同;设备、身份、法律或执行服务仍按该节的能力前提判断。
1. 访问权与操作权分开
用户可能能看到对象但不能修改,能修改部分字段但不能提交,或只能在特定阶段执行动作。界面应反映当前有效权限,不能用一个“管理员/普通用户”判断覆盖所有场景。
建议每项能力明确对象范围、动作、字段或内容范围、业务条件及当前身份。搜索、列表、详情、导出、深链接、快捷键和批量入口都必须采用同样的实际授权原则。
权限检查发生在执行层。隐藏按钮、禁用字段和前端校验只是帮助用户理解和防错,不能阻止恶意请求,也不能作为授权已落实的证据。
2. 不可见、只读与禁用
| 表达 | 适用含义 | 必要约束 |
|---|---|---|
| 不显示 | 用户无需知道或无权知道内容/能力存在 | 不通过搜索、计数、错误、缓存或导出泄露 |
| 只读 | 可查看已获准内容,但不能编辑 | 保持可读与可访问;按披露权限说明原因 |
| 禁用操作 | 用户知道此操作,但当前条件未满足 | 原因及可行下一步可发现,不只放悬浮提示 |
| 脱敏或摘要 | 产品允许查看有限表达 | 采用实际安全策略,不把完整值留在隐藏区域 |
| 权限错误 | 当前请求未获准 | 在允许披露的范围内解释,不暴露受限事实 |
是否隐藏入口由产品可发现性与安全政策共同决定。不能为了统一界面一律显示所有功能名称,也不能无说明地隐藏用户需要理解的工作阻塞。
3. 错误提示的披露边界
提示应尽量有用,但必须受当前用户可知范围限制。对无权获知存在性的对象,可以使用统一的“无法打开此内容”提示,提供返回或获准的求助路径。
不得通过以下方式泄露:
- 在拒绝页中显示对象名称、客户、负责人、敏感状态或内部编号。
- 通过“还有 8 条无权限记录”暴露本不允许知道的数量。
- 用字段占用、校验错误或差异比较透露另一对象或用户的内容。
- 在应用可控制的辅助技术文本、隐藏面板、待输出文件、通知或调试细节中披露受限内容;撤权后的新输出与此前合法外部副本的控制边界见第 11 节 YUDS-120200-01。
能否申请访问、由谁批准以及是否可联系某人,由产品实际能力和安全策略决定。没有可用流程时不放虚假的“申请权限”按钮,也不承诺多久获批。
4. 操作途中权限变化
用户打开页面时有权,不代表提交时仍有权。每次关键读取与写入应按执行系统规则核查当前权限;界面要处理权限撤回、角色变化、会话到期和工作区切换。
权限变化后:
- 停止不再允许的展示、修改和提交。
- 取消或隔离尚未发出的受限动作;已发出的动作按实际结果核查,不能假定已撤销。
- 对当前任务说明可披露的限制,提供可用导航或重新认证路径。
- 按产品安全政策处理缓存和草稿。允许保留的内容尽量保护,不允许的内容不得继续显示或建议导出。
- 重新获得权限后,仍需核查数据与任务状态,不能直接恢复旧提交。
重新登录恢复会话,不自动恢复原有权限,也不让旧条件重新有效。
5. 并发修改的基准
编辑应有可识别的读取基准,如版本、修订或其他等效机制。提交时由服务端判断当前内容是否仍与该基准兼容。YUDS 不规定技术实现,但要求界面能区分“保存成功”“内容已变化”和“结果不明”。
并发变化不只包括同一字段同时编辑,还包括:
- 另一字段改变了本次输入的业务意义或约束。
- 任务已被完成、退回、取消或转交。
- 关联对象、计算依据、期间或配置发生影响判断的变化。
- 当前对象已删除、归档或迁移到另一安全范围。
因此“修改不同字段”并不自动安全。产品决定哪些变化可兼容,界面根据可靠结果呈现。
6. 保存冲突的呈现与解决
冲突提示应说明哪些内容已变化、当前修改是否保存、用户还有哪些真实可用选择。保留安全政策允许保留的输入,不因整页刷新直接丢弃工作。
可支持的解决方式包括:
- 重新加载:展示最新内容;如会放弃本地修改,先明确说明范围。
- 比较后重填:将当前版本与用户修改并列,按权限展示差异。
- 逐项选择:只有实际支持时,让用户决定使用哪一项值,并重新校验跨字段关系。
- 自动合并:仅在产品能证明变化兼容、不会改变业务含义时使用;重要变化仍应让用户可理解。
- 覆盖保存:不是通用默认选项。只有产品明确支持、用户有权、后果已说明且执行时再次校验时提供。
解决冲突后必须针对新基准重新提交。比较页面存在的这段时间内仍可能发生下一次变化,不能因为用户选择了“保留我的内容”就跳过最终检查。
7. 实时更新、锁与协作状态
实时信息可以帮助用户知道内容变了,但不能直接替代并发控制。某人“正在查看”或“正在编辑”的提示只有在有可靠来源时展示,并说明它只是协作信息还是实际锁定。
真实锁应有明确范围、持有者可披露信息、失效条件及允许的释放路径。界面不能任意承诺“离开后立即解锁”或“可强制接管”;这些行为由产品和执行系统决定。
实时变化不应把用户正在编辑的字段静默替换为远端值。可以提示更新待查看,或在安全范围内刷新未编辑区域;若变化影响当前动作,应阻止过期提交并要求核查。
8. 部分保存与部分授权
一次多字段或多对象保存可能由产品定义为原子提交,也可能允许部分成功。界面必须准确说明实际语义,不能一边显示“保存成功”,一边静默忽略无权修改的字段。
若采用原子提交,失败时说明本次没有任何部分生效,且这一结论需由执行系统保证。若允许部分成功,则明确已保存、未保存和结果待确认的内容,保留未完成部分并提供安全后续。
批量任务开始后权限变化,逐项结果可能不同。结果应按真实状态表达,不把受限对象详情泄露在失败清单中,也不把它们重新加入无条件重试。
9. 返回任务时的共同规则
从流程、附件、其他对象或其他设备返回时,先核查权限,再核查对象与任务基准,最后恢复仍有效的内容。
若任务已被他人完成,应显示当前结果与允许的历史,停止旧操作。若数据变化但任务仍开放,应保留当前允许保留的原始输入,包括未解析或因规则变化而失效的部分,并要求核查受影响内容。用户此前的确认针对旧内容,不能自动延伸至新版本或新任务。
这与对象、任务与流程的衔接中的浏览/推进区分一致,也是所有表单和页面模板的共同要求。
10. 安全与并发验收
以下测试均未执行:
- 有读取权无提交权:能阅读获准内容,所有提交入口均受执行层限制。
- 用户无权知道对象存在:列表、搜索、链接、错误、数量和导出不泄露事实。
- 编辑途中撤回权限:受限内容停止展示,旧输入不会继续提交或被建议转存到外部。
- 两人同时修改同一字段:后提交者看到冲突,本地输入按政策保留,无静默覆盖。
- 两人修改不同但存在业务依赖的字段:按产品规则重新校验,不只按字段是否重叠判断。
- 冲突解决过程中再次更新:最终提交识别新冲突,不覆盖最新有效内容。
- 任务已由他人完成:旧页面、深链接和快捷键均无法再次推进任务。
- 多对象部分保存:每项结果真实可辨,已成功项不重复,未知项先核查。
- 重新登录或返回工作区:权限、数据与任务重新校验,不直接执行旧的待提交动作。
- 键盘和辅助技术:禁用原因、冲突摘要与差异选择可理解,可完成获准的恢复路径。
11. 授权与并发的失败闭环
规则 YUDS-120200-01(先授权再恢复)
恢复定位、差异、草稿、来源、复制和批量结果之前,验证当前身份及披露范围;执行时再次验证动作资格和基准。
撤权后,在应用可控制的当前呈现、缓存、待发通知及错误信息中停止披露受限原值,并阻止新的受限复制、导出或更新输出;隐藏 UI 与辅助技术描述同样受此约束。
此前合法复制到系统剪贴板、已下载或已流转到外部的副本,不承诺自动追回。不得为此无边界读取、清空系统剪贴板历史,或覆盖用户后来由其他应用复制的内容。若产品确有受管数据的到期、撤回或清理能力,须另列控制范围、执行条件及实测证据;不能由“已撤权”推断清理成功。
已发出的任务仍归属原身份;只通过已证实且获准的回执/查询路径核查,缺少能力时保持未知并说明限制。界面只提供允许披露的状态,不自行保证撤销。
规则 YUDS-120200-02(新基准再提交)
冲突解决产生一个针对新基准的意图,不获得永久覆盖权。独立字段也要检查业务依赖。原子失败只有在执行层证明全部未生效时才能这样表达,否则按逐项与未知结果分类。没有覆盖权限或合并策略时提供保守路径:保留获准输入、查看当前事实、重新填写并提交;不得添加万能的“强制覆盖”。
夹具
| 规则 | 输入与动作 | 可验预期 | 反例 |
|---|---|---|---|
| YUDS-120200-01 | 编辑金额时撤权,读屏仍在输入框,用户点复制并收到旧写回执 | 应用内原值与可访问描述按政策移除,新复制被阻止;焦点到可用说明;回执仍归原任务并限权披露 | 只盖遮罩;原值继续朗读;将撤权称为写入已取消 |
| YUDS-120200-01 | 有权时复制金额并粘贴到外部文档;随后撤权,用户在另一应用复制无关文本,再回本应用点复制 | 阻止本应用新的受限输出;如实说明外部既有副本不在此撤权承诺内,不读取或覆盖后来复制的无关文本;受管撤回能力仅按实际证据报告 | 宣称所有外部副本已删除;清空整个剪贴板冒充撤权验收 |
| YUDS-120200-02 | V3 本地金额修改,V4 改变相关支付方式,解决冲突后又出现 V5 | 重新验证最新基准和跨字段约束,不因字段名不同自动合并;可安全返回修正 | 选过“我的值”后跳过 V5 检查 |
| YUDS-120200-02 | 批量保存 A 成功、B 拒绝、C 结果未知 | 逐项真实可辨,A 不重试、C 先核查,B 按新资格决定;不能声称原子回滚 | 统一显示“未保存”并重发全部 |
真实授权、缓存清理、读屏及并发服务验证均未执行;这些夹具不代替后端安全测试。
12. PAT-AUTH:认证入口与会话恢复
代理依用户授权将本节采用为有界文档候选(2026-10-20);本单元设计未创建、实现未验证、运行未执行。
本节共同继承 CMP-STATE、原始稿/接受值/写回执区分、NAV 离开保护、CMP-LAYER 焦点、撤权清理及真实服务能力;异步事件绑定会话、对象、版本、账户与权限代次。标题、目的、状态、可用动作、原因和退出须可获取。秘密不得进入示例或普通日志。
- 前提与输入:产品提供可信认证入口或原生机制、允许的方法、挑战状态和安全错误分类。输入为无秘密的认证尝试 ID、发起账户/范围、原任务的安全定位和允许的返回策略;秘密由认可的认证机制处理,不能进入普通日志、导航 URL 或设计夹具。
- 状态:未认证、等待用户输入/外部交接、验证中、已核验身份、拒绝、取消、过期/锁定、网络故障/结果未证实。认证成功、授权获准、原业务动作成功是三条独立的轴。
- 契约:发起前说明为何需要认证及将去哪里;只提供真实方法和可信交接。取消/返回不删除仍允许保留的原稿,也不自动再次弹起认证。方法不可用时只给真实替代或安全退出,不伪造生物识别/账号恢复。成功后重新核验当前身份、对象、权限与任务基准,再返回允许的位置;不重放原写动作。切换了账户则不恢复旧账户的敏感稿。错误信息不得泄露账号是否存在等产品禁止披露的信息。过期回调不激活新会话。
- 最小文档测试:A 编辑 R/v1 后认证,返回同一身份但 R 变为 v2,预期展示重新核查、写调用 0 次;认证期间切换到 B,A 迟到的成功不能显示 A 的稿;取消、锁定、生物方法不存在三种情况各有可达的返回路径;未证实的回调不显示已登录,更不显示业务完成。
- 设计路由:D03,依赖壳、输入、反馈、层;条件化设计,不要求认证服务已部署。