Soluciona problemas de errores de autorización

Esta página forma parte de Prepárate para los próximos cambios en la autorización. En él, se explican los errores que podrías ver y cómo corregirlos.

Una acción rechazada tiene una de dos causas, y vale la pena distinguirlas:

Ambas verificaciones se aplican, por lo que corregir una no corrige la otra.

Errores de la cuenta de servicio de ejecución como

Algunas de estas verificaciones aún se están implementando, por lo que es posible que aún no veas todos los errores. En los mensajes, PRINCIPAL es la cuenta que se verificó. Se lee The caller cuando no se puede nombrar esa cuenta.

Situación Lo que verá: Qué hacer
Una persona, una automatización o un activador inician una integración, pero no pueden actuar como su cuenta de servicio de ejecución como Se rechaza la ejecución con el siguiente error: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to run this integration.
  • Una llamada a la API devuelve el error y no aparece nada en los registros de ejecución.
  • Un activador de eventos de Cloud Pub/Sub, Eventarc o Integration Connectors registra una ejecución fallida en tus registros de ejecución, y el evento no se vuelve a entregar.
  • Un trabajo de Cloud Scheduler informa un error PERMISSION_DENIED.
Otorga el rol de usuario de cuenta de servicio a quien lo inicie. En el caso de un activador, es la cuenta de servicio del activador.
Una integración creada a partir del 15 de octubre de 2026 con un activador que no sea de API o privado no tiene una cuenta de servicio de ejecución como. La publicación y las pruebas fallan con el siguiente error: Set a run-as service account. These triggers run with no caller: TRIGGERS. Required for integrations created on or after October 15, 2026 (UTC). Configura una cuenta de servicio de ejecución como
Una ejecución sin credenciales de usuario no tiene una cuenta de servicio de ejecución como. Si la administración de la integración está habilitada para la región, la publicación y las pruebas fallarán con el siguiente error, independientemente de la fecha de creación de la integración: Your project requires a run-as service account. Set one before publish or test. La administración es el parámetro de configuración Habilitar administración que se describe en Editar región. En el caso de las regiones sin administración, el sistema no rechazará estas ejecuciones a partir del 15 de octubre de 2026. Sin embargo, se prevé que los siguientes elementos fallen en una versión futura:
  • Tareas sin identidad, como las de conectores, Llamar a extremo de REST o funciones de Cloud Run
  • Ejecuciones asíncronas, con el siguiente error: Integration NAME needs a run-as service account to run asynchronously via trigger TRIGGER_ID.
Configura una cuenta de servicio de ejecución como
Una tarea de Integración de llamadas no puede iniciar su subintegración La tarea Integración de llamadas de la integración de llamadas falla por uno de los siguientes motivos:
  • La subintegración se llama de forma asíncrona y no tiene una cuenta de servicio de ejecución como, incluso si la integración que llama tiene una: Integration NAME needs a run-as service account to run asynchronously via trigger TRIGGER_ID.
  • Quien haya iniciado la integración de llamadas o la cuenta de servicio de ejecución de la integración de llamadas no puede actuar como la cuenta de servicio de ejecución de la subintegración: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to run this integration.
