身份验证建议可能是正确的,但操作工作流程仍然不安全。仪表板可能会识别缺失的 DKIM选择器 不知道谁控制DNS 、提议的选择器是否属于预期租户,或者更改是否获得批准。单独评估每项能力,而不是将看似合理的答案视为采取行动的许可。
追踪单一决定
选择有界任务:为已批准的计费发送者暂存一个新的选择器,同时保留现有的签名者。记录域、服务所有者、发件人身份、建议的DNS所有者名称和预期的公钥。在产生提议的变更之前建立现有记录修订。建议应说明其证据、不确定性和受影响的流量,而不是简单地输出TXT字符串。
RFC 9989 解释说 DMARC 取决于与作者域一致的经过身份验证的标识符。语法上有效的公钥并不能确定计费消息是否使用它,或者它们的签名域是否一致。单独的DNS验证、签名验证和消息级别 结盟 验收记录中。因此,有效的建议具有超出记录发布的可测试的预期结果。
将权力置于提案和执行之间
将审批绑定到确切的变更、租户、域、审批者身份和有效期窗口。如果拟议的记录在批准后发生变化,则需要重新审查。实施者在执行时必须拥有相关范围的权限;先前授权的用户可能已被删除。 OWASP的授权指导 建议默认拒绝并检查每个请求的权限。将该原则应用于后台作业和 API 操作以及用户界面。
定义执行是手动、委托还是自动。保留请求标识符、基线修订、尝试操作、返回结果和验证结果。超时是一个不确定的结果,并不能证明写入失败。在重试之前读取目标状态,以便重复操作不会成为意外的第二次更改。
将检索到的报告、消息内容和链接文档视为不可信的证据,切勿将其视为更改DNS指令或授权。对于代理操作,请将工具权限和批准检查保留在模型对该内容的解释之外。 OWASP 的 AI 代理安全备忘单 解决间接提示注入、范围工具和后续操作的独立控制。下面的书面案例并不测试即时注入阻力。
比较四个显式决策案例
提议的更改 FLOW-01 涉及租户 A、区域 billing.test、所有者 new1。 _domainkey.billing.test ,类型TXT ,基线修订版 4 和尚未提供的提供商生成的公钥。保留现有选择器 old1。所需的修订版 5 是本地规划标签,而不是提供商保证。
- 有效案例:假设真实的关键负载、批准的确切计划、当前实施者许可和未更改的基线都经过验证。工作流可能有资格进行范围执行;仅仅凭借这种资格并不能取得成功。
- 更改的提案:关键有效负载与审查的字节不同。先前的批准无效并获得新的决定。
- 跨租户:请求改为针对租户 B。在租户 A 范围下拒绝。
- 已撤销的实施者:存在先前的许可,但不存在当前的许可。拒绝,直到建立单独授权的访问。
所有前提都是假设的。不提供公钥、批准收据、请求 ID、时间戳、写入、散列或签名测试。内存中的修订版没有更改。真正的飞行员必须保留这些工件和可信的计费消息证据,然后才能声称操作成功。
法官的责任感而非流畅性
推荐引擎提供建议。负责任的工作流程还确定谁可以批准它、谁可以执行它、更改了什么以及如何验证结果。比较收集证据、审查变更和恢复故障所花费的时间,而不仅仅是生成答案的时间。将失败的案例包含在分母中并记录人为干预,而不是将其隐藏为设置。
当授权、租户身份或基线状态不明确时停止试点。通过恢复已知的批准配置或将签名者返回到批准计划下的保留选择器来恢复。不要承诺身份验证通行证可以保证收件箱的放置:收件人策略和其他传递因素仍然适用。将产品功能声明仅限于在评估环境中实际演示的功能。