Impostazione di criteri per l'utilizzo di immagini attendibili


Per impostazione predefinita, gli utenti del tuo progetto possono creare dischi permanenti o copiare immagini utilizzando una qualsiasi delle immagini pubbliche e qualsiasi immagine a cui le entità possono accedere tramite i ruoli IAM. Tuttavia, in alcune situazioni potresti voler limitare i principal in modo che possano creare dischi di avvio solo da immagini che contengono software approvato che soddisfa i requisiti di policy o di sicurezza.

Utilizza la funzionalità Immagine attendibile per definire un criterio dell'organizzazione che consenta alle entità di creare dischi permanenti solo da immagini in progetti specifici.

Per limitare le posizioni in cui possono essere utilizzate le tue immagini, leggi Limitare l'utilizzo di immagini, dischi e snapshot condivisi.

Prima di iniziare

  • Leggi la pagina Utilizzo dei vincoli per scoprire di più sulla gestione dei criteri a livello di organizzazione.
  • Leggi la pagina Informazioni sulla valutazione della gerarchia per scoprire come vengono propagate le policy dell'organizzazione.
  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso ai Google Cloud servizi e alle API. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

      1. After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      2. Set a default region and zone.
      3. REST

        Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

          After installing the Google Cloud CLI, initialize it by running the following command:

          gcloud init

          If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

        Per saperne di più, consulta la sezione Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .

Limitazioni

  • Le policy per immagini attendibili non limitano l'accesso alle seguenti immagini:

  • I criteri per l'utilizzo di immagini attendibili non impediscono agli utenti di creare risorse immagine nei loro progetti locali.

Impostare i vincoli di accesso alle immagini

Attiva un criterio di accesso alle immagini impostando un vincolo compute.trustedImageProjects sul progetto, sulla cartella o sull'organizzazione. Per impostare questi vincoli, devi disporre dell'autorizzazione per modificare i criteri dell'organizzazione. Ad esempio, roles/orgpolicy.policyAdmin ha l'autorizzazione per impostare questi vincoli. Per saperne di più sulla gestione delle policy a livello di progetto, cartella o organizzazione, consulta Utilizzo dei vincoli.

Puoi impostare vincoli su tutte le immagini pubbliche disponibili su Compute Engine. Per un elenco dei nomi dei progetti di immagini, vedi Dettagli del sistema operativo. Puoi anche limitare le immagini di machine learning (ML) disponibili su Compute Engine utilizzando il progetto ml-images. Se utilizzi l'accesso VPC serverless, concedi al tuo progetto l'autorizzazione a utilizzare le immagini VM di Compute Engine dal progetto serverless-vpc-access-images.

Utilizza la console Google Cloud o Google Cloud CLI per impostare vincoli sull'accesso alle immagini.

Console

Ad esempio, per impostare un vincolo a livello di progetto:

  1. Vai alla pagina Policy dell'organizzazione.

    Vai a Policy dell'organizzazione

  2. Nell'elenco delle policy, fai clic su Definisci progetti con immagini attendibili. Viene visualizzata la pagina Dettagli norma.

  3. Nella pagina Dettagli norme, fai clic su Gestisci norme. Viene visualizzata la pagina Modifica norma.

  4. Nella pagina Modifica criterio, seleziona Personalizza.

  5. Per Applicazione policy, seleziona un'opzione di applicazione. Per informazioni sull'ereditarietà e sulla gerarchia delle risorse, vedi Informazioni sulla valutazione della gerarchia.

  6. Fai clic su Aggiungi regola.

  7. Nell'elenco Valori dei criteri, puoi selezionare se questo criterio dell'organizzazione deve consentire l'accesso a tutti i progetti di immagini, negare l'accesso a tutti i progetti di immagini oppure puoi specificare un insieme personalizzato di progetti a cui consentire o negare l'accesso.

    Per impostare la regola del criterio, completa una delle seguenti opzioni:

    • Per consentire agli utenti di creare dischi di avvio da tutte le immagini pubbliche, seleziona Consenti tutto.
    • Per impedire agli utenti di creare un disco di avvio da tutte le immagini pubbliche, seleziona Nega tutto.
    • Per specificare un insieme selezionato di immagini pubbliche da cui gli utenti possono creare dischi di avvio, seleziona Personalizzato. Vengono visualizzati un campo Tipo di criterio e un campo Valori personalizzati.

      1. Nell'elenco Tipo di policy, seleziona Consenti o Rifiuta.
      2. Nel campo Valori personalizzati, inserisci il nome del progetto di immagini utilizzando il formato projects/IMAGE_PROJECT.

        Sostituisci IMAGE_PROJECT con il progetto di immagine su cui vuoi impostare il vincolo.

        Puoi aggiungere più progetti di immagini. Per ogni progetto di immagini che vuoi aggiungere, fai clic su Aggiungi e inserisci il nome del progetto.

  8. Per salvare la regola, fai clic su Fine.

  9. Per salvare e applicare la policy dell'organizzazione, fai clic su Salva.

Per saperne di più sulla creazione di norme dell'organizzazione, consulta Creare e gestire le norme dell'organizzazione.

gcloud

Ad esempio, per impostare un vincolo a livello di progetto:

  1. Ottieni le impostazioni delle policy esistenti per il tuo progetto utilizzando il comando resource-manager org-policies describe.

    gcloud resource-manager org-policies describe \
       compute.trustedImageProjects --project=PROJECT_ID \
       --effective > policy.yaml
    

    Sostituisci PROJECT_ID con l'ID progetto.

  2. Apri il file policy.yaml in un editor di testo e modifica il vincolo compute.trustedImageProjects. Aggiungi le limitazioni che ti servono e rimuovi quelle che non ti servono più. Al termine della modifica del file, salva le modifiche. Ad esempio, potresti impostare la seguente voce di vincolo nel file delle norme:

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allowedValues:
        - projects/debian-cloud
        - projects/cos-cloud
     deniedValues:
        - projects/IMAGE_PROJECT
    

    Sostituisci IMAGE_PROJECT con il nome del progetto di immagini che vuoi limitare nel tuo progetto.

    Se vuoi, puoi negare l'accesso a tutte le immagini al di fuori delle immagini personalizzate nel tuo progetto. Per questa situazione, utilizza il seguente esempio:

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allValues: DENY
    

  3. Applica il file policy.yaml al tuo progetto. Se la tua organizzazione o cartella ha vincoli esistenti, questi vincoli potrebbero entrare in conflitto con i vincoli a livello di progetto che hai impostato. Per applicare il vincolo, utilizza il comando resource-manager org-policies set-policy.

    gcloud resource-manager org-policies set-policy \
       policy.yaml --project=PROJECT_ID
    

    Sostituisci PROJECT_ID con l'ID progetto.

Una volta terminata la configurazione dei vincoli, esegui il test per assicurarti che creino le limitazioni necessarie.

Passaggi successivi