Utilizza i tag per raggruppare i repository e altre risorse in Google Cloud per la generazione di report, l'auditing e controllo dell'accesso'interno della tua organizzazione Google Cloud.
Per raggruppare i repository in Artifact Registry per l'automazione e la fatturazione, utilizza le etichette. I tag e le etichette funzionano indipendentemente l'uno dall'altro e possono essere applicati entrambi allo stesso repository. Per ulteriori informazioni sulle differenze tra tag ed etichette, consulta la sezione Tag ed etichette.
Che cosa sono i tag?
I tag sono coppie chiave-valore che puoi applicare alle tue risorse per un controllo dell'accesso granulare.
Gli amministratori di progetto creano tag per le risorse in Google Cloud a livello di organizzazione e li gestiscono in Resource Manager. Quando associ un tag a un repository Artifact Registry, puoi utilizzare il tag con con condizioni IAM per concedere l'accesso condizionale al repository. Non puoi associare tag a singoli artefatti.
Tieni presente le seguenti restrizioni:
I criteri dell'organizzazione possono fare riferimento ai tag ereditati dal progetto principale e dai livelli superiori in modo condizionale, ma non supportano i tag che colleghi direttamente ai repository.
Gli audit log di Cloud non vengono generati per il collegamento dei tag e la visualizzazione delle associazioni di tag nei repository.
Per ulteriori informazioni sui tag e controllo dell'accesso condizionale con i tag, consulta Tag e controllo dell'accesso.
Autorizzazioni obbligatorie
Le autorizzazioni necessarie dipendono dall'azione che devi eseguire.
Per ottenere queste autorizzazioni, chiedi all'amministratore di concedere il ruolo suggerito al livello appropriato della gerarchia delle risorse.
Visualizza tag
Per visualizzare le definizioni dei tag e i tag collegati alle risorse, devi disporre del ruolo Visualizzatore tag (roles/resourcemanager.tagViewer
) o di un altro ruolo che includa le seguenti autorizzazioni:
Autorizzazioni obbligatorie
resourcemanager.tagKeys.get
resourcemanager.tagKeys.list
resourcemanager.tagValues.list
resourcemanager.tagValues.get
listTagBindings
per il tipo di risorsa appropriato. Ad esempio,compute.instances.listTagBindings
per visualizzare i tag associati alle istanze di Compute Engine.listEffectiveTags
per il tipo di risorsa appropriato.
Ad esempio,
compute.instances.listEffectiveTags
per visualizzare tutti i tag collegati o ereditati dalle istanze di Compute Engine.
Per visualizzare i tag a livello di organizzazione, devi disporre del ruolo Visualizzatore organizzazione (roles/resourcemanager.organizationViewer
) nella risorsa organizzazione.
Amministrazione dei tag
Per creare, aggiornare ed eliminare le definizioni dei tag, devi disporre del ruolo Amministratore tag (roles/resourcemanager.tagAdmin
) o di un altro ruolo che includa le seguenti autorizzazioni:
Autorizzazioni obbligatorie
resourcemanager.tagKeys.create
resourcemanager.tagKeys.update
resourcemanager.tagKeys.delete
resourcemanager.tagKeys.list
resourcemanager.tagKeys.get
resourcemanager.tagKeys.getIamPolicy
resourcemanager.tagKeys.setIamPolicy
resourcemanager.tagValues.create
resourcemanager.tagValues.update
resourcemanager.tagValues.delete
resourcemanager.tagValues.list
resourcemanager.tagValues.get
resourcemanager.tagValues.getIamPolicy
resourcemanager.tagValues.setIamPolicy
Per amministrare i tag a livello di organizzazione, devi disporre del ruolo Visualizzatore organizzazione (roles/resourcemanager.organizationViewer
) nella risorsa organizzazione.
Gestisci i tag sulle risorse
Per aggiungere e rimuovere i tag collegati alle risorse, devi disporre del ruolo Utente tag (roles/resourcemanager.tagUser
) o di un altro ruolo con autorizzazioni equivalenti, sia per il valore tag sia per le risorse a cui stai collegando il valore tag. Il ruolo Utente tag include le seguenti autorizzazioni:
Autorizzazioni obbligatorie
- Autorizzazioni richieste per la risorsa a cui stai collegando il valore tag
- Autorizzazione
createTagBinding
specifica della risorsa, ad esempiocompute.instances.createTagBinding
per le istanze di Compute Engine. - Autorizzazione
deleteTagBinding
specifica della risorsa, ad esempiocompute.instances.deleteTagBinding
per le istanze di Compute Engine. - Autorizzazioni richieste per il valore tag:
resourcemanager.tagValueBindings.create
resourcemanager.tagValueBindings.delete
- Autorizzazioni che consentono di visualizzare i progetti e le definizioni dei tag:
resourcemanager.tagValues.get
resourcemanager.tagValues.list
resourcemanager.tagKeys.get
resourcemanager.tagKeys.list
resourcemanager.projects.get
Collegamento di tag ai repository
Dopo che un amministratore del progetto ha creato i tag, puoi collegare i tag 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
Richiedi all'amministratore il valore del tag da associare.
Puoi associare un valore tag con uno di questi tipi di identificatori:
- Un nome con spazio dei nomi, ad esempio
123456789012/env/dev
- Un documento di identità permanente, ad esempio
tagValues/567890123456
- Un nome con spazio dei nomi, ad esempio
Apri la pagina Repositories nella console Google Cloud.
Seleziona il repository a cui vuoi aggiungere tag.
Nella sezione Dettagli repository, fai clic su Mostra altro.
Vengono visualizzati i tag esistenti nel 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 chiave, digita per filtrare l'elenco di tag, poi seleziona la chiave tag.
Nel campo Valore, digita per filtrare l'elenco di tag, quindi seleziona il valore del tag.
Fai clic su Salva.
Fai clic su Conferma.
Il tag è associato al repository.
Interfaccia a riga di comando gcloud
Richiedi all'amministratore il valore del tag da associare.
Puoi associare un valore tag con uno di questi tipi di identificatori:
- Un nome con spazio dei nomi, ad esempio
123456789012/env/dev
- Un documento di identità permanente, ad esempio
tagValues/567890123456
- Un nome con spazio dei nomi, ad esempio
Associa il valore del tag con il seguente comando:
gcloud alpha resource-manager tags bindings create \ --tag-value=TAG_VALUE \ --parent=REPOSITORY_ID \ --location=LOCATION
Sostituisci i seguenti valori:
TAG_VALUE
è l'ID permanente o il nome con spazio dei nomi del valore tag da collegare.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-repo
LOCATION
è la posizione del repository.
Considera il seguente esempio:
- Valore tag:
815471563813/env/dev
- Progetto:
my-project
- Repository:
my-repo
- Posizione del repository:
us-east1
Il seguente comando gcloud CLI collega il tag al repository:
gcloud alpha 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 le autorizzazioni di accesso.
Console
Apri la pagina Repositories 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 nella gerarchia delle risorse.
Interfaccia a riga di comando gcloud
Per elencare i tag collegati a un repository, esegui questo comando:
gcloud alpha resource-manager tags bindings list \
--parent=REPOSITORY_ID \
--location=LOCATION
Il comando elenca solo i tag direttamente collegati alla risorsa specificata, quindi non restituisce i tag ereditati dal progetto principale o da quelli successivi. Puoi elencare i tag ereditati dal progetto padre specificando un progetto anziché un repository con il flag --parent
.
Ad esempio, questo comando elenca i tag associati al repository my-repo
nel progetto my-project
e nella posizione us-east1
:
gcloud alpha 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 associati al numero di progetto 7890123456
:
gcloud alpha 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 principale o da un'altra parte della gerarchia delle risorse, un amministratore del progetto deve scollegarlo dalla risorsa a cui è associato il tag.
Per rimuovere un tag collegato a un repository:
Console
Ottieni il valore del tag che vuoi rimuovere. Se non conosci il valore dei tag, elenca i tag associati al repository.
Apri la pagina Repositories nella console Google Cloud.
Seleziona il repository.
Nella sezione Dettagli repository, fai clic su Mostra altro.
Vengono visualizzati i tag esistenti nel repository, inclusi quelli ereditati.
Fai clic sull'icona Modifica tag.
Nella sezione Tag diretti, individua il tag da 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 dei tag, elenca i tag associati al repository.
Scollega il valore del tag con il seguente comando:
gcloud alpha resource-manager tags bindings delete \ --tag-value=TAG_VALUE \ --parent=REPOSITORY_ID \ --location=LOCATION
Sostituisci i seguenti valori:
Valore del tag
TAG_VALUE
da 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-repo
LOCATION
è la posizione del repository.
Considera il seguente esempio:
- 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 alpha 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 del repository.