---
url: 'https://dxpr.com/de/hc/dokumentation/dxpr-builder-lernen/erste-schritte/hinter-einer-firewall'
title: 'Firewall und Datenresidenz | DXPR'
author:
  name: Jurriaan
  url: 'https://dxpr.com/users/jurriaan'
date: '2026-10-23T23:57:21+00:00'
updated: '2026-10-24T20:03:43+00:00'
copyright: 'Copyright DXPR. All rights reserved.'
type: article
summary: 'DXPR Builder speichert Ihre Seiten in Ihrer eigenen Drupal-Datenbank. Es kontaktiert DXPR-Dienste für Lizenzprüfungen, Editor-Assets und KI-Anfragen. Diese Seite listet jede Verbindung auf, was jede überträgt, wo die DXAI-Kavya-Modelle laufen, wie der Produktschlüssel gespeichert wird und was funktioniert, wenn der ausgehende Zugriff eingeschränkt ist.'
tags:
  - 'Meet compliance requirements'
image: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
published: true
og:
  site_name: DXPR
  updated_time: '2026-10-24T20:03:43+0000'
  'image:alt': 'DXPR, powered by Drupal: AI-powered Drupal for marketers.'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      mainEntity: {  }
    -
      '@type': TechArticle
      headline: 'Firewall und Datenresidenz'
      description: 'DXPR Builder speichert Ihre Seiten in Ihrer eigenen Drupal-Datenbank. Es kontaktiert DXPR-Dienste für Lizenzprüfungen, Editor-Assets und KI-Anfragen. Diese Seite listet jede Verbindung auf, was jede überträgt, wo die DXAI-Kavya-Modelle laufen, wie der Produktschlüssel gespeichert wird und was funktioniert, wenn der ausgehende Zugriff eingeschränkt ist.'
      image:
        '@type': ImageObject
        url: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
        width: '1200'
        height: '630'
      datePublished: '2026-10-23T23:57:21+0000'
      dateModified: '2026-10-24T20:03:43+0000'
      author:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      mainEntityOfPage: 'https://dxpr.com/de/hc/dokumentation/dxpr-builder-lernen/erste-schritte/hinter-einer-firewall'
      articleSection: 'Compliance erfüllen'
    -
      '@type': WebPage
      '@id': 'https://dxpr.com/de/hc/dokumentation/dxpr-builder-lernen/erste-schritte/hinter-einer-firewall'
      description: 'DXPR Builder speichert Ihre Seiten in Ihrer eigenen Drupal-Datenbank. Es kontaktiert DXPR-Dienste für Lizenzprüfungen, Editor-Assets und KI-Anfragen. Diese Seite listet jede Verbindung auf, was jede überträgt, wo die DXAI-Kavya-Modelle laufen, wie der Produktschlüssel gespeichert wird und was funktioniert, wenn der ausgehende Zugriff eingeschränkt ist.'
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: Startseite
            item: 'https://dxpr.com/de'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
      inLanguage: de
---
[Hilfe-Center](/de/hc)/[Dokumentation](/de/hc/dokumentation) /[DXPR Builder lernen](/de/hc/documentation/learn-dxpr-builder) /[Website verwalten](/de/hc/documentation/learn-dxpr-builder/manage) /[Compliance erfüllen](/de/hc/documentation/learn-dxpr-builder/manage/compliance) # Firewall und Datenresidenz.

 DXPR Builder lernenWebsite verwaltenCompliance erfüllen

   ## In diesem Leitfaden

 Verwandte Leitfäden

- [DXPR Builder auf Ihrer Drupal-Website installieren](/de/hc/dokumentation/dxpr-builder-lernen/erste-schritte/installation)
- [Sicherheit](/de/hc/dokumentation/dxpr-builder-lernen/erweitert/sicherheit)
- [Lizenz- und Produktschlüsselfehler](/de/hc/dokumentation/dxpr-builder-lernen/fehlerbehebung/lizenz-und-produktschluessel)

