AI Agent 最大的工程风险,不是它不够聪明,而是它被赋予了不该拥有的权限。

一个只能回答问题的模型,最多给出错误建议。
一个可以调用工具的 Agent,可能发邮件、改文件、查数据库、提交代码、创建订单、触发工作流。

这两者的风险等级完全不同。

Google I/O 2026 中,Google 强调新一代 Gemini 模型具备更强行动能力;OpenAI Codex 也被定位为面向 agentic coding 的工作台,可以支持多代理工作流。

所以,业务系统如果要接入 AI Agent,第一步不是写 Prompt,而是设计 Permission Gate。

Permission Gate 是什么?

简单说,它是 Agent 调用工具之前的一层权限网关。

基本架构如下:

```text
User Request
    ↓
Intent Parser
    ↓
LLM Planner
    ↓
Permission Gate
    ↓
Tool Executor
    ↓
Audit Log
    ↓
Human Review / Auto Result
```

核心原则是:

Agent 可以提出动作,但不能绕过权限。

比如用户对 Agent 说:

“帮我把上个月未付款客户都发一封提醒邮件。”

Agent 可能拆成:

1. 查询客户列表
2. 筛选未付款客户
3. 生成邮件内容
4. 批量发送邮件

这里每一步风险不同。

查询客户列表:中风险,涉及客户数据。
筛选未付款客户:中风险,涉及业务状态。
生成邮件内容:低风险。
批量发送邮件:高风险,影响真实用户。

所以不能让 Agent 一口气自动执行。

我们可以先定义动作类型:

```python
from enum import Enum
from dataclasses import dataclass
from typing import Dict, Any

class ActionType(str, Enum):
    READ = "read"
    WRITE = "write"
    SEND = "send"
    DELETE = "delete"
    EXECUTE = "execute"

class RiskLevel(str, Enum):
    LOW = "low"
    MEDIUM = "medium"
    HIGH = "high"
    CRITICAL = "critical"

@dataclass
class AgentAction:
    action_type: ActionType
    tool_name: str
    resource: str
    arguments: Dict[str, Any]
    user_id: str
```

然后定义权限策略:

```python
TOOL_RISK_MAP = {
    "search_docs": RiskLevel.LOW,
    "summarize_text": RiskLevel.LOW,
    "query_customer": RiskLevel.MEDIUM,
    "create_ticket": RiskLevel.MEDIUM,
    "send_email": RiskLevel.HIGH,
    "update_database": RiskLevel.HIGH,
    "delete_record": RiskLevel.CRITICAL,
    "run_shell_command": RiskLevel.CRITICAL,
}
```

Permission Gate 的核心判断:

```python
def get_risk_level(action: AgentAction) -> RiskLevel:
    return TOOL_RISK_MAP.get(action.tool_name, RiskLevel.CRITICAL)

def require_human_approval(risk: RiskLevel) -> bool:
    return risk in [RiskLevel.HIGH, RiskLevel.CRITICAL]

def is_action_allowed(action: AgentAction, user_permissions: set) -> bool:
    required_permission = f"{action.action_type}:{action.resource}"
    return required_permission in user_permissions
```

完整网关:

```python
def permission_gate(action: AgentAction, user_permissions: set) -> Dict[str, Any]:
    risk = get_risk_level(action)

    if not is_action_allowed(action, user_permissions):
        return {
            "allowed": False,
            "reason": "permission_denied",
            "risk": risk.value,
            "need_human_approval": False
        }

    if require_human_approval(risk):
        return {
            "allowed": False,
            "reason": "human_approval_required",
            "risk": risk.value,
            "need_human_approval": True
        }

    return {
        "allowed": True,
        "reason": "approved_by_policy",
        "risk": risk.value,
        "need_human_approval": False
    }
```

实际调用示例:

```python
action = AgentAction(
    action_type=ActionType.SEND,
    tool_name="send_email",
    resource="customer_email",
    arguments={
        "segment": "unpaid_customers",
        "template_id": "payment_reminder"
    },
    user_id="u_123"
)

user_permissions = {
    "read:customer_email",
    "send:customer_email"
}

result = permission_gate(action, user_permissions)
print(result)
```

输出可能是:

```json
{
  "allowed": false,
  "reason": "human_approval_required",
  "risk": "high",
  "need_human_approval": true
}
```

这样做的好处是:Agent 可以规划动作,但高风险动作必须被截住。

接下来还要加审计日志。

```python
from datetime import datetime

def write_audit_log(action: AgentAction, gate_result: Dict[str, Any]):
    log = {
        "timestamp": datetime.utcnow().isoformat(),
        "user_id": action.user_id,
        "tool_name": action.tool_name,
        "action_type": action.action_type.value,
        "resource": action.resource,
        "risk": gate_result["risk"],
        "allowed": gate_result["allowed"],
        "reason": gate_result["reason"]
    }
    print(log)
```

在真实系统里,这些日志应该进入日志平台或审计系统,方便事后追踪。

为什么这件事越来越重要?

因为 AI Agent 正在从 Demo 走向真实工作流。Anthropic Mythos 被报道发现全球金融系统网络安全漏洞,也说明 AI 能力正在进入更高风险的系统层。能力越强,越不能没有权限边界。

对于企业或开发团队来说,Agent 接入业务系统至少要有四条底线:

第一,读写权限分离。
Agent 可以读,不代表可以写。可以生成建议,不代表可以执行操作。

第二,高风险操作必须人工确认。
发送邮件、删除数据、修改配置、执行命令,都不能默认自动执行。

第三,所有工具调用必须审计。
谁触发的、调用了什么工具、影响了什么资源、是否被批准,都要记录。

第四,敏感数据必须脱敏。
客户手机号、邮箱、支付信息、token、合同内容,不应该直接暴露给模型。

如果你只是个人测试,可以从简单 Agent 开始。
如果你要把 AI 接入真实业务,Permission Gate 必须先做。

前期测试多模型能力时,可以通过 gpt985.com 这类综合入口比较 ChatGPT、Claude、Gemini、Grok 在任务拆解、工具调用规划、代码生成方面的差异。但进入工程落地后,真正决定安全性的不是模型,而是权限、审计和人工确认机制。

AI Agent 不是不能接入业务系统。

但它必须站在权限网关后面。
 

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