Vai al contenuto
CodeQuay

Sicurezza e conformità

Sicura per costruzione, verificabile nei fatti

Qui spieghiamo come funziona la sicurezza di CodeQuay, cosa registriamo e come proteggiamo i dati. Senza formule vaghe: se una cosa non c'è ancora, non la trovi scritta.

Principi

  • Il server decide

    Ogni regola è applicata sul server, a ogni push e a ogni richiesta. Nessun controllo dipende dal computer dell'utente.

  • Nessuna eccezione

    Owner e amministratori sono soggetti alle stesse protezioni. Un'eccezione, se serve, si configura in modo esplicito e resta tracciata.

  • In dubbio, si rifiuta

    Se una verifica non può essere completata, per un errore o un dato mancante, il push viene rifiutato e registrato.

Audit log

Un registro che si può solo allungare

L'audit log è append-only a livello di database: le righe si aggiungono, non si modificano né si cancellano, nemmeno con l'utenza dell'applicazione. Registra anche i tentativi negati, che sono spesso i più interessanti.

Chi
l'utente autenticato, o il nome tentato in caso di accesso fallito
Cosa
l'azione (push, accesso, modifica di ruoli, protezioni e policy) e l'oggetto
Quando
data e ora con fuso orario
Da dove
l'indirizzo IP del client
Esito
consentito, negato o errore, con la regola che ha deciso

Per GDPR e NIS2. Tracciabilità degli accessi e delle modifiche, evidenza dei tentativi respinti, registro non alterabile: sono gli elementi che un revisore chiede per primi. CodeQuay li fornisce senza configurazioni aggiuntive.

git.codequay.it/-/audit
Esempio del registro di audit di CodeQuay: per ogni evento ora, utente, azione, oggetto, indirizzo IP ed esito, compresi i tentativi negati come un push rifiutato e un accesso fallito.

Isolamento

Quello che non ti riguarda, non esiste

Chi non è membro di un progetto non ne vede i repository: non compaiono negli elenchi né nelle ricerche, e l'indirizzo diretto risponde 404, lo stesso errore di un repository inesistente. Nemmeno il nome trapela.

  • Gerarchia chiara: organizzazione, progetto, repository, con ruoli ereditati e restrizioni per utente.
  • Lo stesso controllo vale per console, API e protocollo git.
  • Verificato da una suite di test automatici dedicata, che prova ogni combinazione di ruolo e risorsa.
Isolamento fra progetti: un membro del progetto Portale vede i suoi repository; il progetto Paghe, di cui non è membro, per lui non esiste: non compare negli elenchi, nelle ricerche né nell'API, e l'indirizzo diretto risponde 404.

Backup

Il backup non collaudato non esiste

Un backup vale quanto l'ultimo ripristino riuscito. Per questo il ripristino lo proviamo davvero, in automatico, ogni settimana.

  1. Ogni notte 01

    Backup completo

    Dump del database, bundle git di ogni repository e file di checksum SHA-256 per verificarne l'integrità.

  2. Ogni notte 02

    Manutenzione dei repository

    Compattazione e aggiornamento degli indici di git, per mantenere le prestazioni nel tempo.

  3. Ogni settimana 03

    Prova di ripristino automatica

    Il backup più recente viene ripristinato in un ambiente separato: database, migrazioni, clone dei repository e verifica completa con git fsck.

  4. Sempre 04

    Esito documentato

    Ogni prova produce un report conservato per 90 giorni. Se il ripristino fallisce, scatta un allarme.

Dati e sovranità

Dati in Europa, responsabilità in Italia

CodeQuay è sviluppato e supportato in Italia da arimaslab srl. Le istanze girano in data center nell'Unione europea e il sito non usa servizi di tracciamento di terze parti.

  • Istanze in UE

    Repository, database e backup restano in data center nell'Unione europea.

  • Azienda italiana

    Contratto, supporto e referenti tecnici in Italia, in italiano.

  • Zero tracker

    Né sul sito né nella piattaforma: nessuna analitica o pubblicità di terze parti.

  • Nessun vincolo

    Formato git standard: i tuoi repository si portano via con un git clone --mirror.

Infrastruttura

Le difese che non si vedono

Misure tecniche attive su ogni istanza CodeQuay.

  • TLS moderno

    Solo TLS 1.2 e 1.3 con cifrari AEAD, HSTS, nessun contenuto misto.

  • Servizi isolati

    Container senza privilegi, file system in sola lettura dove possibile, database non esposto su Internet.

  • Segreti fuori dal codice

    Password e chiavi dell'istanza sono file separati con permessi ristretti, mai dentro le immagini.

  • Blocco dei tentativi

    Limiti di frequenza sulle API e sugli accessi, blocco temporaneo dopo ripetuti accessi falliti.

  • Credenziali robuste

    Password conservate con argon2id, token salvati solo come impronta crittografica, 2FA per gli account.

  • Nessun tracciamento

    Nessun cookie di profilazione, nessuna analitica di terze parti, nessun font o script caricato da terzi.

Gestione delle vulnerabilità

Hai trovato un problema di sicurezza?

Scrivici a security@codequay.it. Ti confermiamo la ricezione e ti teniamo aggiornato sull'analisi e sulla correzione. Le segnalazioni fatte in buona fede sono benvenute.

  • Descrivi il problema e i passi per riprodurlo.
  • Non accedere a dati di altri e non degradare il servizio.
  • Dacci il tempo di correggere prima di pubblicare i dettagli.

Segnalazione responsabile

I contatti sono pubblicati anche nel file standard security.txt.

Scrivi al team sicurezza

Parliamone con il tuo responsabile della sicurezza.

Il programma pilota è aperto a un numero limitato di aziende e amministrazioni: ti affianchiamo nella migrazione dei primi repository e nella definizione delle regole.