一、了解 Subagents 与 Actions 的认证
欢迎来到 Deploying Agent Authentication。本项目跟随 Pronto 外卖配送公司的管理员 Linda Rosenberg,为敏感的 Agent 操作实施客户验证。添加认证的第一步是区分哪些操作应该是公开的,哪些应该是私有的。
Public vs. Private Actions 与 Pronto 需求
Public Actions(公开操作):Agent 无需认证即可访问——无需身份验证。示例:回答 FAQ、提供公司公开信息(地址、营业时间等)。
Private Actions(私有操作):需要验证用户身份后 Agent 才能执行。示例:更新个人信息、处理支付、取消预约、访问敏感账户、请求退款。
Pronto 的需求:订单查询触发 Order Issues and Refunds Subagent + 验证;双因素验证:询问邮箱→发送一次性验证码;Agent 只有验证码匹配后才能访问敏感操作。
环境设置
- 注册包含 Agentforce Studio 和 Pronto 示例数据的 Developer Edition org
- Setup → Salesforce Go → Agentforce Studio → Get Started → Turn On → Confirm
- 配置邮件可达性(发送验证码的关键步骤):Setup → Deliverability → Email Domain Verification → 勾选 "Use a substitute email address for unverified domains" → Domain Name: gmail.com → Save
二、导入 Agent 并添加客户验证
导入 Agent 并构建 Order Issues Subagent
- Agentforce Studio → New Agent → New from Script → 粘贴 Agent Script → Create Agent → 打开 Pronto Service Agent → Save → 分配 EinsteinServiceAgent User
- 创建 Order Issues and Refunds Subagent:Purpose=解决订单问题(缺失物品、冷食、延迟配送、退款),处理支持案例并确定退款资格
- 创建两个 Apex Actions:Get Customer Profile(按邮箱检索客户档案)和 Get Related Cases(检索客户关联案例)
- 添加 Subagent 指令:"当用户询问订单或请求退款时,先询问邮箱地址。运行 Get Customer Profile 和 Get Related Cases 检查现有案例并提供状态。"
- 测试:"Can you show me all of my cases?" → Agent 询问邮箱 → 返回案例结果
创建 Verify Customers Subagent 与自定义变量
Verify Customers Subagent:在允许访问敏感支持操作之前验证客户身份。
- Send Email with Verification Code (Flow):向客户邮箱发送验证码 → Input: customerToVerify → Output: verificationMessage
- Verify Code (Flow):验证用户输入的验证码 → Inputs: customerCode, customerId, customerType
两个全局自定义变量:
- IsVerifiedCustomer (Boolean, 默认 False):跟踪客户是否完成验证
- AuthenticationKey (String):存储链接邮箱验证码发放与验证的认证密钥
变量映射:Send Email 输出 AuthenticationKey + VerifiedCustomerId → Verify Code 输入 AuthenticationKey(Agent Populated)→ 输出 IsVerifiedCustomer。将 Get Customer Profile 也添加到 Verify Customers Subagent。
添加条件逻辑与端到端测试
条件逻辑(If/Else):更新 Order Issues and Refunds Subagent 指令:
- IF IsVerifiedCustomer == True → 运行 Get Related Cases 敏感操作
- ELSE → Transition to Verify Customers Subagent
这意味着:敏感操作仅在验证后执行。未验证客户先被路由到 Verify Customers 流程。Save → Commit Version (x2) → Activate (x2)。
端到端测试:Preview → "Hi, I'm Alex Morgan. Can you show me all of my cases?" → Agent 转换到 Verify Customers(尚未验证)→ 询问邮箱 → 发送验证码 → 复制 6 位 verificationCode → 粘贴 → 验证成功 → Agent 确认并显示案例。
可复用的 Verify Customers Subagent 配合混合推理护栏(Hybrid Reasoning Guardrails)确保敏感操作仅在双因素邮件验证成功后执行。公开操作对所有人开放;私有操作以认证为门槛。






