Skip to main content
使用本指南在 LangSmith 中配置 TLS。首先挂载内部证书颁发机构(CA),以便您的部署在系统范围内信任正确的根证书,用于数据库或外部服务调用。然后,您可以配置 Playground 特定的 mTLS,以便与支持的模型提供商进行安全通信。 本页涵盖:
  • 挂载内部证书颁发机构(CA)以在系统范围内启用数据库连接和 Playground 模型调用的 TLS
  • 使用 Playground 特定的 TLS 设置,为与支持的模型提供商进行 mTLS 提供客户端证书/密钥

为 TLS 挂载内部 CA

您必须使用 Helm chart 版本 0.11.9 或更高版本,才能使用以下配置挂载内部 CA。
使用此方法使内部/公共 CA 在 LangSmith(Playground 模型调用和数据库/外部服务连接)中被系统范围信任。
  1. 创建一个包含与数据库和外部服务进行 TLS 所需的所有 CA 的文件。如果您的部署直接与 beacon.langchain.com 通信而没有代理,请确保包含一个公共受信任的 CA。所有证书应在此文件中连接,证书之间用空行分隔。
    -----BEGIN CERTIFICATE-----
    <PUBLIC_CA>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <INTERNAL_CA>
    -----END CERTIFICATE-----
    
    ...
    
  2. 创建一个 Kubernetes secret,其键包含此文件的内容。
    kubectl create secret generic <SECRET_NAME> --from-file=<SECRET_KEY>=<CA_BUNDLE_FILE_PATH> -n <NAMESPACE>
    
  3. 如果使用自定义 CA 与您的数据库和其他外部服务进行 TLS,请向您的 LangSmith helm chart 提供以下值:
    Helm
    config:
      customCa:
        secretName: <SECRET_NAME> # 在步骤 2 中创建的 secret 的名称。
        secretKey: <SECRET_KEY> # secret 中包含 CA 包的键。
    
    clickhouse:
      external:
        tls: true # 仅在您希望 Clickhouse 使用 TLS 时启用。
    postgres:
      external:
        customTls: true # 仅在您希望 Postgres 使用 TLS 时启用。
    
  4. 确保使用支持 TLS 的连接字符串:
    • Postgres:在末尾添加 ?sslmode=verify-full&sslrootcert=system
    • Redis:使用 rediss:// 而不是 redis:// 作为前缀。

为模型提供商使用自定义 TLS 证书

此功能目前仅适用于以下模型提供商:这些 TLS 设置适用于所选模型提供商的所有调用(包括在线评估)。当提供商要求相互 TLS(客户端证书/密钥)或您必须为提供商调用使用特定 CA 覆盖信任时,请使用它们。它们补充了上面配置的内部 CA 包。
您可以使用自定义 TLS 证书在 Playground 中连接到模型提供商。如果您使用的是自签名证书、来自自定义证书颁发机构的证书或相互 TLS 身份验证,这将非常有用。 要使用自定义 TLS 证书,请设置以下环境变量。有关如何配置应用程序设置的更多信息,请参阅自托管概述
  • [可选] LANGSMITH_PLAYGROUND_TLS_KEY:PEM 格式的私钥。这必须是文件路径(用于挂载的卷)。通常仅在相互 TLS 身份验证时需要。
  • [可选] LANGSMITH_PLAYGROUND_TLS_CERT:PEM 格式的证书。这必须是文件路径(用于挂载的卷)。通常仅在相互 TLS 身份验证时需要。
  • [可选] LANGSMITH_PLAYGROUND_TLS_CA:PEM 格式的自定义证书颁发机构(CA)证书。这必须是文件路径(用于挂载的卷)。仅当您使用低于 0.11.9 的 helm 版本时才使用此方法挂载 CA;否则,请使用上面的为 TLS 挂载内部 CA 部分。
设置这些环境变量后,进入 Playground 设置页面,选择需要自定义 TLS 证书的提供商。像往常一样设置您的模型提供商配置,连接到模型提供商时将使用自定义 TLS 证书。