Enumerar etiquetas de política

Enumera las etiquetas de política existentes.

Muestra de código

Go

Antes de probar esta muestra, sigue las instrucciones de configuración para Go que se encuentran en la guía de inicio rápido de Data Catalog con bibliotecas cliente. Para obtener más información, consulta la documentación de referencia de la API de Go de Data Catalog.

Para autenticarte en Data Catalog, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.

import (
	"context"
	"fmt"
	"io"

	datacatalog "cloud.google.com/go/datacatalog/apiv1beta1"
	"cloud.google.com/go/datacatalog/apiv1beta1/datacatalogpb"
	"google.golang.org/api/iterator"
)

// listPolicyTags prints information about the policy tags within a given taxonomy
// resource.
func listPolicyTags(w io.Writer, parentTaxonomyID string) error {
	// parentTaxonomyID := projects/myproject/locations/us/taxonomies/1234"
	ctx := context.Background()
	policyClient, err := datacatalog.NewPolicyTagManagerClient(ctx)
	if err != nil {
		return fmt.Errorf("datacatalog.NewPolicyTagManagerClient: %w", err)
	}
	defer policyClient.Close()

	req := &datacatalogpb.ListPolicyTagsRequest{
		Parent: parentTaxonomyID,
	}
	it := policyClient.ListPolicyTags(ctx, req)
	fmt.Fprintf(w, "listing policy tags in taxonomy %s\n", parentTaxonomyID)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			return fmt.Errorf("ListPolicyTags iteration error: %w", err)
		}

		fmt.Fprintf(w, "\t- %s (%s)", resp.Name, resp.DisplayName)
		if resp.ParentPolicyTag != "" {
			fmt.Fprintf(w, " has parent Tag %s", resp.ParentPolicyTag)
		}
		fmt.Fprintln(w)
	}
	return nil
}

¿Qué sigue?

Para buscar y filtrar muestras de código para otros productos de Google Cloud, consulta el navegador de muestra de Google Cloud.