
kviklet v0.8.0
PR-ähnlicher Überprüfungs-/Genehmigungsprozess für Datenbankabfragen. Für konformen, aber reibungslosen Engineering-Zugriff auf die Produktion.
Kviklet
Kviklet.dev | Versionshinweise | Discord
Sicherer Zugriff auf Produktionsumgebungen, ohne die Produktivität der Entwickler zu beeinträchtigen.

Kviklet (ausgesprochen Quick-let) wendet das Vier-Augen-Prinzip auf den Zugriff auf Produktionsdatenbanken an, mit einem Review- und Genehmigungsworkflow nach Art von Pull Requests für einzelne SQL-Anweisungen oder zeitlich begrenzte Datenbanksitzungen. Entwickler können die Anfragen ihrer Kollegen gegenseitig prüfen und genehmigen, ohne jede Abfrage über einen DBA oder ein Betriebsteam leiten zu müssen.
Kviklet wird selbst gehostet und läuft als Docker-Container mit einer PostgreSQL-Datenbank für den Anwendungszustand. Die Weboberfläche ermöglicht das Einreichen, Prüfen und Ausführen von Anfragen. Eine optionale Enterprise-Lizenz schaltet SAML-Authentifizierung, rollenbasierte Review-Anforderungen, Rollensynchronisierung, API-Schlüssel, den Datenbank-Proxy und den MCP-Server für KI-Agenten frei. Fordern Sie eine Enterprise-Lizenz unter kviklet.dev an.
Unterstützte Datenbanken sind Postgres, MySQL, MariaDB, MS SQL Server und MongoDB.
Zugriffsmodell
Wir empfehlen, Kviklet mit Ihrem bestehenden Identity Provider zu verbinden. Kviklet unterstützt SSO über OIDC (Google, Keycloak usw.) oder SAML (nur Enterprise) sowie LDAP-Authentifizierung (Active Directory usw.).
Benutzer erstellen dann Anfragen für Verbindungen, die einem bestimmten Datenbankbenutzer zugeordnet sind. Diese Anfragen sind entweder:
- Einzelne Abfrage: eine bestimmte SQL-Anweisung, die zur Prüfung eingereicht wird.
- Temporärer Zugriff: eine zeitlich begrenzte Sitzung, in der Sie mehrere Anweisungen ausführen können.
Je nach Konfiguration werden die Anfragen von anderen Benutzern geprüft und genehmigt, bevor Kviklet die Ausführung erlaubt.
Kviklet verbindet sich im Namen des Benutzers mit der Datenbank. Das Datenbankpasswort der Verbindung wird dem Benutzer niemals angezeigt.
Ein Administrator kann konfigurieren, welche Rolle Zugriff auf welche Verbindung hat und welche Review-Gates für die Ausführung erforderlich sind. Der Zugriff auf Datenbankebene wird über die RBAC-Mechanismen der zugrunde liegenden Datenbank verwaltet. So ist es beispielsweise möglich, eine schreibgeschützte Rolle für eine schreibgeschützte Verbindung zu erstellen und dieser weniger Review-Anforderungen zuzuweisen als einer Schreibverbindung.
Kviklet zeichnet ausgeführte Anweisungen auf und ordnet sie dem Benutzer und der Zugriffsanfrage zu. Um eine vollständige Abdeckung des manuellen Datenbankzugriffs zu erreichen, beschränken Sie direkte Verbindungen und leiten Sie jeden manuellen Zugriff über Kviklet. Entwickler müssen die zugrunde liegenden Datenbank-Anmeldedaten weder erhalten noch weitergeben.
Zusätzliche Enterprise-Funktionen sind:
- SAML: Unterstützung für SAML-Authentifizierung.
- Proxy (Postgres, MariaDB, MySQL): Verwenden Sie Ihren bevorzugten Datenbankclient über eine genehmigte Sitzung mit temporärem Zugriff und einem temporären Passwort. Ausgeführte Anweisungen werden im Audit-Log von Kviklet aufgezeichnet.
- Rollenbasierte Review-Gates: Genehmigungen durch bestimmte Rollen vor der Ausführung erforderlich.
- Rollensynchronisierung: Benutzerrollen automatisch aus den Gruppen Ihres Identity Providers synchronisieren.
- API-Schlüssel: Programmatischer Zugriff auf die Kviklet-API.
- MCP-Server: Verbinden Sie KI-Agenten wie Claude Code oder Codex mit Kviklet. Sie handeln mit den Berechtigungen des Benutzers selbst und durchlaufen dieselben Reviews.
Weitere Screenshots
Anfragen
Alle Datenanfragen befinden sich an einem Ort. Wie offene PRs für Ihre Produktionsdatenbanken:

Live-Sitzungen
Eine genehmigte Anfrage für temporären Zugriff öffnet eine Live-SQL-Sitzung direkt im Browser:

Audit-Log
Jede ausgeführte Anweisung wird aufgezeichnet – ob sie als geprüfte einzelne Abfrage, in einer Live-Sitzung oder über den Datenbank-Proxy ausgeführt wurde:

Funktionen nach Datenbank-/Verbindungstyp
Die meisten Funktionen sind für alle Datenbanken verfügbar (SSO, LDAP, RBAC, Review/Approval Flow, Audit-Log usw.). Einige Funktionen sind jedoch eingeschränkt, entweder weil sie einfach noch nicht implementiert wurden oder weil sie für den jeweiligen Zweck keinen Sinn ergeben. Die folgende Tabelle zeigt, welche Funktionen für welchen Datenbanktyp verfügbar sind:
| Datenbank | Statement Review | Temporärer Zugriff | Proxy (Beta) | Explain Plan |
|---|---|---|---|---|
| Postgres | ✓ | ✓ | ✓ | ✓ |
| MySQL | ✓ | ✓ | ✓ | ✓ |
| MariaDB | ✓ | ✓ | ✓ | ✓ |
| SQL Server | ✓ | ✓ | ✗ | ✓ |
| MongoDB | ✓ | ✓ | ✗ | ✗ |
| Kubernetes | ✓ | ✗ | ✗ | ✗ |
Einrichtung
Kviklet wird als einfacher Docker-Container ausgeliefert.
Die verfügbaren Versionen finden Sie unter Releases. Wir empfehlen, die von Ihnen verwendete Version regelmäßig zu aktualisieren, da wir kontinuierlich neue Funktionen entwickeln.
Die aktuellste Version ist derzeit ghcr.io/kviklet/kviklet:0.10.0; Sie können auch :main verwenden, aber es kann gelegentlich vorkommen, dass wir versehentlich fehlerhaften Code mergen. Wir versuchen jedoch, das zu vermeiden.
Schnellstart
Wenn Sie einfach nur ausprobieren möchten, wie es funktioniert:
- Hier ist eine minimale docker-compose.yaml:
Klicken Sie, um den Compose-Inhalt zu erweitern