QORMQORM v0.8.4 docs 开始使用 EN

QORM 权限模型

权限模型控制 Host Capabilities、Agents、Plugins、Bundles 和 Platform Packs 的可用范围。

权限来源

platform capabilities
bundle requirements
app policy
agent policy
plugin manifest
user approval

权限优先级

单次调用按以下顺序裁决:

1. capability exists
2. platform supports capability
3. bundle declares capability
4. app/system policy allows capability
5. agent/plugin policy allows capability
6. user approved if required

规则:

冲突解决

权限示例

{
  "permissions": {
    "network.request": {
      "allowed": true,
      "domains": ["api.example.com"],
      "methods": ["GET", "POST"]
    },
    "filesystem.write": {
      "allowed": true,
      "requiresApproval": true
    },
    "shell": {
      "allowed": false
    }
  }
}

requiresApproval 语义

requiresApproval 意味着,即使某项能力或操作已经被允许,仍然需要一份有效的批准凭证。

最低规则:

批准生命周期

一条批准记录至少包含:

approval id
issuer
scope
issuedAt
expiresAt
reuse policy
revokedAt
revocation reason

失效条件至少包括:

Agent 权限

Agent 侧的权限应更为严格:

read-only
preview-only
edit-json
apply-patch
host-call
admin

apply-patchhost-call 默认不授予。

Agent 的允许不能放松应用/系统策略;Agent 的拒绝可以进一步限制该 Agent。

审计

所有与权限相关的操作都必须记录在审计日志中。

最低字段:

decision id
subject type
subject id
capability or operation
input summary
policy result
approval id
reason
timestamp

审计日志应避免记录原始的敏感载荷;如果必须保留上下文,应记录摘要或脱敏字段。