Usa credenziali segrete vault con GCP Secret Manager

Descrive l'uso delle credenziali segrete del vault, in cui il segreto delle credenziali (password) viene memorizzato come segreto in GCP Secret Manager.

È possibile utilizzare le credenziali segrete del vault per accedere alle risorse cloud, accedere ad altri database con database link o utilizzare ovunque siano necessarie le credenziali del tipo di nome utente o password.

Prerequisiti per creare la credenziale segreta del vault con GCP Secret Manager

Descrive i prerequisiti necessari per utilizzare le credenziali segrete del vault con GCP Secret Manager.

Per creare credenziali segrete del vault in cui il segreto è memorizzato in GCP Secret Manager, eseguire prima i prerequisiti necessari.

  1. Creare un segreto in GCP Secret Manager.
  2. Abilita l'autenticazione dell'account di servizio Google per fornire l'accesso a GCP Secret Manager.

    Nella console di Google Cloud è necessario concedere l'accesso in lettura al segreto alla credenziale di autenticazione del principal.

    1. Andare alla pagina Gestione segreta nella console di Google Cloud.
    2. Nella pagina Gestione segreta, fare clic sulla casella di controllo accanto al nome del segreto.
    3. Se non è già aperto, fare clic su Mostra pannello informazioni per aprire il pannello.
    4. Nel pannello informazioni, fare clic su Aggiungi principal.
    5. Nell'area di testo Nuovi principal immettere il nome dell'account di servizio da aggiungere.
    6. Nell'elenco a discesa Selezionare un ruolo, scegliere Gestione segreta, quindi Accessor segreto di Secret Manager.

Crea credenziale segreta vault con GCP Secret Manager

Descrive i passi per utilizzare un segreto di GCP Secret Manager per memorizzare i segreti da utilizzare con le credenziali utilizzate per accedere alle risorse cloud.

Ciò consente di memorizzare un segreto in GCP Secret Manager e di utilizzare il segreto con le credenziali create per accedere alle risorse cloud o per accedere ad altri database.

Per creare le credenziali segrete del vault in cui il segreto è memorizzato in GCP Secret Manager, effettuare le operazioni riportate di seguito.

  1. Creare un accessor segreto di Secret Manager per consentire al principal di Autonomous Database di accedere ai segreti in GCP Secret Manager.
  2. Abilita l'autenticazione basata sull'account del servizio Google per fornire l'accesso al segreto in GCP Secret Manager.
  3. Utilizzare DBMS_CLOUD.CREATE_CREDENTIAL per creare una credenziale segreta del vault per accedere al segreto di GCP Secret Manager.

    Ad esempio:

    BEGIN DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name      => 'GCP_SECRET_CRED',
        params               => JSON_OBJECT( 
              'username'   value 'gcp_user1',
              'secret_id'  value 'my-secret',
              'gcp_project_id' value 'my-sample-project-191923' ));
    END;
    /

    Dove:

    • username: è il nome utente della credenziale originale. Può essere il nome utente di qualsiasi tipo di credenziali nome utente/password.

    • secret_id: è il nome segreto. Quando si memorizza la password mysecret nel vault, utilizzare il nome segreto come valore del parametro secret_id.

    • gcp_project_id: è l'ID del progetto in cui si trova il segreto.

    Per ulteriori informazioni, vedere CREATE_CREDENTIAL Procedura.

  4. Utilizzare la credenziale per accedere a una risorsa cloud.

    Ad esempio:

    SELECT count(*) FROM DBMS_CLOUD.LIST_OBJECTS(
               'GCP_SECRET_CRED',
               'https://bucketname.storage.googleapis.com/' );
Nota

Ogni 12 ore il segreto (password) viene aggiornato dal contenuto in GCP Secret Manager. Se si modifica il valore segreto in GCP Secret Manager, l'istanza di Autonomous Database può richiedere fino a 12 ore per recuperare il valore segreto più recente.

Eseguire DBMS_CLOUD.REFRESH_VAULT_CREDENTIAL per aggiornare immediatamente una credenziale segreta del vault. Questa procedura ottiene la versione più recente del segreto vault da GCP Secret Manager. Per ulteriori informazioni, vedere REFRESH_VAULT_CREDENTIAL Procedura.