
一句话看懂:Snowflake 官方技术文章指出,依靠提示词工程(prompt engineering)让大语言模型(LLM)在不同租户数据间保持安全隔离并不可靠。文章提出了一套基于 Snowflake 既有治理原语(RBAC、行访问策略、会话属性)的架构方案,确保 Cortex Agent 在多租户场景下“物理上”无法越权访问数据。
事件核心:发生了什么
Snowflake Cortex Agents 允许业务用户通过自然语言查询数据,但企业在对外提供多租户应用时,面临一个硬性要求:每个租户(客户/组织)只能看到自己的数据。Snowflake 技术团队在 InfoQ CN 上发布实践文章,详细解释了三种多租户访问场景(共享访问、按用户身份访问、按租户访问)及其对应的 Cortex Agent 集成方式。关键结论是:安全绝不能依赖 LLM 每次自动生成正确的 WHERE 子句,而必须在 Snowflake 内部通过行访问策略(RAP)和会话级不可变变量强制执行。
文章特别介绍了按租户访问场景下的三种模式:每个租户创建一个用户(User-per-Tenant)、每个租户创建一个角色(Role-per-Tenant)、以及利用 Snowflake 的 SET_SYS_CONTEXT 和 SNOWFLAKE$SESSION_ATTRIBUTES 设置不可变的会话属性(Tenant Session Attribute)。其中,第三种模式通过 Cortex Agent Run API 的 variables 块传入 is_immutable_session_attribute: true,确保即使 LLM 因幻觉或对抗性提示尝试修改租户标识,Snowflake 也会拒绝该操作。
为什么重要
多租户隔离是企业级 AI Agent 落地的核心合规与安全挑战。以往应用开发团队可以在中间层强制作用域限制,但将 SQL 生成权交给 LLM 后,这条退路被切断。Snowflake 的这套方案将所有安全责任从应用层重新迁移回数据库层,利用了成熟的原语(RBAC、RAP),而非依赖不可预测的模型行为。这对于构建面向企业客户的 AI 数据产品(例如客户分析仪表盘、合规报告工具)具有直接参考价值,也反映出云数据平台在 Agent 安全治理上的思考:通过物理层面的隔离,而非模型层面的信任。
同时,该方案展示了如何在保持数据库原生治理能力的前提下,让 LLM 安全地接入敏感数据,这可能会影响未来其他数据平台(如 Databricks、BigQuery)在多租户 Agent 场景下的架构设计。
对用户/开发者/创作者的影响
对于开发者与架构师:如果正在 Snowflake 上构建集成 Cortex Agent 的多租户应用,不再需要为提示工程的安全性而焦虑。文章提供了可直接复用的技术路径和代码示例,包括 RAP 策略定义、External OAuth 集成、Cortex Agent Run API 的变量传递方式,以及 Entitlement Table 用于处理租户标示与数据值的映射关系。开发者需要注意,行访问策略的 predicate 需要与所选的租户模式(如 CURRENT_USER()、CURRENT_ROLE() 或 SYS_CONTEXT())适配,而 Session Attribute 模式需要 Snowflake 平台的特定支持。
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
对于企业采购与合规决策者:该方案意味着可以将 Cortex Agent 直接暴露给外部客户使用,而无需担心数据泄露,前提是正确实施了基于数据库原语的治理。这降低了企业将大模型功能嵌入现有 SaaS 产品的合规风险,但需要投入人力管理用户/角色的创建、权限的映射和凭据轮换。
值得关注的后续
1. 不可变会话属性的生态支持:Snowflake 的 is_immutable_session_attribute 机制是否会在未来成为其他数据仓库或 Lakehouse 平台的默认能力,这影响着跨平台 Agent 部署的一致性。
2. 竞品反应:Databricks 的 AI/BI 工具或其他大模型集成产品是否会推出类似的、基于数据库固有权限的隔离方案,而不是依赖 SQL 审核或模型调优。
3. 实际落地复杂度:文章虽然提供了模式,但按租户创建用户或角色并管理其生命周期,在大型 SaaS 系统中可能带来运维开销。行业是否会倾向于采用 Session Attribute 模式(零对象创建),以及 Snowflake 是否会在这一方向上提供更简单的默认实现,值得观察。
来源:InfoQ CN