DXPR Builder speichert Ihre Seiten in Ihrer eigenen Drupal-Datenbank. Es kontaktiert DXPR-Dienste für Lizenzprüfungen, Editor-Assets und KI-Anfragen. Diese Seite listet jede Verbindung auf, was jede überträgt, wo die DXAI-Kavya-Modelle laufen, wie der Produktschlüssel gespeichert wird und was funktioniert, wenn der ausgehende Zugriff eingeschränkt ist.

## Verbindungen im Überblick

| Host | Hergestellt von | Zweck | Benötigt für |
|---|---|---|---|
| `dxpr.com` | Drupal-Server | Lizenzstatus, Domainprüfung, Synchronisierung lizenzierter Benutzer | Bearbeitung |
| `cdn2.dxpr.com` | Browser der Redaktion | Editor-JavaScript und -CSS (primär) | Bearbeitung |
| `cdn.dxpr.com` | Browser der Redaktion | Editor-JavaScript und -CSS (Fallback) | Bearbeitung |
| `kavya.dxpr.com` | Drupal-Server | KI-Anfragen und KI-Credit-Guthaben | KI-Funktionen |
| `html-extract.dxpr.com` | Browser der Redaktion | KI-„Clone from URL“ | KI-Funktionen |
| `r.jina.ai` (Drittanbieter) | Browser der Redaktion | Liest Webseiten, deren URLs in einem Prompt erscheinen | KI-Funktionen |
| `tuur.dxpr.com` | Browser der Redaktion | Editor-Nutzungsanalyse | Optional |

Alle Verbindungen nutzen HTTPS auf Port 443. Besucher der Website laden niemals etwas von DXPR-Servern: Veröffentlichte Seiten werden aus in der Datenbank gespeichertem HTML gerendert und das Frontend-Skript (`dxpr_builder/dxpr_frontend.min.js`) wird im Modul mitgeliefert. `app.dxpr.com` erscheint nur in Links, die Administratoren gezeigt werden.

## Lizenzprüfungen (`dxpr.com`)

Der Drupal-Server ruft vier Endpunkte auf, definiert in `src/Service/DxprBuilderLicenseServiceInterface.php`, jeden mit dem Produktschlüssel als `Authorization: Bearer`-Header.

| Endpunkt | Wann | Gesendete Daten |
|---|---|---|
| `GET /api/user-license` | Alle 24 Stunden wenn autorisiert, alle 30 Minuten wenn nicht | `gba` und `users_tier` (Anzahl Konten mit der Berechtigung `edit with dxpr builder` und die Stufe, in die sie fällt), `values_count` (Inhaltselemente mit Builder-Feld), `site_base_url`, `site` (ein HMAC des Hash-Salts der Website; der Salt selbst wird nicht gesendet), `site_mail` (aus `system.site`), `project`, `version` |
| `GET /api/domain-blacklist/{hostname}` | Stündlich | Nur der Hostname; kein Autorisierungs-Header |
| `POST /api/central-user-storage/{add,remove,sync}` | Wenn sich Konten, Berechtigungen oder der Produktschlüssel ändern; Folgeaufrufe werden in eine Warteschlange gestellt und per Cron ausgeführt | Hostname plus, für jedes Konto mit der Bearbeitungsberechtigung, seine E-Mail-Adresse und Rollennamen. Konten ohne gültige E-Mail-Adresse werden übersprungen |
| `GET /api/user-license/users` | Wenn die Seite User Licenses geöffnet wird | Nichts außer dem Schlüssel |

Seiteninhalte sind niemals Teil einer Lizenzanfrage. Das Modul gibt zudem ein verstecktes `<div>` auf der Startseite aus, das eine feste Markierungszeichenkette, die Lizenzstufe, die Zahl der Bearbeitenden und die Speicherzahl enthält (`dxpr_builder_page_bottom()` in `dxpr_builder.module`). Es ist im Seitenquelltext lesbar.

## Editor-Assets (`cdn2.dxpr.com`, `cdn.dxpr.com`)

