Crea e gestisci secret con Cloud Code

Scopri come creare e gestire i secret utilizzando l'integrazione di Secret Manager con Cloud Code.


Per seguire le indicazioni dettagliate per questa attività direttamente nell'editor di Cloud Shell, fai clic su Procedura guidata:

Procedura guidata


Prima di iniziare

  1. In the Google Cloud console, go to the project selector page.

    Go to project selector

  2. Select or create a Google Cloud project.

  3. Installa Git in modo che Cloud Code possa eseguire operazioni Git, come la clonazione di un esempio.
  4. Se non l'hai ancora fatto, installa il plug-in Cloud Code.

Creare il servizio Cloud Run

Utilizzare l'editor di Cloud Shell come ambiente per creare il servizio e il secret con Cloud Run. L'editor viene caricato preventivamente con gli strumenti necessari per lo sviluppo cloud.

Per creare il tuo servizio:

  1. Nella barra di stato di Cloud Code, fai clic sul nome del progetto attivo.

    Nome del progetto attivo nella barra di stato

  2. Nel menu Scelta rapida visualizzato, seleziona Nuova applicazione, quindi Applicazione Cloud Run.

  3. Dall'elenco degli esempi Cloud Run, seleziona Python (Flask): Cloud Run.

  4. Seleziona una cartella per il tuo sample e fai clic su Crea nuova applicazione.

Dopo che Cloud Shell Editor ha caricato il servizio in una nuova area di lavoro, visualizza i relativi file nella vista Explorer.

Crea un secret

Secret Manager ti consente di archiviare e gestire secret, come blob binari o stringhe di testo, e di accedervi in sicurezza. Inoltre, gestisce i tuoi secret, il che significa che non devi gestire macchine virtuali o servizi operativi.

Per creare un secret con l'integrazione di Secret Manager con Cloud Code:

  1. Fai clic su Gestione secret e attendi qualche istante per il caricamento.
  2. Se viene richiesto di autorizzare Cloud Shell a effettuare chiamate API Google Cloud, fai clic su Autorizza.
  3. Fai clic su Aggiungi Crea segreto.
  4. Se richiesto, seleziona il progetto Google Cloud dal selettore a discesa.
  5. Se richiesto, abilita l'API Secret Manager.
  6. Nella scheda Secret Manager - Crea secret visualizzata, inserisci quanto segue nel campo Nome:

    my-secret
    
  7. Nel campo Valore secret, inserisci:

    Hello secret!
    
  8. Fai clic su Crea secret. Verrà visualizzato un messaggio che indica che il secret è stato creato correttamente.

Aggiungi un secret al codice

I secret sono utili per l'archiviazione di informazioni relative alla configurazione, come database password, chiavi API o certificati TLS richiesti da un'applicazione in fase di runtime.

Per aggiungere un secret al codice:

  1. Apri la vista API Cloud e seleziona l' API Secret Manager.

    Viene visualizzata una scheda Dettagli API Google Cloud con API Secret Manager come orientamento.

  2. Nella sezione Installa libreria client, fai clic sulla scheda Python e su play_arrow Esegui nel terminale. Questa operazione installa la libreria client google-cloud-secret-manager.

  3. Apri requirements.txt e aggiungi la seguente riga in fondo al file:

    google-cloud-secret-manager==2.1.0
    

    Le tue modifiche vengono salvate automaticamente.

  4. Per ottenere il valore più recente del secret, apri app.py , copia e incolla la seguente funzione: dopo la funzione hello:

    def access_secret_version(secret_version_id):
        """Return the value of a secret's version"""
        from google.cloud import secretmanager
    
        # Create the Secret Manager client.
        client = secretmanager.SecretManagerServiceClient()
    
        # Access the secret version.
        response = client.access_secret_version(name=secret_version_id)
    
        # Return the decoded payload.
        return response.payload.data.decode('UTF-8')
    
    
  5. Per chiamare la funzione access_secret_version, sostituisci la variabile messaggio con quanto segue:

    message = access_secret_version("<SECRET_VERSION_ID>")
    
  6. Se la scheda Secret Manager - Crea secret è ancora aperta, file_copy Copia l'ID.

    Per ottenere l'ID di una versione del secret in qualsiasi momento, vai a Secret Manager > [SECRET_NAME] > Versioni, mantieni il cursore sopra la versione e fai clic su Copia ID risorsa.

  7. Per aggiungere l'ID versione, sostituisci il segnaposto <SECRET_VERSION_ID> con l'ID versione copiato.

