Die Entwicklung von „celguard“ begann für mich mit dem Wunsch, Zugriffe auf meine Webservices flexibler und sicherer steuern zu können. Traefik bietet zwar viele Möglichkeiten, aber ich wollte eine Lösung, mit der sich Regeln dynamisch und ohne komplizierte Konfigurationen anpassen lassen.
Nach einigen Experimenten mit verschiedenen Ansätzen bin ich auf die Common Expression Language (CEL) gestoßen. Damit konnte ich eine Middleware entwickeln, die HTTP-Anfragen anhand von frei definierbaren Regeln prüft – ohne Neustart des Proxys.
Im Laufe der Entwicklung habe ich das Plugin um Features wie Logging und Fehlerbehandlung erweitert und immer wieder an der Performance gefeilt.
Wer neugierig ist, findet den Quellcode und weitere Infos auf GitHub.