Wenn **Editor Assets** auf **Cloud** steht (die Vorgabe), lädt der Browser der Redaktion das Builder-JavaScript und -CSS von `https://cdn2.dxpr.com/<version>/`, mit Fallback auf `https://cdn.dxpr.com/<version>/`nach einer fehlgeschlagenen `/health`-Prüfung. Der Produktschlüssel wird an jede Asset-URL als `jwt`-Abfrageparameter angehängt (`dxpr_builder_library_info_build()`). Das CDN prüft diesen Schlüssel: Eine 401-Antwort lässt `js/editor_validation.js` „Your product key is not valid“ anzeigen.

Die Optionen **Local (minified)** und **Local (unminified)**erscheinen nur auf dem Einstellungsformular, wenn eine gebaute Kopie des Editors im `dxpr_builder/`-Verzeichnis des Moduls liegt, und eine solche Kopie wird automatisch genutzt, selbst wenn Cloud gewählt ist. Das Git- Repository trackt diese gebauten Dateien nicht, sodass ein von drupal.org heruntergeladenes Release den Editor vom CDN lädt.

## KI-Anfragen (`kavya.dxpr.com`)

Der Browser kontaktiert `kavya.dxpr.com` niemals. Der Editor postet an Routen auf Ihrer eigenen Website (`/dxpr_builder/ajax/ai/chat`, `/dxpr_builder/ajax/ai/image`, `/dxpr_builder/ajax/ai/image/edit`; alle erfordern die Berechtigung `edit with dxpr builder`, ein CSRF- Token und ein lizenziertes Konto). Die Website leitet jede Anfrage über den DXPR-Anbieter des Drupal-AI-Moduls (`ai_provider_dxpr`) an `https://kavya.dxpr.com/v1/chat/completions`, `/v1/images/generations` oder `/v1/images/edits` weiter, authentifiziert mit dem im Key-Modul gespeicherten DXPR-API-Schlüssel. Die `host`-Einstellung des Anbieters (`ai_provider_dxpr.settings`) kann Anfragen an einen anderen Host richten. Separat ruft die KI-Einstellungsseite `GET https://kavya.dxpr.com/v1/account/balance`mit dem Produktschlüssel auf, um Ihr Credit-Guthaben zu zeigen.

### Was eine KI-Anfrage enthält

Nur KI-Funktionen senden Seiteninhalte von der Website weg, und nur, wenn Sie sie auslösen (`dxpr_builder/build/dxpr-global/ai-service.js`).

| Anfrage | Gesendeter Inhalt |
|---|---|
| Text- und Seitengenerierung | System-Prompt, Ihr Prompt, Chatverlauf |
| Mit ausgewähltem Element | Das äußere HTML des Elements: ganz, wenn 500 Zeichen oder weniger, sonst seine ersten und letzten 200 Zeichen |
| Operationen auf Seitenebene | Das bestehende Seiten-HTML, bis zu 50.000 Zeichen; die vollständige Seite, wenn die ganze Seite ersetzt wird |
| Optionale Felder | Modellname, Reihenfolge aktivierter Anbieter, ein vorhergesagtes HTML-Ergebnis, erlaubte Tags und Klassen, ein `web_search`-Flag, ein Antwortformat |
| Bildgenerierung | Prompt, Größe, Qualität, Hintergrund |
| Bildbearbeitung | Dasselbe plus das Quellbild, base64-codiert |

Zwei Hilfen holen Webseiten aus Ihrem Browser (`ai-service-url-fetch.js`): Eine URL in einem Prompt wird mit angehängtem `.md` angefragt und, wenn das fehlschlägt, über `https://r.jina.ai/<url>`, einen Drittanbieter-Lesedienst, der nicht von DXPR betrieben wird; ein Prompt, der das Klonen einer Seite verlangt, sendet die URL an `https://html-extract.dxpr.com/?url=...`. In beiden Fällen wird nur die URL gesendet.

KI-Ausgaben werden auf dem Rückweg gefiltert. Erlaubte Domains, blockierte Tags und erlaubte Tags werden unter `/admin/dxpr_studio/dxpr_builder/ai_settings`unter **AI Output Filtering** gesetzt.

