chain-studio/assets/docs/federation_de.md
flemming-it d0cfa5df05
Some checks failed
Security / Security check (push) Failing after 2s
feat: federation panel + Dart SDK federation methods (0.70.0)
A new 'Föderation' destination (primary side) lists connected
satellites — name, region, version, wire version, advertised
capabilities — and adds them in one step: 'Add satellite' issues a
single-use bootstrap token bundled with the primary CA as a
ready-to-paste satellite config (the bundled CA makes the first
connect tamper-proof). Localized EN + DE, in-app help doc. Uses the
new HubService.listSatellites / issueSatelliteToken wrapping the
SDK's federation methods.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
2026-06-13 14:16:07 +02:00

1.9 KiB

Föderation

Föderation lässt einen Hub (den Primary) Capabilities auf einem anderen Hub (einem Satelliten) ausführen — etwa um eine GPU-Maschine zu erreichen oder Daten an einem bestimmten Ort zu halten. Ein Flow-Schritt entscheidet sich per on:-Selektor dafür; alles andere bleibt wie bei einem lokalen Schritt.

Dieses Panel ist die Primary-Seite: Es zeigt die aktuell verbundenen Satelliten und richtet neue ein.

Satellit hinzufügen

  1. Satellit hinzufügen drücken und einen Namen vergeben (z.B. satellite-a).
  2. Der Hub stellt ein einmaliges Bootstrap-Token aus und legt sein CA-Zertifikat bei. Kopiere die gezeigte Konfiguration in die config.yaml des Satelliten (ein Einfügen) und exportiere das Token als FAI_BOOTSTRAP_TOKEN.
  3. Starte den Satelliten. Er wählt sich beim Primary ein, der CA-Pin macht den ersten Connect manipulationssicher, und der Primary signiert ihm ein kurzlebiges Zertifikat. Danach erscheint er in dieser Liste.

Warum es sicher bleibt

  • Der Satellit wählt sich nach außen ein — keine eingehende Firewall-Änderung nötig.
  • Jede Verbindung ist mTLS. Der erste Connect wird gegen die beigelegte CA verifiziert; spätere Connects authentifizieren sich mit dem eigenen Zertifikat des Satelliten (kein Token nötig).
  • Der Satellit löst auf und führt die Capability in seiner eigenen Sandbox aus — nur Eingaben gehen über die Leitung, niemals Code.
  • Jeder hub-übergreifende Aufruf wird auf beiden Seiten protokolliert (dispatched_to), sodass Audit-Trail und Replay-Determinismus die Föderation überstehen.

Satellit in einem Flow nutzen

Ergänze einen on:-Selektor an einem Schritt:

- id: extract
  use: text.extract@^1
  on: region=berlin        # oder pin=satellite-a, auto:healthiest, auto:lowest_rtt
  with:
    input: $inputs.doc