Esegui nell'emulatore Cloud Run

Per testare il nuovo secret, esegui il servizio Cloud Run localmente nell'emulatore Cloud Run.

  1. Avvia il menu Cloud Code dalla barra di stato.
  2. Per creare il tuo servizio ed eseguirlo nell'emulatore, seleziona Esegui su emulatore Cloud Run.
  3. Nella scheda Esegui/Esegui il debug nell'emulatore Cloud Run, fai clic su Esegui.
  4. Quando esegui la configurazione per la prima volta, il processo può richiedere fino a 5 minuti. Il riquadro Output mostra lo stato di avanzamento della creazione e del deployment della tua app.

  5. Dopo aver creato l'app, avviala facendo clic sul link localhost visualizzato nel riquadro Output. Il valore del segreto viene visualizzato sotto la grafica di successo.

Visualizza e crea una nuova versione del secret

La visualizzazione Secret Manager di Cloud Code ti consente di dare un'occhiata rapida ai secret del tuo progetto, con le azioni per gestirli.

Visualizzazione del valore di una versione del secret

  1. Fai clic sulla visualizzazione Secret Manager.
  2. Espandi il secret facendoci clic sopra.
  3. Nella cartella Versioni, fai clic con il pulsante destro del mouse sulla versione numerata che ti interessa. per visualizzare il valore, poi seleziona Mostra valore versione.

Tieni presente che non puoi modificare una versione del secret. Per aggiornare il valore di un secret, devi creare una nuova versione.

Crea una nuova versione del secret

Il valore di un secret è archiviato in una versione del secret. Un secret può avere molte versioni. Questa operazione è utile in situazioni in cui un secret cambia. Se aggiorni un secret con una nuova versione, non devi aggiornare il codice.

  1. Fai clic sulla visualizzazione Secret Manager.
  2. Fai clic con il tasto destro del mouse sul nome del secret e seleziona Crea versione del secret.
  3. Nella scheda Secret Manager - Crea versione visualizzata, inserisci un nuovo valore e fai clic su Crea versione.
  4. Dopo aver aperto la scheda Secret Manager - Crea secret, fai clic su file_copy Copia per copiare l'ID.
  5. Per aggiungere l'ID versione più recente, sostituisci la versione attuale visualizzata nella variabile messaggio in app.py con l'ID versione più recente che hai copiato.

Se vuoi che il codice utilizzi sempre l'ultima versione, sostituisci il numero di versione alla fine del tuo ID versione con latest.

Visualizza e gestisci i secret

Disattiva una versione del secret

Le versioni dei secret vengono attivate per impostazione predefinita dopo la creazione, il che significa che vi si può accedere. Un secret disattivato è inaccessibile, ma puoi ripristinarne l'accesso in qualsiasi momento.

Per disabilitare una versione del secret:

  1. Fai clic su Cloud Code ed espandi la sezione Secret Manager.
  2. Espandi il secret facendoci clic sopra.
  3. Nella cartella Versioni, fai clic con il tasto destro del mouse sulla versione numerata che vuoi disattivare.
  4. Seleziona Disattiva versione.

Elimina una versione del secret

Quando elimini una versione del secret, non è possibile accedervi. L'eliminazione di una versione del secret è definitiva.

  1. Fai clic su Cloud Code ed espandi la sezione Secret Manager.
  2. Espandi il secret facendoci clic sopra.
  3. Nella cartella Versioni, fai clic con il tasto destro del mouse sulla versione da eliminare.
  4. Seleziona Elimina versione.

Pulizia

Per eliminare solo il cluster che hai creato per questa guida rapida:

  1. Fai clic su Cloud Code ed espandi la sezione Kubernetes.
  2. Tieni premuto il puntatore del mouse sul nome del cluster, quindi fai clic su open_in_new Apri nella console Google Cloud.
  3. Fai clic su Elimina e quindi su Elimina.

Per eliminare il progetto (e le risorse associate, inclusi eventuali cluster):

  1. Vai alla pagina Progetti nella console Google Cloud:

    Vai alla pagina Progetti

  2. Seleziona il progetto che hai creato per questa guida rapida, quindi fai clic su Elimina.

  3. Digita l'ID progetto per confermare e fai clic su Chiudi.

    Il progetto viene chiuso e pianificato per l'eliminazione.