Skip to main content

安全边界

ALL 的安全控制分为两层:
  1. FSP 根据请求分类、参数、对象状态、前置条件和系统安全围栏校验技能请求;
  2. 设备本地控制器保留最终硬件保护权。
上层实验方法、能力描述或自然语言内容不得绕过任何一层。

分类安全规则

执行前校验顺序

writeinvoke 请求应当依次检查:
任一检查失败,服务端不得下发写入或物理动作。

状态与并发

  • 改变状态的调用必须携带 expected_revision
  • 同一对象或同一互斥设备资源的冲突操作不得并发执行;
  • 只有设备确认完成后才能提交成功状态;
  • 任务进入 unknown 后不得以计划状态覆盖实际状态;
  • 并行函数必须声明汇合条件和写集合,冲突写入必须在执行前被拒绝。

安全围栏

每项技能的系统维度必须公开调用方需要知道的安全限制,例如允许运行状态、联锁条件、可用性、禁止条件和紧急停止状态。围栏只公开执行判断所需信息,不暴露内部控制秘密。

取消与急停

取消任务是请求,不等同于动作已经停止。服务端必须返回真实任务状态;不能安全取消时返回 unsafe_cancellation。紧急停止由设备本地安全机制实施,ALL 只能读取其状态并遵守其结果。

最小暴露

  • 设备发现只返回最小设备元数据,技能详情仅按调用方请求披露;
  • 日志不记录设备密码或未脱敏样品秘密;
  • 诊断不返回内部堆栈和驱动密钥;
  • 研究对象扩展字段不得用于携带设备秘密。

审计

writeinvoke 调用至少记录调用方名称、设备、技能、请求分类、请求标识、时间、参数摘要、输入修订号、任务标识、验证结果、最终状态和诊断编码。审计记录不能代替研究对象的实验来源与证据。