← Wähle zuerst ein Event, um Teams · Instruktur · Welle · Game zu bearbeiten.
Events–
Event
Code
Start
Status
Teams
Instr.
Kommende zuerst. „bearbeiten" öffnet die Event-Details unten. Über „+ Event anlegen" oben ein neues Event erstellen.
Event bearbeiten–
= benötigte Server-Paare aus dem Pool. 0 = ohne Reservierung.
Standard: manuell — Server werden unter Teams → Appliance · Rollout per Team-Dropdown zugewiesen.
Standard: an. Aus = die Assets werden im SOAR-Asset-Dialog von Hand angelegt (Fallback bleibt immer verfügbar).
Bearbeitet das oben gewählte Event. Start leer = sofort offen. Ist es das aktive Teilnehmer-Event, wirken Änderungen sofort im Portal.
Event-Code (Teilnehmer)
–
Format XX-0000. Teilnehmer geben ihn bei der Registrierung an. Der QR öffnet das Portal mit vorbefülltem Code (). „Neu generieren" ändert den Code — bereits registrierte Nutzer bleiben gültig.
Zuweisungen– kein Event gewählt
Event oben wählen …
Instruktoren sind global und können N Events zugewiesen werden.
Neues Event anlegen
= benötigte Server-Paare aus dem Pool. 0 = ohne Reservierung.
Standard: manuell — Server werden unter Teams → Appliance · Rollout per Team-Dropdown zugewiesen.
Standard: an. Aus = die Assets werden im SOAR-Asset-Dialog von Hand angelegt (Fallback bleibt immer verfügbar).
Legt ein weiteres Event an; erscheint dann unter „Events verwalten". Start leer = sofort offen.
Teams für Event:–
Team anlegen
ES/SOAR-Endpunkte des Teams (optional — später per CSV nachziehbar).
Mintet den Team-Token, legt optionale ES/SOAR-Endpunkte an und ordnet das Team automatisch dem oben gewählten Event zu.
Team registrieren
Mintet einen Team-Token (Bearer) und ordnet das Team automatisch dem oben gewählten Event zu. Der Token geht ins CTA-Referee-Asset bzw. in die Team-Console.
Löscht das Team aus allen Speichern: Lobby + Mitglieder, ES/SOAR-Endpunkte, Token, Event-Zuordnung; das Server-Paar geht zurück in den Pool. Die Scoring-Historie bleibt. Nicht möglich, solange eine Welle des Events läuft.
Appliance · Rollout (Server-Inventar)–
Ein Server-Paar = eine ES-Instanz (HEC + Search) und eine SOAR-Instanz. Tokens sind Write-only: sie werden gespeichert, aber nie wieder angezeigt.
Splunk Cloud oder on-prem? Die drei URLs unterscheiden sich in Hostname und Port: der Cloud-HEC liegt auf https://http-inputs-<stack>.splunkcloud.com (Port 443, nicht:8088; auf GCP/Azure mit Punkt statt Bindestrich), die Search-URL braucht in beiden Welten :8089 — in der Cloud erst, nachdem Splunk Support den Port freigeschaltet hat —, und SOAR in der Cloud läuft ohne:8443. Vollständige Plattform-Matrix in der Anleitung.
Der Index cta muss im Ziel-Splunk vor dem HEC-Token existieren — beim Anlegen des Tokens wird er als erlaubter Index ausgewählt. Fehlt er, antwortet der HEC später mit HTTP 400 Incorrect index und das Token muss neu angelegt werden. Splunk Cloud: Index von Hand anlegen; on-prem bringt ihn die cta-ops.spl mit.
Ändert nur die Beispiele in diesem Formular — nichts wird gespeichert, Prüfung und Provisionierung bleiben unberührt. Die jeweils andere Form steht im Tooltip des Feldes.
ES-Search-Token: „Auth fehlgeschlagen“ heißt hier in der Praxis meistens abgelaufen — Splunk meldet abgelaufene, noch nicht gültige und ungültige Tokens identisch als call not properly authenticated. Die Gültigkeit wird beim Anlegen gesetzt: in Settings → Tokens → New Token das Feld Expiration ausfüllen (z. B. +30d) und Not Before leer lassen.
Der ES-HEC-Test schreibt ein markiertes Wegwerf-Event (cta_selftest=true) in den cta-Index des Ziel-Splunk — nur so lässt sich das HEC-Token wirklich prüfen. ES-Search und SOAR werden nur gelesen (/services/server/info bzw. GET /rest/version).
Diesen Zugang sieht das Team, dem das Paar zugewiesen ist, in seiner Lobby — inklusive Passwort, es ist seine eigene Umgebung. Lege dafür je Paar einen eigenen Splunk-Account an, keinen gemeinsamen. Nach dem Speichern wird das Passwort hier nie wieder angezeigt.
Optional beim Erfassen — kann auch später über „Bearbeiten“ nachgetragen werden. Solange er fehlt, sieht das Team „Zugang wird noch hinterlegt“.
gesetzt
Die URL muss aus dem Browser der Teilnehmer erreichbar sein (keine internen 10.x-Adressen). Leeres Passwort-Feld beim Bearbeiten = vorhandenes Passwort behalten.
In einer freien Zeile oben das Team wählen (nur Teams ohne Server-Paar) und „Zuweisen“ klicken. Die sechs Endpunkte werden dem Team hinterlegt, der Prep-Countdown startet. KEINE SOAR/ES-Schreibzugriffe — die Paare sind fertig installiert.
Standard: manuell. Eingeschaltet = ein freies Paar wird bei Team-Gründung / CSV-Import automatisch gebunden (Verhalten wie zuvor).–
Pro zugewiesenem Team ein vorkonfiguriertes cta-referee.tgz: Game-Server-URL, Team-ID, Team-Token und „TLS prüfen = aus“ sind im App-Manifest als Standardwerte hinterlegt — der Asset-Dialog in SOAR öffnet sich vorbelegt. Das Paket enthält das Team-Token im Klartext: nur als Admin laden, nur an das jeweilige Team weitergeben. Enrichment/Response bleiben generisch (Appliance/Rollout).
Globales Inventar vorinstallierter ES/SOAR-Paare (1 Paar ↔ max. 1 Team). Beim Archivieren oder Löschen eines Events bzw. Teams geht das Paar zurück ins freie Inventar. Tokens werden nie angezeigt.
Team provisionierenCreds?
Legt namespaced cta_<event>_<team>-User+Rollen in ES + SOAR an (additiv). Dry-Run zeigt nur den Plan. „Live" braucht ES/SOAR-Admin-Creds serverseitig — sonst „nicht konfiguriert".
Provisioning-Zugang (ES/SOAR)–
Server-seitig gespeichert (600-Datei), Secrets werden NIE angezeigt. Leere Secret-Felder lassen den bestehenden Wert unverändert. Überschreibt die env-Variablen.
Teilnehmer für Event: ––––Wechsel des Events oben unter Event(s).
Teilnehmer
Spieler
Team
Sprache
Herkunft
Status
Für alle vom Admin angelegten, noch nicht eingerichteten Teilnehmer des oben gewählten Team-Filters. Die Links werden nur einmal angezeigt.
angelegtvom Admin angelegt, noch kein Einrichtungs-Link. Kein Passwort gesetzt — Anmelden ist nicht möglich.Link erzeugtEinrichtungs-Link erzeugt und dir einmal angezeigt; offen bis „gültig bis". Ein neuer Link macht den alten ungültig.Link abgelaufen72 h vorbei, nicht eingelöst. „Neuer Link" erzeugt einen neuen.Link eingelöstPasswort selbst gesetzt; der Link ist verbraucht. Ab hier gibt es keinen Link mehr für diese Person.aktivhat sich nach der Einrichtung mindestens einmal selbst angemeldet.selbst registrierthat sich mit Event-Code selbst angemeldet (heutiger Weg) — braucht keinen Link.
Team ändern
–
→
Nur Teams dieses Events. War die Person Kapitän, geht die Kapitänsrolle an das nächste Mitglied (wie beim Verlassen).
Einrichtungs-Link
Link persönlich weitergeben, gilt 72 h, einmal verwendbar. Er wird nur jetzt angezeigt — nach dem Schließen ist er nicht mehr abrufbar (gespeichert ist nur ein Hash). Ein neuer Link macht den vorigen ungültig.
CSV-ImportProbelauf
Schema: player_name,email,team_name,lang · team_name leer = Solo-Pool, unbekannt = neues Team · lang de|en|es|fr (leer = de) · max. 200 Zeilen. Endpunkt- oder Token-Spalten werden abgelehnt, nicht ignoriert.
#
Spieler
Team
Ergebnis
Erst prüfen. Zeilen mit ✗/⚠ werden nicht angelegt. Der Import sendet keine Mail und erzeugt keine Links.
Teilnehmer anlegen
Spielername = Nickname, kein Klarname (#117): erscheint in Lobby, Teams-Übersicht und Scoreboard. 2–24 Zeichen, Buchstaben/Ziffern/Leerzeichen/- _ . — keine E-Mail. Die Person kann ihn beim Einrichten einmal ändern.
Volle Teams sind nicht wählbar — die Team-Größe gilt für Admin und Teilnehmer gleich. Mehr Plätze: unter Event(s) die Team-Größe erhöhen.
Instruktoren verwalten–
Instruktoren melden sich unter /ui/instructor.html mit E-Mail + Passwort an (read-only: Teams, Scoreboard, Aufgaben+Lösungen, Team-Server-Überwachung).
Push & Scheduler beziehen sich auf dieses Event (leer = Legacy/alle Teams).
Welle pushen (Variante · HEC an alle Teams)
Jedes Team bekommt seine deterministische Variante (4 von N Typen des Tiers, docs/15) — parallel an alle Team-ES. „arrived" = HEC-Success. Alerts nutzen die Event-Jahresversion.
Wave-Scheduler–
Welle
Start (min)
Dauer (min)
Kadenz
wiederholt dieselben Alerts, kein Nachschub
Strom ab (min)
alle ~N min
max. Alerts je Team
Status
Strom (nur mit CTA_ALERT_STREAM=1): „Strom ab“ = Minuten nach Wellenstart bis zum ersten Strom-Alert · „alle ~N min“ = mittlerer Abstand der Schübe, zufällig ±30 % · „max.“ = Strom-Alerts je Team aus dieser Welle, 0 = keine. Leer = Standard (3 min · 2 min · automatisch).
Server-interner Timer: jede Welle wird zu ihrer Startzeit automatisch per HEC an alle Team-ES gepusht (Varianten je Team). Kadenz 0 = einmalig, sonst Re-Push alle N min bis Wellen-Ende. Elapsed: –
Alert issuen (Einzel · Test)
Erzeugt deterministisch aus Seed einen Alert (Ground Truth bleibt serverseitig). Für den ES-Pfad wird das Event zusätzlich per HEC zugestellt.
Scoreboard · Monitoring · Live-Ops dieses Events (leer = Legacy/alle).
Teams & Scores–
Lade …
Punkte gutschreiben–
Sofort auf dem Scoreboard sichtbar. Kein Undo — eine Korrektur ist nur eine Gegenbuchung mit negativem Wert. Zähler (gelöst/falsch/SLA) und Streak bleiben unverändert; jede Buchung wird mit Grund und Zeit protokolliert.
Letzte Buchungen
Lade …
Live-Ops–
Teams
–
Gelöst gesamt
–
Falsch-Flags
–
SLA-Brüche
–
Werte aggregiert aus /scoreboard (auto-refresh 4 s).
Server-Übersicht–
Lade …
Pro Event gruppiert (Events laufen parallel) · Splunk/SOAR erreichbar · Senden (letzter HEC-Push) · Empfangen (Selbsttest) · SOAR antwortet (/rest/version). Erreichbarkeit alle 15 s; „Jetzt prüfen" erzwingt eine frische Messung. „▶ Test" sendet je Team ein getaggtes Wegwerf-Event.