Abilita la scansione dei segreti

Questo documento descrive come proteggere le tue informazioni sensibili con la scansione dei secret integrata in Secure Source Manager.

La scansione dei secret in Secure Source Manager migliora la sicurezza del codebase. Analizza i commit push nei repository o uniti tramite richieste pull, eseguendo la scansione attiva di informazioni sensibili che devi criptare o rimuovere. Se vengono rilevati questi dati, la scansione dei segreti rifiuta automaticamente il push o blocca l'unione della richiesta di pull, impedendo l'unione involontaria di dettagli sensibili.

La scansione dei segreti in Secure Source Manager considera sensibili le seguenti categorie di informazioni:

  • Chiavi di crittografia: sono inclusi elementi come le chiavi private SSH.
  • Credenziali AWS: chiavi di accesso e chiavi segrete per Amazon Web Services.
  • Google Cloud Credenziali: chiavi del service account e altri Google Cloud segreti.
  • Client secret OAuth: secret utilizzati per l'autenticazione dell'applicazione con OAuth.
  • Chiavi segrete: chiavi sensibili utilizzate per l'autenticazione o l'autorizzazione.

Abilita la scansione dei segreti

Assicurati che per il repository siano abilitati i seguenti ruoli e impostazioni.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per attivare la scansione dei segreti, chiedi all'amministratore di concederti il ruolo IAM Secure Source Manager Repository Admin (roles/securesourcemanager.repoAdmin) nell'istanza Secure Source Manager. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Per informazioni sulla concessione dei ruoli Secure Source Manager, consulta Controllo dell'accesso con IAM e Concedere agli utenti l'accesso all'istanza.

Autorizzazioni service account

Se configuri la scansione dei segreti in modo che utilizzi un modello di ispezione Sensitive Data Protection personalizzato, il account di servizio utilizzato da Secure Source Manager deve disporre dell'autorizzazione per leggere il modello (ad esempio, il ruolo Lettore DLP, roles/dlp.reader).

  • Se per il repository è configurato un account di servizio per repository, Secure Source Manager utilizza esclusivamente questo account di servizio. Devi concedere l'autorizzazione di lettura del modello al account di servizio per repository.
  • Se non è configurato alcun account di servizio per repository, Secure Source Manager utilizza ilaccount di serviziot dell'istanza.

Aggiornare le impostazioni del repository

Puoi attivare la scansione dei secret per i tuoi repository tramite l'interfaccia di Secure Source Manager:

  1. Vai al repository in cui vuoi attivare la scansione dei secret.
  2. Fai clic sull'icona delle Impostazioni.
  3. Individua il pulsante di attivazione/disattivazione Scansione dei secret.
  4. Fai clic sul pulsante di attivazione/disattivazione per impostarlo su On.
  5. (Facoltativo) Nel campo Modello di ispezione, inserisci il nome risorsa del modello di ispezione Sensitive Data Protection.

Utilizzo della scansione dei secret

Una volta attivata, la scansione dei segreti monitora attivamente i commit al tuo repository. Se vengono identificate informazioni sensibili in un commit inviato tramite Git o unite tramite una richiesta pull nell'interfaccia web, il commit viene rifiutato o l'unione viene bloccata.

Quando esegui il push dalla riga di comando, ricevi un errore che indica la presenza di dati sensibili. A questo punto, hai due opzioni:

Ripristina la modifica

Per rimuovere le informazioni sensibili, puoi ripristinare il commit problematico utilizzando il seguente comando:

git reset --soft COMMIT_ID

Sostituisci COMMIT_ID con l'ID commit effettivo.

Poiché Git conserva la cronologia di tutti i commit, il materiale sensibile può comunque essere recuperato dai commit precedenti. Per evitare questo problema, utilizza il comando git reset --soft. Quindi, correggi i file ed esegui di nuovo il commit per rimuovere i dati dalla cronologia recente del ramo.

Forza il push del commit (bypass dell'analisi dei secret)

In situazioni specifiche in cui le informazioni rilevate sono ritenute accettabili, gli utenti con le autorizzazioni appropriate possono scegliere di ignorare il controllo della scansione dei segreti e forzare il push del commit.

git push -o dlpskip=true origin \
    BRANCH_NAME

Sostituisci BRANCH_NAME con il nome del ramo che stai unendo.

Passaggi successivi