先这样答
我会记录每次工具调用,并把记录写入不可篡改日志,保证整条链路可以回放。记录内容包括调用者、调用时间、工具名称、请求参数、执行结果,以及这次调用依据的指令。这样出现异常时,可以还原是谁在什么时间调用了什么工具,也能核对参数、结果和指令依据。
我会先给动作分级,再决定拦截方式。只读动作可以按权限执行。可逆动作需要受权限和参数校验约束。不可逆动作必须经过人工确认,不能只依赖模型自行判断。权限按角色使用白名单收敛。执行前校验参数,并增加异常检测。比如金额突然变化时触发告警,再暂停后续处理,等待人工确认。
面试官会怎么追问
-
「审计日志具体要记录哪些字段?」 调用者、时间、工具、参数和结果是基础字段。还要记录这次调用依据哪条指令。日志必须不可篡改,并支持按调用过程回放。
-
「为什么不可逆操作一定要人工确认?」 不可逆操作一旦执行,后果不能通过简单回滚消除。模型可能误解指令,也可能生成异常参数。人工确认可以在执行前再次检查动作和参数。
-
「参数校验和异常检测分别解决什么问题?」 参数校验检查请求是否符合允许的参数范围和格式。异常检测关注调用是否偏离正常情况。金额突然变化就应触发告警,不能直接放行。
回答的坑
- 只说记录日志,不说明日志不可篡改和链路可回放,审计就无法支撑事后核查。
- 只按工具名称授权,不按动作风险分级并要求人工确认,无法防住不可逆操作。
同系列的题
—— 本题完 ——