Resolver erros de autorização

Esta página faz parte de Preparação para mudanças futuras na autorização. Ele explica os erros que podem aparecer e como corrigi-los.

Uma ação negada tem uma de duas causas, e vale a pena diferenciá-las:

As duas verificações são válidas, então corrigir uma não corrige a outra.

Erros da conta de serviço de execução como

Algumas dessas verificações ainda estão sendo lançadas, então talvez você não veja todos os erros ainda. Nas mensagens, PRINCIPAL é a conta que foi verificada. Ele mostra The caller quando não é possível nomear a conta.

Situação Você verá o seguinte: O que fazer
Uma pessoa, automação ou acionador inicia uma integração, mas não pode agir como a conta de serviço de execução dela. A execução é rejeitada com o seguinte erro: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to run this integration.
  • Uma chamada de API retorna o erro, e nada aparece nos registros de execução.
  • Um gatilho de evento do Cloud Pub/Sub, do Eventarc ou do Integration Connectors registra uma execução com falha nos registros de execução, e o evento não é entregue novamente.
  • Um job do Cloud Scheduler informa um erro PERMISSION_DENIED.
Conceda Usuário da conta de serviço a quem iniciar o processo. Para um gatilho, é a conta de serviço dele.
Uma integração criada a partir de 15 de outubro de 2026 com um gatilho diferente de API ou particular não tem uma conta de serviço de execução como. A publicação e o teste falham com o seguinte erro: Set a run-as service account. These triggers run with no caller: TRIGGERS. Required for integrations created on or after October 15, 2026 (UTC). Definir uma conta de serviço de execução como
Uma execução sem credenciais de usuário não tem uma conta de serviço de execução como. Se a governança de integração estiver ativada para a região, a publicação e o teste vão falhar com o seguinte erro, seja qual for a data de criação da integração: Your project requires a run-as service account. Set one before publish or test. A governança é a configuração Ativar governança descrita em Editar região. Para regiões sem governança, o sistema não vai rejeitar essas execuções a partir de 15 de outubro de 2026. No entanto, os seguintes itens estão programados para falhar em uma versão futura:
  • Tarefas sem uma identidade, como Conectores, Chamar endpoint REST ou tarefas de funções do Cloud Run.
  • Execuções assíncronas, com o seguinte erro: Integration NAME needs a run-as service account to run asynchronously via trigger TRIGGER_ID.
Definir uma conta de serviço de execução como
Uma tarefa de integração de chamadas não pode iniciar a subintegração A tarefa "Chamar integração" da integração de chamada falha por um destes motivos:
  • A subintegração é chamada de forma assíncrona e não tem uma conta de serviço de execução como, mesmo que a integração de chamada tenha uma: Integration NAME needs a run-as service account to run asynchronously via trigger TRIGGER_ID.
  • Quem iniciou a integração de chamadas ou a conta de serviço de execução como da integração de chamadas não pode atuar como a conta de serviço de execução como da subintegração: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to run this integration.
Defina uma conta de serviço de execução como na subintegração ou chame-a de forma síncrona. Em seguida, conceda o papel de usuário da conta de serviço.
Alguém publica ou testa uma integração que usa um perfil de autenticação cuja conta de serviço não pode ser usada, ou uma execução atinge uma tarefa que usa esse perfil. A publicação ou o teste falha, ou a tarefa falha, com o seguinte erro: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to use auth config "AUTH_PROFILE_NAME". Se o restante da execução continua depende de como a tarefa lida com erros. Conceder Usuário da conta de serviço na conta nomeada no perfil
Alguém cria ou edita um perfil de autenticação de conta de serviço ou token do OIDC sem permissão para agir como a conta de serviço. Salvar o perfil falha com o seguinte erro: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to save this auth config. Conceda Usuário da conta de serviço na conta nomeada no perfil a quem a gerencia.
Um aprovador não pode atuar como a conta de serviço de execução como A aprovação ou retomada da execução falha com o seguinte erro: PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to resume this execution. A execução permanece pausada até expirar, então as aprovações podem parecer ter parado de funcionar Conceda Usuário da conta de serviço a todos que podem aprovar
Alguém publica ou testa uma integração sem permissão para atuar como a conta de serviço de execução PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to publish or test this integration. Tudo o que já foi publicado continua em execução. Se a automação publicar para você, isso vai aparecer no pipeline de implantação, e não no console. Conceder Usuário da conta de serviço a editores, testadores e automação
Uma tarefa é executada como a pessoa que a acionou, e essa pessoa não pode acessar o recurso. Em uma nova integração e, a partir de 15 de outubro de 2026, em um teste de qualquer integração, as tarefas de JavaScript, Script do Data Transformer e Mapeamento de dados serão executadas dessa forma. A execução começa normalmente, mas uma tarefa falha ao nomear um recurso, mesmo que nada tenha mudado na integração. Conceda acesso ao recurso ou mova a integração para uma conta de serviço executada como que já tenha acesso. Essa geralmente é a melhor resposta, já que impede que o acesso da integração varie de acordo com quem a executa.

Para conferir a lista completa de códigos de erro da Application Integration, consulte Códigos de erro.

Erros de função do IAM

Além da conta de serviço de execução como, o Application Integration verifica as permissões do IAM do usuário para cada ação. Se você encontrar um erro PERMISSION_DENIED ao interagir com uma integração ou se os registros de execução não forem carregados, verifique se você tem uma função que concede as permissões necessárias:

Para fazer isso Você precisa de uma destas funções
Ver e abrir integrações roles/integrations.integrationViewer
Conferir registros e detalhes da execução roles/integrations.integrationViewer ou roles/integrations.integrationInvoker
Executar uma integração roles/integrations.integrationInvoker ou roles/integrations.integrationEditor
Criar e editar integrações roles/integrations.integrationEditor
Publicar uma integração roles/integrations.integrationDeployer ou roles/integrations.integrationEditor
Aprovar ou retomar uma execução suspensa roles/integrations.suspensionResolver ou roles/integrations.integrationAdmin
Acesso total a todas as integrações roles/integrations.integrationAdmin

Para conceder um papel, execute o seguinte comando:

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

Para ver mais informações, consulte os seguintes tópicos:

Uma concessão não corrigiu o erro

  • A concessão foi para o projeto errado. Ela precisa ser feita no projeto que é proprietário da conta de serviço, que não é necessariamente o proprietário da integração.
  • Ainda não entrou em vigor. Aguarde alguns minutos. As decisões de autorização são armazenadas em cache brevemente, além do atraso normal de propagação do IAM.
  • Há uma segunda conta de serviço envolvida. Sua conta de serviço de execução, a conta de serviço de cada perfil de autenticação e a conta de serviço de execução de cada subintegração são separadas, e cada uma precisa de uma concessão própria.
  • A concessão foi para o principal errado. Para um gatilho de evento do Cloud Scheduler, Cloud Pub/Sub, Eventarc ou Integration Connectors, o principal que precisa da concessão é a conta de serviço do gatilho, não você. Consulte Quem precisa ser usuário da conta de serviço.
  • O bloqueio é sua função, não a conta de serviço. O usuário da conta de serviço se refere à possibilidade de agir como a conta de serviço de execução como. Um papel separado do IAM governa se você tem permissão para realizar a ação. Consulte Erros de papéis do IAM.