Configura una cuenta de servicio de ejecución en la integración secundaria o llámala de forma síncrona. Luego, otorga el rol de usuario de cuenta de servicio.
Alguien publica o prueba una integración que usa un perfil de autenticación cuya cuenta de servicio no puede suplantar, o bien una ejecución llega a una tarea que lo usa. La publicación o la prueba fallan, o la tarea falla, con el siguiente error: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to use auth config "AUTH_PROFILE_NAME". Si el resto de la ejecución continúa depende de cómo la tarea maneja los errores. Otorga el rol de Usuario de cuenta de servicio en la cuenta que se menciona en el perfil.
Alguien crea o edita un perfil de autenticación de cuenta de servicio o token de OIDC sin permiso para actuar como su cuenta de servicio No se puede guardar el perfil y se muestra el siguiente error: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to save this auth config. Otorga el rol de usuario de cuenta de servicio en la cuenta mencionada en el perfil a quien la administre.
Un responsable de aprobación no puede actuar como la cuenta de servicio de ejecución La aprobación o la reanudación de la ejecución fallan con el siguiente error: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to resume this execution. La ejecución permanece en pausa hasta que vence, por lo que es posible que las aprobaciones parezcan haber dejado de funcionar. Otorga el rol de usuario de cuenta de servicio a todas las personas que puedan aprobar la solicitud.
Alguien publica o prueba una integración sin permiso para actuar como su cuenta de servicio de ejecución PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to publish or test this integration. Todo lo que ya se haya publicado seguirá ejecutándose. Si la automatización publica por ti, esto se muestra en tu canalización de implementación en lugar de en la consola. Otorga el rol de usuario de cuenta de servicio a publicadores, verificadores y automatización
Una tarea se ejecuta como la persona que la activó, y esa persona no puede acceder al recurso. En una integración nueva y, a partir del 15 de octubre de 2026, en una prueba de cualquier integración, las tareas de JavaScript, Secuencia de comandos del transformador de datos y Asignación de datos se ejecutan de esta manera. La ejecución comienza normalmente y, luego, falla una tarea que nombra un recurso, aunque no cambió nada en la integración. Otorga acceso al recurso a esas personas o mueve la integración a una cuenta de servicio de ejecución como que ya lo tenga (por lo general, esta es la mejor respuesta, ya que evita que el acceso de la integración varíe según quién la ejecute).

Para ver la lista completa de códigos de error de Application Integration, consulta Códigos de error.

Errores de roles de IAM

Además de la cuenta de servicio de ejecución, Application Integration verifica los permisos de IAM del usuario para cada acción. Si encuentras un error de PERMISSION_DENIED cuando interactúas con una integración o si no se cargan los registros de ejecución, asegúrate de tener un rol que otorgue los permisos necesarios:

Para ello, sigue estos pasos: Necesitas uno de estos roles
Cómo ver y abrir integraciones roles/integrations.integrationViewer
Cómo ver los registros y detalles de ejecución roles/integrations.integrationViewer o roles/integrations.integrationInvoker
Ejecuta una integración roles/integrations.integrationInvoker o roles/integrations.integrationEditor
Crea y edita integraciones roles/integrations.integrationEditor
Publica una integración roles/integrations.integrationDeployer o roles/integrations.integrationEditor
Cómo aprobar o reanudar una ejecución suspendida roles/integrations.suspensionResolver o roles/integrations.integrationAdmin
Acceso completo a todas las integraciones roles/integrations.integrationAdmin

Para otorgar un rol, ejecuta el siguiente comando:

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member='user:PRINCIPAL' \
    --role='ROLE'

Para obtener más información, consulta lo siguiente:

Un subsidio no corrigió el error

  • El subsidio se destinó al proyecto incorrecto. Se debe realizar en el proyecto que posee la cuenta de servicio, que no necesariamente es el que posee la integración.
  • Aún no se aplica. Espera unos minutos. Las decisiones de autorización se almacenan en caché brevemente, además de la demora normal de propagación de IAM.
  • Hay una segunda cuenta de servicio involucrada. Tu cuenta de servicio de ejecución, la cuenta de servicio de cada perfil de autenticación y la cuenta de servicio de ejecución de cada subintegración son independientes, y cada una necesita su propia concesión.
  • El otorgamiento se realizó al principal incorrecto. En el caso de un activador de eventos de Cloud Scheduler, Cloud Pub/Sub, Eventarc o Integration Connectors, la principal que necesita el otorgamiento es la cuenta de servicio del activador, no tú. Consulta Quién necesita la función de usuario de cuenta de servicio.
  • El bloqueo es tu propio rol, no la cuenta de servicio. Usuario de cuenta de servicio se refiere a si puedes actuar como la cuenta de servicio de ejecución; un rol de IAM independiente rige si tienes permiso para realizar la acción. Consulta Errores de roles de IAM.