加密

安全性和隐私是 Langfuse 的核心设计目标。Langfuse 团队在 Langfuse Cloud 上运行 Langfuse, 该云符合 ISO27001、SOC2 Type 2、HIPAA 和 GDPR 标准 (Langfuse Cloud 安全页面,申请报告表)。

本指南涵盖了不同的加密方法和注意事项。假设您熟悉 Langfuse 的架构。

传输中加密 (HTTPS)

对于传输中的加密,强烈推荐使用 HTTPS。Langfuse 本身并不直接处理 HTTPS。相反,HTTPS 通常在基础设施层面进行管理。Langfuse 有两种主要的 HTTPS 处理方法:

  • 负载均衡器终止:在这种方法中,HTTPS 在负载均衡器级别终止。负载均衡器处理 SSL/TLS 证书和加密,然后通过 HTTP 将解密的流量转发到 Langfuse 容器。这是一种常见且简单的方法,特别是在云环境中。
    • 优点:简化证书管理,因为它通常是完全托管的服务 (例如 AWS ALB), 并减轻了应用程序服务器的加密开销。
    • 缺点:负载均衡器和 Langfuse 容器之间的流量是未加密的 (尽管通常在安全网络中)。
  • 服务网格 Sidecar: 这种方法涉及使用像 Istio 或 Linkerd 这样的服务网格。每个 Langfuse 容器旁边都部署了一个 Sidecar 代理,用于处理所有网络流量,包括 HTTPS。
    • 优点:提供端到端加密 (相互 TLS), 提供高级流量管理和可观测性。
    • 缺点:增加了部署的复杂性,需要理解 Service Mesh 的概念。

启用 HTTPS 后,可以配置 add LANGFUSE_CSP_ENFORCE_HTTPS=true, 以确保浏览器在使用 Langfuse 时仅允许 HTTPS 连接。

静态加密 (数据库)

所有 Langfuse 数据都存储在 Postgres 数据库、Clickhouse、Redis 或 S3/Blob Store 中。建议使用数据库级加密进行安全的生产部署,并在所有云提供商中提供。

在 Langfuse 云中,我们在所有数据库中使用 AES-256。

有关如何为 ClickHouse 启用静态加密的详细信息,请参阅 ClickHouse 加密文档。对于 Postgres、Redis 和 S3/Blob 存储,我们建议使用云提供商提供的托管服务,这些服务通常提供内置静态加密。对于自主管理的容器化部署,请参阅相应数据库系统的文档。

额外的应用程序级加密

除了传输中和静止加密外,敏感数据还在应用程序级别进行加密或哈希处理。

数据 加密
API 密钥 使用 SALT 进行哈希
Langfuse 控制台 JWTs 通过 NEXTAUTH_SECRET 加密
存储在 Langfuse 中的 LLM API 凭据 使用 ENCRYPTION_KEY 加密
集成凭据 (例如 PostHog) 使用 ENCRYPTION_KEY 加密
作者:Jeebiz  创建时间:2025-10-30 17:57
最后编辑:Jeebiz  更新时间:2025-10-30 18:16