WebsitePlatform Login
DataVault Deployment

Eigene Zertifikate (CA)

DataVault für interne Unternehmenszertifikate konfigurieren

Diese Anleitung hilft Ihnen, DataVault in Umgebungen mit SSL-Inspektion oder internen Zertifikaten einzurichten.

Wann Sie das brauchen

Viele Unternehmen nutzen interne Zertifizierungsstellen (CA) für:

  • SSL-Inspektion: Firewalls entschlüsseln und verschlüsseln HTTPS-Verkehr neu
  • Interne Dienste: Selbst gehostete SharePoint-, Confluence- oder andere Dienste verwenden interne Zertifikate

Ohne richtige CA-Konfiguration können SSL-Fehler auftreten bei:

  • Download von Embedding-Modellen von Hugging Face
  • Dateisynchronisation mit rclone
  • Verbindung zu app.meingpt.com
  • Zugriff auf interne Datenquellen

Schnelle Einrichtung

Schritt 1: CA-Zertifikat besorgen

Fragen Sie Ihr IT-Team nach dem CA-Zertifikat Ihres Unternehmens. Es sollte im PEM- oder CRT-Format vorliegen:

-----BEGIN CERTIFICATE-----
MIIFuTCCA6GgAwIBAgIU...
-----END CERTIFICATE-----

Speichern Sie es als company-ca.pem in Ihrem Projektordner.

Schritt 2: Zertifikat einbinden

Fügen Sie die Zertifikatsdatei zu Ihrer docker-compose.yaml hinzu:

services:
  vault:
    image: meingpt/vault:latest
    volumes:
      - ./company-ca.pem:/certs/company-ca.pem:ro

Schritt 3: Umgebungsvariable setzen

Teilen Sie DataVault mit, dass es Ihr Zertifikat nutzen soll:

services:
  vault:
    environment:
      - VAULT_CUSTOM_CA_FILE=/certs/company-ca.pem

Vollständiges Beispiel

services:
  vault:
    image: meingpt/vault:latest
    volumes:
      - ./config/app_config.yaml:/app/vault_config.yaml:ro
      - ./company-ca.pem:/certs/company-ca.pem:ro
    environment:
      - VAULT_CONFIG_FILE_PATH=/app/vault_config.yaml
      - VAULT_CUSTOM_CA_FILE=/certs/company-ca.pem

Wenden Sie die gleichen Einstellungen auf alle DataVault-Dienste an: vault-search, vault-ingestion und vault-preflight.

Wie es funktioniert

Wenn Sie VAULT_CUSTOM_CA_FILE setzen, führt der Container automatisch folgendes aus:

  1. Liest Ihre CA-Zertifikatsdatei
  2. Setzt SSL_CERT_FILE für Python SSL und rclone
  3. Setzt REQUESTS_CA_BUNDLE für HTTP-Bibliotheken

Dadurch vertrauen alle Netzwerkverbindungen den Zertifikaten Ihres Unternehmens.

Überprüfen

Prüfen Sie die Container-Logs nach dem Start:

docker logs vault-search | head -n 10

Sie sollten sehen:

[entrypoint] SSL_CERT_FILE=/certs/company-ca.pem
[entrypoint] REQUESTS_CA_BUNDLE=/certs/company-ca.pem

Problembehandlung

"File not found" Warnung

[entrypoint] WARN: VAULT_CUSTOM_CA_FILE is set but file not found

Lösung: Überprüfen Sie:

  • Die Datei existiert auf Ihrem Host
  • Der Volume-Mount-Pfad ist korrekt
  • Die Datei ist lesbar (kein Verzeichnis)

Weiterhin SSL-Fehler

Ihre CA-Datei könnte unvollständig sein. Fragen Sie Ihr IT-Team nach der vollständigen Zertifikatskette:

  • Root-CA-Zertifikat
  • Intermediate-CA-Zertifikate (falls vorhanden)

Wenn Sie mehrere Zertifikate haben, können Sie sie zu einer Bundle-Datei zusammenfügen:

cat root-ca.pem intermediate-ca.pem > company-ca.pem

Zertifikatsverzeichnis verwenden

Wenn Sie mehrere CA-Dateien in einem Verzeichnis haben:

environment:
  - VAULT_CUSTOM_CA_DIR=/certs/ca-dir
volumes:
  - ./ca-certificates:/certs/ca-dir:ro

Erweitert: Manuelle Konfiguration

Für direkte Kontrolle können Sie diese Variablen selbst setzen:

VariableVerwendet von
SSL_CERT_FILEPython SSL, rclone, aiohttp
REQUESTS_CA_BUNDLErequests, huggingface_hub
SSL_CERT_DIRGo x509 (Verzeichnis mit CA-Dateien)

Wenn Sie diese Variablen manuell setzen, überschreibt VAULT_CUSTOM_CA_FILE sie nicht.