Soluciona problemas de errores de autorización
En esta página, se explican los errores de autorización que podrías encontrar después de los cambios de autorización y cómo resolverlos.
Por lo general, las acciones rechazadas se producen por uno de los siguientes dos motivos:
- Permisos de la cuenta de servicio de ejecución: El emisor no tiene permiso para actuar como la cuenta de servicio o la cuenta de servicio no tiene los permisos de recursos necesarios. Consulta Errores de la cuenta de servicio de ejecución como.
- Roles de IAM del emisor: El emisor no tiene el rol de IAM necesario para realizar la acción. Consulta Errores de roles de IAM.
Debido a que Application Integration verifica ambos requisitos, resolver un problema con uno no resuelve automáticamente los problemas con el otro.
Errores de la cuenta de servicio de ejecución como
Debido a que algunas de estas verificaciones de autorización aún se están implementando, es posible que no
encuentres todos estos errores de inmediato. En los mensajes de error,
PRINCIPAL es la cuenta que evalúa el sistema. El mensaje
muestra The caller si no se puede determinar la identidad de la cuenta.
| Condición | Error o comportamiento | Solución |
|---|---|---|
| Una principal (usuario, automatización o activador) inicia una integración, pero no tiene permiso para actuar como la cuenta de servicio de ejecución de la integración. | La ejecución se rechaza con el siguiente error:
PRINCIPAL needs roles/iam.serviceAccountUser on
SERVICE_ACCOUNT (or its project) to run this integration.
|
Otorga el rol de usuario de cuenta de servicio a la principal que inicia la integración. Para un activador, otorga este rol a la cuenta de servicio del activador. |
| Una integración creada el 15 de octubre de 2026 o después de esa fecha con un activador que no sea de API o privado no tiene una cuenta de servicio de ejecución. | 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). |
Establece una cuenta de servicio de ejecución. |
| Una ejecución activada sin credenciales de usuario no tiene una cuenta de servicio de ejecución. | Si la administración de integraciones 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 se refiere al 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:
|
Establece una cuenta de servicio de ejecución. |
| Una tarea de integración de llamadas no puede iniciar su subintegración. | La tarea Integración de llamadas de la integración que realiza la llamada falla por uno de los siguientes
motivos:
|
Establece una cuenta de servicio de ejecución en la subintegración o configura la llamada para que se ejecute de forma síncrona. Luego, otorga el rol de usuario de cuenta de servicio en la cuenta de servicio de la integración secundaria. |
| Una principal publica o prueba una integración que usa un perfil de autenticación sin permiso para actuar como su cuenta de servicio, o una ejecución alcanza una tarea que usa ese perfil. | La publicación o las pruebas 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 la ejecución continúa, depende de
cómo se configure la tarea para controlar los errores. |
Otorga el rol de usuario de cuenta de servicio en la cuenta de servicio especificada en el perfil. |
| Una principal crea o edita un perfil de autenticación de cuenta de servicio o token de OIDC sin permiso para actuar como la cuenta de servicio especificada. | No se puede guardar el perfil debido al 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 que se indica en el perfil a la principal que la administra. |
| Un aprobador no tiene permiso para actuar como la cuenta de servicio de ejecución. | La aprobación o reanudación de la ejecución falla con el siguiente error:
PRINCIPAL needs roles/iam.serviceAccountUser on
SERVICE_ACCOUNT (or its project) to resume this execution.
La ejecución permanece detenida hasta que vence, lo que puede hacer que las aprobaciones parezcan
como si hubieran dejado de funcionar. |
Otorga el rol de usuario de cuenta de servicio a todos los aprobadores potenciales. |
| Una principal 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. Las versiones publicadas anteriormente siguen ejecutándose. Si usas
la automatización para publicar, este error aparecerá en los registros de la canalización de implementación, en lugar de
en la consola de Google Cloud . |
Otorga el rol de usuario de cuenta de servicio a los publicadores, verificadores y cuentas de servicio de implementación automatizada. |
| Una tarea se ejecuta con las credenciales de la principal que la activó, y esa principal no tiene acceso al recurso de destino. 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 funcionan de esta manera. | La ejecución se inicia con normalidad, pero una tarea falla y hace referencia a un recurso, incluso si no se realizaron cambios en la integración. | Otorga a la principal acceso al recurso o asigna a la integración una cuenta de servicio de ejecución que ya tenga el acceso requerido. Se recomienda usar una cuenta de servicio de ejecución, ya que garantiza que el acceso de la integración siga siendo coherente, independientemente de quién la active. |
Para obtener la lista completa de códigos de error de Application Integration, consulta Códigos de error.
Errores de roles de IAM
Además de verificar la cuenta de servicio de ejecución, Application Integration verifica los
permisos de IAM del emisor para cada acción. Si encuentras un
error 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:
| Acción | Roles obligatorios |
|---|---|
| Ver y abrir integraciones | roles/integrations.integrationViewer |
| Consulta los registros y los detalles de la ejecución | roles/integrations.integrationViewer o
roles/integrations.integrationInvoker |
| Ejecuta una integración | roles/integrations.integrationInvoker o
roles/integrations.integrationEditor |
| Crear y editar 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 |
| Obtén 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 los siguientes recursos:
- Roles de IAM predefinidos para obtener la lista completa de roles y los permisos específicos que contienen.
- Control de acceso para obtener detalles sobre cómo Application Integration usa IAM.
Soluciona problemas de otorgamientos ineficaces
- Se otorgó el permiso al proyecto equivocado: El permiso se debe otorgar en el proyecto que es propietario de la cuenta de servicio, que no necesariamente es el proyecto que es propietario de la integración.
- Retraso de propagación: Las decisiones de autorización se almacenan en caché brevemente, además de los retrasos de propagación estándar de IAM. Espera unos minutos antes de volver a intentarlo.
- Varias cuentas de servicio involucradas: La 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 se evalúan por separado. Cada uno requiere su propio otorgamiento explícito.
- Permiso otorgado a la principal incorrecta: Para un activador de eventos de Cloud Scheduler, Cloud Pub/Sub, Eventarc o Integration Connectors, la principal que requiere el permiso es la cuenta de servicio del activador, no tu cuenta de usuario. Consulta Quién necesita el rol de usuario de cuenta de servicio.
- Bloqueado por roles del emisor: El rol de usuario de cuenta de servicio determina si puedes actuar como la cuenta de servicio de ejecución. Sin embargo, un rol de IAM independiente determina si tienes permiso para realizar la acción de integración en sí. Consulta Errores de roles de IAM.