ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

AINL 安全最佳实践指南:沙箱配置、能力授予模型与威胁模型防护完整清单

AINL 安全最佳实践指南:沙箱配置、能力授予模型与威胁模型防护完整清单 AINL 安全最佳实践指南沙箱配置、能力授予模型与威胁模型防护完整清单【免费下载链接】ainativelangAINL helps turn AI from a smart conversation into a structured worker. It is designed for teams building AI workflows that need multiple steps, state and memory, tool use, repeatable execution, validation and control, and lower dependence on long prompt loops. AINL is a compact, graph-canonical, AI-native programming system for (READ: README)项目地址: https://gitcode.com/gh_mirrors/ai/ainativelangAINL 安全不靠信任 AI而靠分层防护。AINL 是一个 AI 原生的图规范化编程语言它把 AI 工作流变成可验证、可限制、可审计的结构化执行体。本文带你快速掌握 AINL 的三大安全支柱沙箱配置Security Profiles、能力授予模型Capability Grant和威胁模型并附上一份可直接勾选的防护清单帮助新手安全地部署 AI 工作流。git clone https://gitcode.com/gh_mirrors/ai/ainativelang1️⃣ 先搞懂 AINL为什么结构化本身就意味着更安全AINL 的核心思想是把 AI 从聪明的对话变成结构化的工人structured worker。一段 AINL 程序在运行前会先被编译成一张确定性执行图运行时只按图执行不会临场发挥AINL 程序编译后的图执行结构每个节点node按确定的调用关系推进这正是沙箱限制与策略校验的作用对象这种设计带来三个天然的安全优势特性安全价值编译期可见程序用了哪些适配器adapter、哪些效果effect执行前就能审查确定性执行同样的输入永远得到同样的执行路径行为可预测、可复现资源上限内置步数、深度、超时、调用次数都有硬性天花板防止失控循环 关键认知AINL 是工作流执行层不是安全边界本身。它提供纵深防御defense-in-depth真正的硬隔离由容器/操作系统负责。2️⃣ 沙箱配置入门用一行环境变量启用预设安全档案AINL 内置了多个命名安全档案Security Profiles存放在 tooling/security_profiles.json。你只需要在启动运行时设置一个环境变量整个执行面就会被收拢到该档案的边界内Runner 服务AINL_SECURITY_PROFILE档案名MCP 服务AINL_MCP_PROFILE档案名四大常用安全档案怎么选档案名允许范围适用场景local_minimal仅core纯计算适配器禁止一切 I/O本地调试、无副作用的干跑验证sandbox_compute_and_store本地计算存储core、sqlite、fs、wasm、memory、cache禁止所有网络离线/气隙环境、受限容器sandbox_network_restricted在上一档基础上放行受控的 http/tools/queue只能调用白名单内部 API 的场景consumer_secure_default常见数据/HTTP/LLM 适配器封禁运营类集成面向终端用户的产品、托管沙箱operator_full由运维者显式选择所有适配器有独立策略引擎和审批流程的可信环境三档资源限制速查表运行时限制是沙箱的第二道闸官方推荐值如下详见 docs/operations/SANDBOX_EXECUTION_PROFILE.md限制项保守不可信工作流标准生产宽松长任务max_steps最大步数5005,00050,000max_depth最大深度1050200max_adapter_calls适配器调用505005,000max_time_ms超时5 秒30 秒300 秒CLI 一行即可生效ainl run program.ainl --max-steps 5000 --max-depth 50 --max-time-ms 300003️⃣ 能力授予模型调用方只能收紧永远无法放宽这是 AINL 最精妙的设计能力授予Capability Grant是一个只减不增的握手机制。合并规则一表看懂字段合并规则直白理解allowed_adapters白名单交集双方都允许的才能用forbidden_*黑名单并集任何一方禁止即禁止limits资源上限逐键取最小值更严格的一方说了算一个 30 秒能懂的例子假设服务器用sandbox_compute_and_store档案启动允许 core、sqlite、fs…禁止网络而某个调用方在请求里大胆地要求[core, http]合并结果只有[core]——http不在服务器授予范围内被静默剔除。也就是说调用方可以为自己加锁但永远撬不开服务器那扇门。这从机制上杜绝了某个 Agent 自我提权的可能。完整设计见 docs/operations/CAPABILITY_GRANT_MODEL.md实现在 tooling/capability_grant.py。策略门违规请求在执行前就被 403 拦下运行时服务在执行前会用 tooling/policy_validator.py 对编译后的 IR 做策略校验。如果工作流偷偷调用了被禁止的http.Get响应将是{ok: false, error: policy_violation, policy_errors: [{code: POLICY_ADAPTER_FORBIDDEN, message: Adapter http is forbidden by policy}]}代码还没跑一步就被拒绝并留下审计记录。4️⃣ 威胁模型先看懂 AINL 不做什么才能用得对安全文档 docs/advanced/SAFE_USE_AND_THREAT_MODEL.md 明确列出了 AINL 协调层不提供的能力这是新手最容易踩坑的地方⚠️ 三个不要假设不要假设策略字段是强制的。approval_required需人工审批、budget_limit预算上限、trust_domain信任域等字段是描述性元数据——AINL 本身不执行它们必须由你的外部编排器负责解读和强制。不要假设本地文件邮箱是安全边界。AINL_AGENT_ROOT下的任务/结果文件JSONL是协调约定不是加密消息总线不做身份认证、不加密、不做多租户隔离。不要假设 AINL 沙箱。进程隔离、网络出口控制、文件系统权限都应由容器/操作系统层负责。沙箱根目录的黄金法则✅ 推荐❌ 避免专用目录如/tmp/ainl_agents文件系统根目录/会被直接拒绝容器本地的专属路径用户主目录$HOME单租户、专用部署路径多个不可信进程共享的挂载点5️⃣ 审计日志让每次执行都留下指纹Runner 服务会输出结构化 JSON 审计事件详见 docs/operations/AUDIT_LOGGING.md覆盖完整生命周期事件触发时机run_start每次执行开始携带 trace_id 和生效限制adapter_call每次适配器调用含耗时与状态run_complete/run_failed执行成功 / 失败policy_rejected策略校验拒绝执行前拦截日志本身也是安全的️ 不落原始结果只记 SHA-256 哈希、参数自动脱敏密码、token 显示为[REDACTED]、错误信息截断至 200 字符、统一 UTC 时间戳便于跨系统关联。6️⃣ 防护清单部署前逐条勾选 ✅#动作一句话理由1用AINL_SECURITY_PROFILE选择与场景匹配的安全档案一行命令获得官方验证过的限制基线2默认从local_minimal起步按需逐级放宽最小权限原则先用最紧的不够再加3为AINL_AGENT_ROOT、AINL_MEMORY_DB指定容器内专用路径防止越权读写和路径穿越4明确资源上限max_steps / max_time_ms 等不可信代码用保守档防止失控循环和 DoS5http 适配器配置allow_hosts白名单网络出口只放行已知服务6把能力授予当单向阀使用调用方只能收紧机制上杜绝自我提权7把approval_required等策略字段交给编排器强制AINL 只描述不执行8启用 Runner 审计日志并接入日志聚合事后可追溯、可举证9容器层设置 CPU/内存/超时作为最外层边界AINL 是工作流层硬隔离归容器10扩展类适配器agent、svc、extras 等仅在受控环境启用它们是运营级工具不是默认能力一句话总结AINL 给你的是确定性的笼子——编译期可审查、执行中有限流、违规前 403、事后留痕。把笼子架在容器里再把审批权留在人手里就是最稳的组合。 延伸阅读仓库内文档主题文件路径安全使用与威胁模型完整版docs/advanced/SAFE_USE_AND_THREAT_MODEL.md沙箱执行档案与环境变量参考docs/operations/SANDBOX_EXECUTION_PROFILE.md能力授予模型设计docs/operations/CAPABILITY_GRANT_MODEL.md结构化审计日志规范docs/operations/AUDIT_LOGGING.md命名安全档案机器可读tooling/security_profiles.json能力授予合并实现tooling/capability_grant.py策略校验器tooling/policy_validator.pyRunner 服务含策略门与审计scripts/runtime_runner_service.py【免费下载链接】ainativelangAINL helps turn AI from a smart conversation into a structured worker. It is designed for teams building AI workflows that need multiple steps, state and memory, tool use, repeatable execution, validation and control, and lower dependence on long prompt loops. AINL is a compact, graph-canonical, AI-native programming system for (READ: README)项目地址: https://gitcode.com/gh_mirrors/ai/ainativelang创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表