## Wo die DXAI-Kavya-Modelle laufen

DXPR Builder bietet drei Modelle (`src/Constants/AiModelConstants.php`):

| Modell | API-Name | In Einstellungsformular gezeigte Beschreibung |
|---|---|---|
| DXAI Kavya M1 | `kavya-m1` | Beste Leistung (OpenAI, Google Gemini, Anthropic) |
| DXAI Kavya M1 EU | `kavya-m1-eu` | Datenschutzorientiert (MistralAI) |
| DXAI Kavya M1 Fast | `kavya-m1-fast` | Schnellste Antworten, geringere Qualität |

Es gibt in keinem der Module eine Regionseinstellung. Die Datenresidenz wird über das Modell und die aktivierten Upstream-Anbieter gewählt:

- `kavya-m1` wechselt zwischen fünf Anbietern, aufgeführt mit ihrem Land im DXPR-AI-Anbieter-Einstellungsformular: Anthropic (Vereinigte Staaten), Google Gemini (Vereinigte Staaten), MistralAI (Frankreich), OpenAI (Vereinigte Staaten), XAI (Vereinigte Staaten). Im Modus **Manual priority** ziehen Sie Anbieter zwischen **Enabled** und **Disabled**und legen ihre Reihenfolge fest.
- `kavya-m1-eu` nutzt nur MistralAI. Die README des DXPR-AI-Anbieters besagt, es „hält Daten innerhalb europäischer Grenzen (Server in den Niederlanden)“; seine Dokumentation besagt, dass der Kavya-Server in den Niederlanden läuft mit Backup in Deutschland, dass Anfragen über MistralAI-Server in Frankreich laufen und dass es niemals auf einen Nicht-EU-Anbieter zurückfällt. Diese Standorte sind von DXPR dokumentiert, nicht durch etwas im Drupal-Code erzwungen.

Mit installiertem `ai_provider_dxpr` wird das Modell unter `/admin/config/ai/providers/dxpr` gewählt und seine `allowed_models`-Einstellung steuert, welche Modelle die Redaktion wählen darf. Ohne es werden Modell und Anbieterreihenfolge unter `/admin/dxpr_studio/dxpr_builder/ai_settings` gesetzt.

## Wie der Produktschlüssel gespeichert wird

Der Bereich **License** von `/admin/dxpr_studio/dxpr_builder/settings` bietet zwei **Storage method**-Optionen (`src/Form/DxprBuilderSettingsForm.php`, `src/Service/DxprBuilderKeyService.php`):

- **Key module**: Der Schlüssel wird aus der unter **Key** gewählten Key-Entity gelesen. `dxpr_builder_update_9020()` verschiebt einen in `dxpr_builder.settings` gefundenen Schlüssel in die Key-Entity `dxpr_builder_jwt`, deren **Configuration**-Anbieter ihn weiterhin exportiert. Nur der **File**- oder **Environment**-Anbieter hält den Schlüssel aus Konfigurationsexporten heraus.
- **Configuration storage**: Der Schlüssel wird im Klartext als `dxpr_builder.settings.json_web_token` gespeichert und ist in Konfigurationsexporten enthalten.

Der Produktschlüssel ist ein JSON Web Token, das Lizenzaufrufe, den Credit-Guthaben-Aufruf und die CDN-Asset-URLs authentifiziert; behandeln Sie ihn als Berechtigungsnachweis.

## Firewall-Konfiguration

| Von | Ausgehendes HTTPS erlauben an | Hinweise |
|---|---|---|
| Drupal-Server | `dxpr.com` | Lizenz |
| Drupal-Server | `kavya.dxpr.com` | Nur KI |
| Arbeitsplätze der Redaktion | `cdn2.dxpr.com`, `cdn.dxpr.com` | Editor-Assets |
| Arbeitsplätze der Redaktion | `html-extract.dxpr.com`, `r.jina.ai` | Nur KI; ein Blockieren deaktiviert nur URL-Recherche und Klonen |
| Arbeitsplätze der Redaktion | `tuur.dxpr.com` | Analyse; ein Blockieren hat keine Auswirkung auf die Bearbeitung |

