Los clústeres de Anthos en VMware ahora son Google Distributed Cloud (solo software) para VMware. Para obtener más información, consulta la descripción general del producto.
Configura la aplicación de la política de Autorización Binaria
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
La Autorización Binaria para Google Distributed Cloud es una Google Cloud función
que extiende la aplicación alojada en el tiempo de implementación de la
Autorización Binaria a tus clústeres de usuarios
locales. El caso de uso principal de la autorización binaria en Google Distributed Cloud es proteger las cargas de trabajo en tus clústeres de usuarios. Sigue los pasos de esta guía para aplicar las reglas de aplicación forzosa de una política de autorización binaria configurada en tu proyecto Google Cloud a tus clústeres de usuarios. Para obtener más información sobre las políticas y reglas de la Autorización Binaria, consulta la descripción general de la Autorización Binaria.
Requisitos previos
Antes de habilitar la aplicación forzosa de la política de autorización binaria para un clúster de usuarios, asegúrate de cumplir con los siguientes criterios previos:
Registra el clúster con una flota: En el caso de un clúster creado con gkectl, el clúster se registra en el proyecto Google Cloud que especificas en el campo gkeConnect.projectID del archivo de configuración del clúster. Este proyecto se conoce como el proyecto host de la flota.
Para obtener más información sobre las flotas, incluidos los casos de uso, las prácticas recomendadas y los
ejemplos, consulta la documentación de Administración de flotas.
Agrega el rol de Evaluador de políticas de autorización binaria a tu proyecto de host de la flota: Para otorgar el rol de Evaluador de políticas de autorización binaria (roles/binaryauthorization.policyEvaluator) a la cuenta de servicio de Kubernetes en tu proyecto de host de flota, ejecuta el siguiente comando:
Si tu clúster se ejecuta detrás de un servidor proxy, asegúrate de que este servidor permita conexiones a la API de Binary Authorization (binaryauthorization.googleapis.com). Esta API proporciona validación y control de implementación basados en políticas para las imágenes implementadas en tu clúster. Para obtener más información, consulta Reglas de proxy y firewall.
Una vez que cumplas con los requisitos previos, podrás habilitar (o inhabilitar) la
política de Autorización binaria cuando crees un clúster nuevo o actualices un clúster
existente.
Habilita la política de Autorización Binaria durante la creación del clúster
Puedes habilitar la aplicación de la política de Autorización Binaria con gkectl
o gcloud CLI.
gkectl
Para habilitar la Autorización Binaria cuando creas un clúster con gkectl, haz lo siguiente:
Antes de crear el clúster, agrega
binaryAuthorization.evaluationMode al archivo de configuración del clúster de usuario
como se muestra en el siguiente ejemplo:
Los valores permitidos para evaluationMode son los siguientes:
project_singleton_policy_enforce: Aplica las reglas especificadas en la política de Autorización Binaria, también conocida como política singleton de proyecto, en tu proyecto Google Cloud para administrar la implementación de imágenes de contenedor en tu clúster.
disabled: Inhabilita el uso de la autorización binaria para tu clúster.
Este es el valor predeterminado. Si omites binaryAuthorization, se inhabilita la función.
Realiza cualquier otro cambio necesario en el archivo de configuración del clúster y, luego, ejecuta el comando gkectl create cluster.
Habilita o inhabilita la política de Autorización Binaria para un clúster existente
Si tienes un clúster existente de versión 1.28 o superior, puedes habilitar o inhabilitar la Autorización Binaria en cualquier momento con gkectl o la CLI de gcloud.
gkectl
Para habilitar la función, sigue estos pasos:
Edita el archivo de configuración del clúster para agregar los campos binaryAuthorization:
ADMIN_CLUSTER_KUBECONFIG: la ruta de acceso del archivo kubeconfig del clúster de administrador
USER_CLUSTER_CONFIG_FILE: Es la ruta de acceso del archivo de configuración del clúster de usuario.
Espera a que la implementación llamada binauthz-module-deployment en el espacio de nombres binauthz-system esté lista.
Cuando la implementación esté lista, la Autorización Binaria aplicará las reglas especificadas en la política de Autorización Binaria, también conocida como política singleton de proyecto. Esta política está asociada con tu proyectoGoogle Cloud y especifica reglas para gobernar la implementación de imágenes de contenedor. Para obtener más información sobre el uso de gkectl para actualizar un clúster, consulta Actualiza clústeres.
Para obtener más información sobre las políticas y reglas de la Autorización Binaria, consulta Descripción general de la Autorización Binaria.
Para inhabilitar la función, sigue estos pasos:
Edita el archivo de configuración del clúster y quita la sección binaryAuthorization o establece evaluationMode en disabled.
Después de realizar este cambio, espera unos minutos hasta que se quite la implementación llamada
binauthz-module-deployment en el espacio de nombres binauthz-system.
Soluciona problemas
Si no completas todos los requisitos previos, es posible que veas un mensaje como el siguiente, que indica que hay un problema con la configuración de la autorización binaria:
failedtovalidateBinaryAuthorizationpolicy
(1)EnsuretheBinaryAuthorizationAPIisenabledforyour Google Cloud project:
gcloudservicesenablebinaryauthorization.googleapis.com--project=PROJECT_ID(2)EnsureanIAMpolicybindingisinplacegrantingbinaryauthorization.policyEvaluatorroletothebinauthz-system/binauthz-agentKubernetesserviceaccount:
gcloudprojectsadd-iam-policy-bindingPROJECT_ID\--member="serviceAccount:PROJECT_ID.svc.id.goog[binauthz-system/binauthz-agent]"\--role=roles/binaryauthorization.policyEvaluator
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-01 (UTC)"],[],[],null,["Binary Authorization for Google Distributed Cloud is a Google Cloud feature\nthat extends the hosted, deploy-time enforcement of\n[Binary Authorization](/binary-authorization/docs/overview) to your on-premises\nuser clusters. The primary use case for Binary Authorization on\nGoogle Distributed Cloud is to secure workloads on your user clusters. Follow the\nsteps in this guide to apply the enforcement rules of a Binary Authorization\npolicy configured in your Google Cloud project to your user clusters. For more\ninformation about Binary Authorization policies and rules, see\n[Binary Authorizationoverview](/binary-authorization/docs/key-concepts).\n| **Note:** If you enabled the ([Preview](/products#product-launch-stages)) Binary Authorization for Google Distributed Cloud, [disable it and clean up the\n| resources](/binary-authorization/docs/setting-up-on-prem#clean_up) before you enable the GA feature. Use the instructions in this document to enable the GA feature on version 1.28 or higher clusters.\n\nPrerequisites\n\nBefore you can enable Binary Authorization policy enforcement for a user\ncluster, ensure you've met the following prerequisite criteria:\n\n- **Register the cluster with a fleet:** For a cluster created with `gkectl`,\n the cluster is registered to the Google Cloud project that you specify\n in the `gkeConnect.projectID` field in the cluster configuration file. This\n project is referred to as the [fleet host\n project](/anthos/fleet-management/docs/fleet-concepts#fleet-host-project).\n To learn more about fleets, including use cases, best practices, and\n examples, see the [Fleet management](/anthos/fleet-management/docs)\n documentation.\n\n- **Enable the Binary Authorization API in your Google Cloud project:** [enable\n the Binary Authorization service](/binary-authorization/docs/enabling) in\n your fleet host project.\n\n- **Add the Binary Authorization Policy Evaluator role to your fleet host\n project:** To grant the Binary Authorization Policy Evaluator\n (`roles/binaryauthorization.policyEvaluator`) role to the Kubernetes service\n account on your fleet host project, run the following command:\n\n gcloud projects add-iam-policy-binding \u003cvar label=\"ID for the fleet host project\" translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e \\\n --member=\"serviceAccount:\u003cvar scope=\"PROJECT_ID\" translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e.svc.id.goog[binauthz-system/binauthz-agent]\" \\\n --role=\"roles/binaryauthorization.policyEvaluator\"\n\n If your cluster is running behind a proxy server, make sure the proxy server\n allows connections to the Binary Authorization API\n (`binaryauthorization.googleapis.com`). This API provides policy-based\n deployment validation and control for images deployed to your cluster. For\n more information about, see\n [Proxy and firewall rules proxy](/kubernetes-engine/distributed-cloud/vmware/docs/how-to/firewall-rules).\n\nOnce you satisfy the prerequisites, you can enable (or disable) the\nBinary Authorization policy when you create a new cluster or update an existing\ncluster.\n\nEnable the Binary Authorization policy during cluster creation\n\nYou can enable the Binary Authorization policy enforcement with either `gkectl`\nor gcloud CLI. \n\n`gkectl`\n\nTo enable Binary Authorization when you create a cluster with `gkectl`:\n\n1. Before you create your cluster, add\n `binaryAuthorization.evaluationMode` to the user cluster\n configuration file as shown in the following example:\n\n ...\n binaryAuthorization:\n evaluationMode: \"project_singleton_policy_enforce\"\n ...\n\n Allowed values for `evaluationMode` are:\n - `project_singleton_policy_enforce`: enforce the rules specified in the\n Binary Authorization *policy* , also known as a *project-singleton\n policy*, on your Google Cloud project to govern the deployment of\n container images on your cluster.\n\n - `disabled`: disable the use of Binary Authorization for your cluster.\n This is the default value. If you omit `binaryAuthorization`, the\n feature is disabled.\n\n2. Make any other changes needed in the cluster configuration file and then\n run the `gkectl create cluster` command.\n\nFor more information about creating clusters, see\n[Google Distributed Cloud installation overview](/kubernetes-engine/distributed-cloud/vmware/docs/how-to/install-overview).\n\nEnable or disable the Binary Authorization policy for an existing cluster\n\nIf you have an existing version 1.28 or higher cluster, you can enable or\ndisable Binary Authorization at any time, using `gkectl` or\ngcloud CLI. \n\n`gkectl`\n\n- To enable:\n\n 1. Edit the cluster configuration file to add the `binaryAuthorization`\n fields:\n\n ...\n binaryAuthorization:\n evaluationMode: \"project_singleton_policy_enforce\"\n\n 2. Update the cluster:\n\n ```\n gkectl update cluster \\\n --kubeconfig ADMIN_CLUSTER_KUBECONFIG \\\n --config USER_CLUSTER_CONFIG_FILE \\\n --force\n ```\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eADMIN_CLUSTER_KUBECONFIG\u003c/var\u003e: the path of the admin cluster kubeconfig file\n - \u003cvar translate=\"no\"\u003eUSER_CLUSTER_CONFIG_FILE\u003c/var\u003e: the path of your user cluster configuration file.\n 3. Wait for the Deployment named `binauthz-module-deployment` in the\n `binauthz-system` namespace to become ready.\n\n When the deployment is ready, Binary Authorization enforces the rules\n specified in the Binary Authorization *policy* , also known as a\n *project-singleton policy* . This policy is associated with your\n Google Cloud project and specifies rules to govern the deployment of\n container images. For more information about using `gkectl` to update a\n cluster, see [Update clusters](/kubernetes-engine/distributed-cloud/vmware/docs/how-to/upgrading).\n For more information about Binary Authorization policies and rules,\n see [Binary Authorization overview](/binary-authorization/docs/key-concepts).\n- To disable:\n\n 1. Edit the cluster configuration file and either remove the\n `binaryAuthorization` section or by set `evaluationMode` to\n `disabled`.\n\n ...\n binaryAuthorization:\n evaluationMode: \"disabled\"\n\n 2. Update the cluster:\n\n ```\n gkectl update cluster \\\n --kubeconfig ADMIN_CLUSTER_KUBECONFIG \\\n --config USER_CLUSTER_CONFIG_FILE \\\n --force\n ```\n\n After you make this change, wait a few minutes until the Deployment named\n `binauthz-module-deployment` in the `binauthz-system` namespace is\n removed.\n\nTroubleshooting\n\nIf you don't complete all of the prerequisites, you may see a message like the\nfollowing indicates there is a problem with the Binary Authorization configuration: \n\n```bash\nfailed to validate Binary Authorization policy\n\n(1) Ensure the Binary Authorization API is enabled for your Google Cloud project:\n gcloud services enable binaryauthorization.googleapis.com --project=PROJECT_ID\n(2) Ensure an IAM policy binding is in place granting binaryauthorization.policyEvaluator role to the binauthz-system/binauthz-agent Kubernetes service account:\n gcloud projects add-iam-policy-binding PROJECT_ID \\\n --member=\"serviceAccount:\u003cvar class=\"readonly\" translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e.svc.id.goog[binauthz-system/binauthz-agent]\" \\\n --role=roles/binaryauthorization.policyEvaluator\n```"]]