Utilizza i tag per raggruppare i repository e altre risorse in Google Cloud per la generazione di report, l'audit econtrollo dell'accessoo all'interno della tua Google Cloud organizzazione.
Per raggruppare i repository in Artifact Registry a fini di automazione e fatturazione, utilizza le etichette. Tag ed etichette funzionano in modo indipendente l'uno dall'altro e puoi applicarli entrambi allo stesso repository. Per maggiori informazioni sulle differenze tra tag ed etichette, consulta Tag ed etichette.
Che cosa sono i tag?
I tag sono coppie chiave-valore che puoi applicare alle risorse per un controllo dell'accesso granulare.
Gli amministratori dei progetti creano tag per le risorse in Google Cloud a livello di organizzazione e li gestiscono in Resource Manager. Quando colleghi un tag a un repository Artifact Registry, puoi utilizzare il tag con le condizioni IAM per concedere l'accesso condizionale al repository. Non puoi collegare tag a singoli artefatti.
Tieni presenti queste limitazioni:
I criteri dell'organizzazione possono fare riferimento in modo condizionale ai tag ereditati dal progetto padre e dai livelli superiori, ma non supportano i tag che colleghi direttamente ai repository.
I log di controllo di Cloud non vengono generati per il collegamento di tag e la visualizzazione dei binding dei tag sui repository.
Per ulteriori informazioni sui tag e controllo dell'accesso condizionale con i tag, consulta Tag e controllo dell'accesso.
Autorizzazioni obbligatorie
Per ottenere le autorizzazioni necessarie per gestire i tag, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Tag Viewer (
roles/resourcemanager.tagViewer) sulle risorse a cui sono collegati i tag -
Visualizza e gestisci i tag a livello di organizzazione:
Visualizzatore organizzazione (
roles/resourcemanager.organizationViewer) sull'organizzazione -
Crea, aggiorna ed elimina le definizioni dei tag:
Amministratore tag (
roles/resourcemanager.tagAdmin) nella risorsa per cui stai creando, aggiornando o eliminando i tag -
Associa e rimuovi i tag dalle risorse:
Utente tag (
roles/resourcemanager.tagUser) sul valore del tag e sulle risorse a cui stai associando o rimuovendo il valore del tag
Per ulteriori informazioni 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.
Associazione di tag ai repository
Dopo che un amministratore del progetto crea i tag, puoi collegarli a un repository. Ogni tag ha una chiave e un valore. Per taggare un repository, devi associare un valore al repository.
Per collegare un tag a un repository:
Console
Ottieni il valore del tag da allegare dall'amministratore.
Puoi allegare un valore del tag con uno di questi tipi di identificatori:
- Un nome con spazio dei nomi, ad esempio
123456789012/env/dev - Un ID permanente, ad esempio
tagValues/567890123456
- Un nome con spazio dei nomi, ad esempio
Apri la pagina Repository nella console Google Cloud .
Seleziona il repository che vuoi taggare.
Nella sezione Dettagli repository, fai clic su Mostra altro.
Vengono visualizzati i tag esistenti per il repository, inclusi quelli ereditati.
Fai clic sull'icona
Modifica tag.Nella sezione Tag diretti, fai clic su Seleziona ambito.
Seleziona il progetto del repository.
Nel campo key, digita per filtrare l'elenco dei tag, quindi seleziona la chiave del tag.
Nel campo Valore, digita per filtrare l'elenco dei tag, quindi seleziona il valore del tag.
Fai clic su Salva.
Fai clic su Conferma.
Il tag è associato al tuo repository.
Interfaccia a riga di comando gcloud
Ottieni il valore del tag da allegare dall'amministratore.
Puoi allegare un valore del tag con uno di questi tipi di identificatori:
- Un nome con spazio dei nomi, ad esempio
123456789012/env/dev - Un ID permanente, ad esempio
tagValues/567890123456
- Un nome con spazio dei nomi, ad esempio
Collega il valore del tag con il seguente comando:
gcloud resource-manager tags bindings create \ --tag-value=TAG_VALUE \ --parent=REPOSITORY_ID \ --location=LOCATIONSostituisci i seguenti valori:
TAG_VALUEè l'ID permanente o il nome con spazio dei nomi del valore tag da allegare.REPOSITORY_IDè l'ID completo del repository, incluso il nome di dominio dell'API per identificare il tipo di risorsa (//artifactregistry.googleapis.com/). Ad esempio,//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repoLOCATIONè la posizione del repository.
Considera l'esempio seguente:
- Valore tag:
815471563813/env/dev - Progetto:
my-project - Repository:
my-repo - Posizione del repository:
us-east1
Il seguente comando gcloud CLI associa il tag al repository:
gcloud resource-manager tags bindings create \ --tag-value=815471563813/env/dev \ --parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \ --location=us-east1
Elenco dei tag collegati ai repository
Puoi elencare i tag collegati a una risorsa a cui hai l'autorizzazione di accesso.
Console
Apri la pagina Repository nella console Google Cloud .
Seleziona il repository che vuoi visualizzare.
Nella sezione Dettagli repository, fai clic su Mostra altro.
L'elenco Tag mostra tutti i tag del repository, inclusi i tag diretti e i tag ereditati dai livelli superiori della gerarchia delle risorse.
Interfaccia a riga di comando gcloud
Per elencare i tag collegati a un repository, esegui questo comando:
gcloud resource-manager tags bindings list \
--parent=REPOSITORY_ID \
--location=LOCATION
Il comando elenca solo i tag collegati direttamente alla risorsa specificata, quindi
non restituisce i tag ereditati dal progetto padre o di livello superiore. Puoi elencare
i tag ereditati dal progetto principale specificando un progetto anziché un
repository con il flag --parent.
Ad esempio, questo comando elenca i tag collegati al repository my-repo nel progetto my-project e nella località us-east1:
gcloud resource-manager tags bindings list \
--parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \
--location=us-east1
Questo comando elenca i tag collegati al numero di progetto 7890123456:
gcloud resource-manager tags bindings list \
--parent=//cloudresourcemanager.googleapis.com/projects/7890123456 \
Scollegamento dei tag dai repository
Puoi scollegare un tag collegato direttamente a un repository. Se devi rimuovere un tag ereditato dal progetto padre o da un'altra parte della gerarchia delle risorse, un amministratore del progetto deve separarlo dalla risorsa a cui è collegato.
Per rimuovere un tag collegato a un repository:
Console
Ottieni il valore del tag che vuoi rimuovere. Se non conosci il valore del tag, elenca i tag collegati al repository.
Apri la pagina Repository nella console Google Cloud .
Seleziona il repository.
Nella sezione Dettagli repository, fai clic su Mostra altro.
Vengono visualizzati i tag esistenti per il repository, inclusi quelli ereditati.
Fai clic sull'icona
Modifica tag.Nella sezione Tag diretti, individua il tag che vuoi rimuovere.
Fai clic sull'icona Elimina accanto al tag da rimuovere.
Fai clic su Salva.
Fai clic su Conferma.
Il tag viene rimosso dal repository.
Interfaccia a riga di comando gcloud
Ottieni il valore del tag che vuoi rimuovere. Se non conosci il valore del tag, elenca i tag collegati al repository.
Scollega il valore del tag con il seguente comando:
gcloud resource-manager tags bindings delete \ --tag-value=TAG_VALUE \ --parent=REPOSITORY_ID \ --location=LOCATIONSostituisci i seguenti valori:
Valore del tag
TAG_VALUEda scollegare.REPOSITORY_IDè l'ID completo del repository, incluso il nome di dominio dell'API per identificare il tipo di risorsa (//artifactregistry.googleapis.com/). Ad esempio,//artifactregistry.googleapis.com/projects/my-project/my-repoLOCATIONè la posizione del repository.
Considera l'esempio seguente:
- Valore tag:
815471563813/env/dev - Progetto:
my-project - Repository:
my-repo - Posizione del repository:
us-east1
Il seguente comando gcloud CLI scollega il tag dal repository:
gcloud resource-manager tags bindings delete \ --tag-value=815471563813/env/dev \ --parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \ --location=us-east1
Passaggi successivi
- Scopri di più sulle etichette dei repository.