Leistungen
Meistens prüfe ich Architekturen und bestehende Systeme oder setze definierte Backend- und Schnittstellenänderungen um. Kurze Aufträge sind willkommen.
Architektur und Beratung
Sie bringen eine klar umrissene technische Frage mit. Sie erhalten eine schriftliche Empfehlung, die die Optionen abwägt und sagt, was als Nächstes zu tun ist.
MonitoringHive: Alternativen in einem Branding-Entscheid
Braucht eigenes Portal-Branding einen eigenen Dienst, und was darf es nie tun? Der Architekturentscheid beantwortet beides und nennt die verworfenen Alternativen, damit das Team umsetzen kann, ohne die Frage neu aufzurollen.
Unknown host returns the default MonitoringHive brand with HTTP 200 (never a 404/redirect). Resolution failures degrade to the safe default.
Ganzer Auszug
Alternatives
- Dedicated branding microservice in v1: rejected as premature; static config behind the BFF meets Release 1 needs with far less operational cost.
- Tenant-editable CSS / theme upload: rejected; violates the CSP posture and the "no arbitrary CSS/JS" invariant. Only whitelisted tokens are allowed.
- Deriving navigation or feature availability from the brand/host: rejected; would create a second authority competing with effective access and break tenant isolation guarantees.
Technische Prüfung
Befunde nach Priorität, jeweils mit Beleg und dem, was ich ändern würde. Der Bericht sagt auch, was ich nicht angeschaut habe. Ein Beispiel für die Art Frage: Wer darf auf welche Daten zugreifen, und wie lässt sich das nachträglich zeigen? So bin ich das bei MonitoringHive angegangen.
Buttler: ein Befund zur Anfragegrösse und seine Korrektur
Kann ein berechtigtes, aber kompromittiertes Telefon den Speicher des Gateways erschöpfen? Der Befund zeigt wie, wie er nachgestellt wurde und was sich ändern muss, danach die Korrektur und ihre Tests. Sie wissen, was zu beheben ist und wie Sie es prüfen.
F04: The gateway still buffers arbitrarily large authenticated JSON
Both POST handlers await request.json() with no gateway body-size limit. Only afterward do they enter the thread pool and acquire the four-upstream semaphore. The brain's body limiter cannot protect allocations and JSON parsing already performed by the gateway.
Ganzer Auszug
Prerequisites and impact: A caller knows the house code, for example an authorized but compromised phone. A single request can consume large memory; concurrent requests compound it.
Reproduction: The real gateway app accepted a synthetic 2 MiB chat text and forwarded the entire JSON body through MockTransport. No brain or LAN service was contacted. This proves the missing gateway cap, not a measured production OOM.
Required correction: Apply streamed byte limits at the gateway before JSON parsing, with route-specific chat/voice budgets and safe overflow behavior. Test declared, absent and dishonest Content-Length values.
Fix: Added route-specific streamed limits before JSON parsing. Authentication now rejects bad credentials before body reads. Tests: declared/streamed overflow tests, dishonest lengths, normal voice traffic and a no-body-read authentication test.
Gezielte Umsetzung
Eine vereinbarte Backend- oder Schnittstellenänderung, getestet, dokumentiert und an Ihr Team übergeben. Die Abnahmekriterien legen wir fest, bevor ich beginne.
Buttler: Anleitung für Deployment und Wiederherstellung
Wie spielt der Betrieb eine Sicherheitsänderung ein, und was, wenn sie nur teilweise gelingt? Die Anleitung sagt, welche Fehler sich zurückrollen lassen, welche vorwärts repariert werden müssen und was danach zu prüfen ist.
This is a forward-only security migration, with a visible interval of unavailable HA actions. A bridge-code deployment failure occurs before utility cutover and uses the existing code rollback path.
Ganzer Auszug
A later utility/configuration failure leaves the new code failing closed; repair and rerun the failed job. Do not restore the old HTTP URL or roll back to pre-bridge binaries after utility HTTPS has switched. A healthy liveness response does not certify completed migration.
After deployment confirm normal voice/chat, memory management, HA actions and certificate rotation. Check migration readiness and the running gateway UID.
Bevor wir beginnen
Für ein erstes Gespräch reicht eine Beschreibung des Problems und des gewünschten Ergebnisses. Das erste Gespräch ist kostenlos und dauert bis zu 30 Minuten. Bezahlte Arbeit beginnt erst, wenn wir den Umfang schriftlich vereinbart haben.
Bevor bezahlte Arbeit beginnt, halten wir schriftlich fest:
- die Fragestellung oder den Umfang,
- die beteiligten Systeme und wovon sie abhängen,
- wer entscheidet,
- wann die Arbeit als erledigt gilt,
- welche Zugänge es tatsächlich braucht.
Kleine, klar umrissene Beratungs- und Prüfaufträge sind willkommen. Lässt sich der Aufwand noch nicht abschätzen, offeriere ich zuerst eine kurze, bezahlte Abklärung.
Ansätze
- Architekturberatung und technische Prüfungen: ab CHF 190 pro Stunde
- Umsetzung: ab CHF 160 pro Stunde
- Mindestaufwand: 2 Stunden remote, 4 Stunden vor Ort
- Reise: innerhalb der Stadt Zürich inbegriffen. Vor Ort sonst bis etwa eine Stunde ab Zürich mit dem ÖV: Reisezeit zum halben Stundenansatz, dazu ÖV-Kosten 2. Klasse. Weiter entfernt arbeite ich remote.
Preise zuzüglich MWST, sofern geschuldet. Für grössere Arbeiten erhalten Sie eine feste Offerte.
Beratung und Prüfungen finden in kurzen Blöcken statt, Umsetzung an vereinbarten Tagen. Den Starttermin bestätige ich mit jeder Offerte.
Pikettdienst und offene Einsätze ohne klares Ziel übernehme ich nicht, und ich baue keine kompletten Apps aus einer vagen Idee.