Analyse (`dxpr_builder/build/dxpr-analytics/`, PostHog) identifiziert Ereignisse über Ihre E-Mail-Adresse und den Hostnamen der Website. Schalten Sie sie ab mit `drush config:set dxpr_builder.settings record_analytics 0`; der Schlüssel hat kein Formularfeld. Zwei weitere Schlüssel ohne Formularfeld werden aus `dxpr_builder.settings` gelesen: `cloud_url` ersetzt die CDN-Basis-URL (`VERSION` wird durch die Modulversion ersetzt) und `license_endpoint` ersetzt den zentralen Benutzerspeicher-Endpunkt. Setzen Sie sie mit einer Konfigurationsüberschreibung in `settings.php`.

## Proxy-Konfiguration

Lizenz- und KI-Aufrufe nutzen Drupals HTTP-Client, daher wird ein Proxy in `settings.php` konfiguriert:

```php
$settings['http_client_config']['proxy'] = [
  'http' => 'http://proxy.example.com:8080',
  'https' => 'http://proxy.example.com:8080',
  'no' => ['localhost', '127.0.0.1'],
];

```

Die Browser der Redaktion laden die CDN-Assets und rufen die Analyse- und Lesedienste direkt auf, sodass diese Anfragen den Proxy-Einstellungen des Arbeitsplatzes folgen.

## Air-Gap- und On-Premise-Bereitstellungen

DXPR Builder läuft auf Ihrem eigenen Server; keine Inhalte laufen über eine gehostete Komponente. Wenn weder der Server noch die Redaktion DXPR erreicht:

| Funktion | Ohne jeglichen DXPR-Zugriff |
|---|---|
| Ausliefern veröffentlichter Seiten | Funktioniert; nichts wird von DXPR geladen |
| Inhaltsspeicherung | Funktioniert; Seiten sind Feldwerte in Ihrer Datenbank |
| Editor laden | Schlägt fehl ohne eine lokale Editor-Build in `dxpr_builder/` |
| Lizenzvalidierung | Schlägt fehl. Das Modul protokolliert den Fehler, zeigt Administratoren „We are having trouble connecting to the DXPR servers“ und versucht es alle 30 Minuten erneut. Die Bearbeitung ist nicht blockiert, solange ein Produktschlüssel konfiguriert ist |
| User-Licenses-Seite | Leer; sie braucht `dxpr.com` |
| KI-Funktionen | Nicht verfügbar; jede Anfrage läuft über `kavya.dxpr.com` |
| Analyse, URL-Recherche, Klonen per URL | Wird stillschweigend übersprungen |

Ohne Produktschlüssel überhaupt wendet das Modul im Code die Grenzen der Gratis-Stufe an: ein Konto und 100 Inhaltselemente.

Eine vollständig lokale Bereitstellung funktioniert daher für Ausliefern und Speichern von Inhalten; die Bearbeitung braucht CDN- Zugriff oder eine lokale Editor-Build und die Lizenzvalidierung braucht `dxpr.com`. Kontaktieren Sie DXPR, wenn Sie eine intern zu hostende Editor-Build brauchen.

## Wie geht es weiter?

- [Installation](/de/hc/dokumentation/dxpr-builder-lernen/erste-schritte/installation): Produktschlüssel und Speichermethode konfigurieren
- [KI-Funktionen](/hc/documentation/learn-dxpr-builder/ai): KI aktivieren und ein Modell wählen
- [Sicherheit](/de/hc/dokumentation/dxpr-builder-lernen/erweitert/sicherheit): Berechtigungen und Ausgabefilterung
- [Lizenz und Produktschlüssel](/de/hc/dokumentation/dxpr-builder-lernen/fehlerbehebung/lizenz-und-produktschluessel): Fehlerbehebung bei Lizenzfehlern