Torna agli aggiornamenti
New releaseAug 19, 2026

kviklet v0.8.0

Flusso di revisione/approvazione simile a una Pull Request per le query del database. Per un accesso conforme ma fluido dell'ingegneria alla produzione.

Condividi

Kviklet

Kviklet.dev | Note di rilascio | Discord

Accesso sicuro agli ambienti di produzione senza compromettere la produttività degli sviluppatori.

Kviklet Kviklet

Kviklet (pronunciato Quick-let) applica il principio delle quattro occhi all'accesso ai database di produzione, con un flusso di revisione e approvazione simile a una pull request per singole istruzioni SQL o sessioni di database a tempo limitato. Gli ingegneri possono revisionare e approvare le richieste gli uni degli altri senza instradare ogni query attraverso un DBA o un team operativo.

Kviklet è self-hosted e viene eseguito come container Docker con un database PostgreSQL per lo stato dell'applicazione. La sua interfaccia web consente di inviare, revisionare ed eseguire richieste. Una licenza enterprise opzionale sblocca l'autenticazione SAML, i requisiti di revisione basati sui ruoli, la sincronizzazione dei ruoli, le chiavi API, il proxy del database e il server MCP per gli agenti AI. Richiedi una licenza enterprise su kviklet.dev.

I database supportati sono Postgres, MySQL, MariaDB, MS SQL Server e MongoDB.

Modello di accesso

Consigliamo di collegare Kviklet al tuo provider di identità esistente. Kviklet supporta l'SSO tramite OIDC (Google, Keycloak, ecc.) o SAML (solo enterprise), oltre all'autenticazione LDAP (Active Directory, ecc.).
Gli utenti creano quindi richieste per connessioni che corrispondono a uno specifico utente del database. Queste richieste sono:

  • Query singola: una specifica istruzione SQL inviata per la revisione.
  • Accesso temporaneo: una sessione a tempo limitato in cui è possibile eseguire più istruzioni.

A seconda della configurazione, le richieste vengono revisionate e approvate da altri utenti prima che Kviklet consenta l'esecuzione.

Kviklet si connette al database per conto dell'utente. La password del database della connessione non viene mai mostrata all'utente.

Un amministratore può configurare quale ruolo ha accesso a quale connessione e quali controlli di revisione sono richiesti per l'esecuzione. L'accesso a livello di database è gestito tramite i meccanismi RBAC del database sottostante. Ad esempio, è possibile creare un ruolo di sola lettura per una connessione di sola lettura e assegnare a questa requisiti di revisione inferiori rispetto a una connessione di scrittura.

Kviklet registra le istruzioni eseguite e le associa all'utente e alla richiesta di accesso. Per una copertura completa dell'accesso manuale al database, limita le connessioni dirette e instrada qualsiasi accesso manuale attraverso Kviklet. Gli ingegneri non hanno bisogno di ricevere o condividere le credenziali del database sottostante.

Ulteriori funzionalità enterprise includono:

  • SAML: supporto per l'autenticazione SAML.
  • Proxy (Postgres, MariaDB, MySQL): utilizza il tuo client di database preferito attraverso una sessione di accesso temporaneo approvata con una password temporanea. Le istruzioni eseguite vengono registrate nel registro di controllo di Kviklet.
  • Controlli di revisione basati sui ruoli: richiedi l'approvazione di ruoli specifici prima dell'esecuzione.
  • Sincronizzazione dei ruoli: sincronizza automaticamente i ruoli degli utenti dai gruppi del tuo provider di identità.
  • Chiavi API: accesso programmatico all'API di Kviklet.
  • Server MCP: collega agenti AI come Claude Code o Codex a Kviklet. Agiscono con i permessi dell'utente stesso e passano attraverso le stesse revisioni.
Altri screenshot

Richieste

Tutte le richieste di dati sono in un unico posto. Come le PR aperte per i tuoi database di produzione:

Requests Requests

Sessioni live

Una richiesta di accesso temporaneo approvata apre una sessione SQL live direttamente nel browser:

Live Session Live Session

Registro di controllo

Ogni istruzione eseguita viene registrata — che sia stata eseguita come query singola revisionata, in una sessione live o tramite il proxy del database:

audit log audit log

Funzionalità per tipo di database/connessione

La maggior parte delle funzionalità è disponibile per tutti i database (SSO, LDAP, RBAC, flusso di revisione/approvazione, registro di audit, ecc.). Alcune funzionalità sono però limitate, sia perché non sono ancora state sviluppate, sia perché non avrebbero senso per quello specifico scopo. La seguente tabella mostra quali funzionalità sono disponibili per ciascun tipo di database:

DatabaseStatement ReviewTemporary AccessProxy(Beta)Explain Plan
Postgres✓✓✓✓
MySQL✓✓✓✓
MariaDB✓✓✓✓
SQL Server✓✓✗✓
MongoDB✓✓✗✗
Kubernetes✓✗✗✗

Configurazione

Kviklet viene distribuito come un semplice container Docker. Puoi trovare le versioni disponibili nella sezione Releases. Consigliamo di aggiornare regolarmente la versione in uso, poiché continuiamo a sviluppare nuove funzionalità.
La versione più recente attualmente è ghcr.io/kviklet/kviklet:0.10.0; puoi anche usare :main, ma potrebbe capitare di tanto in tanto che venga accidentalmente integrato qualcosa di difettoso. Cerchiamo comunque di evitarlo.

Avvio rapido

Se vuoi semplicemente provare come funziona:

  1. Ecco un docker-compose.yaml minimale:

    Clicca per espandere il contenuto del compose
    services:
      postgres:
        image: postgres:16
        restart: always
        environment:
          POSTGRES_USER: postgres
          POSTGRES_PASSWORD: postgres
          POSTGRES_DB: postgres
        ports:
          - "5432:5432"
        volumes:
          - ./postgres-data:/var/lib/postgresql/data
    #      - ./sample_data.sql:/docker-entrypoint-initdb.d/init.sql
    

Categorie