認証エラーのトラブルシューティング

このページは、今後の認証の変更に備えるの一部です。表示される可能性のあるエラーとその解決方法について説明します。

拒否されたアクションには 2 つの原因があり、それらを区別する価値があります。

両方のチェックが適用されるため、一方を修正しても他方は修正されません。

Run-as サービス アカウントのエラー

これらのチェックの一部はまだロールアウト中であるため、すべてのエラーがまだ表示されない可能性があります。メッセージでは、PRINCIPAL はチェックされたアカウントです。アカウントに名前を付けられない場合は、The caller と表示されます。

状況 表示される内容 手順
ユーザー、自動化、トリガーがインテグレーションを開始するが、実行ユーザー サービス アカウントとして機能できない 実行が次のエラーで拒否されます。 PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to run this integration.
  • API 呼び出しでエラーが返され、実行ログに何も表示されません。
  • Cloud Pub/Sub、Eventarc、Integration Connectors のイベント トリガーは、実行ログに失敗した実行を記録し、イベントは再度配信されません。
  • Cloud Scheduler ジョブが PERMISSION_DENIED エラーを報告します。
開始したユーザーにサービス アカウント ユーザーを付与します。トリガーの場合、これはトリガーのサービス アカウントです。
2026 年 10 月 15 日以降に作成された、API または Private 以外のトリガーを使用するインテグレーションには、実行ユーザー サービス アカウントがありません。 公開とテストが次のエラーで失敗します。 Set a run-as service account. These triggers run with no caller: TRIGGERS. Required for integrations created on or after October 15, 2026 (UTC). 実行ユーザー サービス アカウントを設定する
ユーザー認証情報のない実行には、実行ユーザー サービス アカウントがありません。 リージョンで統合ガバナンスが有効になっている場合、統合の作成日に関係なく、公開とテストが次のエラーで失敗します。 Your project requires a run-as service account. Set one before publish or test. ガバナンスは、リージョンを編集するで説明されている [ガバナンスを有効にする] 設定です。ガバナンスのないリージョンでは、2026 年 10 月 15 日以降、これらの実行は拒否されません。ただし、今後のリリースでは次の処理が失敗する予定です。
  • ID のないタスク(コネクタ、Call REST Endpoint、Cloud Run functions タスクなど)。
  • 非同期実行。次のエラーが発生します。 Integration NAME needs a run-as service account to run asynchronously via trigger TRIGGER_ID.
実行ユーザー サービス アカウントを設定する
統合の呼び出しタスクがサブインテグレーションを開始できない 呼び出し元の統合の統合の呼び出しタスクが、次のいずれかの理由で失敗します。
  • サブインテグレーションは非同期で呼び出され、呼び出し元のインテグレーションに実行ユーザー サービス アカウントがある場合でも、実行ユーザー サービス アカウントはありません。Integration NAME needs a run-as service account to run asynchronously via trigger TRIGGER_ID.
  • 呼び出し統合を開始したユーザー、または呼び出し統合の実行ユーザー サービス アカウントは、サブ統合の実行ユーザー サービス アカウントとして機能できません。 PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to run this integration.
サブインテグレーションで実行ユーザーのサービス アカウントを設定するか、同期的に呼び出します。次に、そのサービス アカウントにサービス アカウント ユーザーを付与します。
サービス アカウントとして振る舞うことができない認証プロファイルを使用する統合を公開またはテストする、または実行がその認証プロファイルを使用するタスクに到達する 公開またはテストが失敗するか、タスクが失敗して次のエラーが表示されます。 PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to use auth config "AUTH_PROFILE_NAME". 実行の残りの部分が続行されるかどうかは、タスクがエラーを処理する方法によって異なります。 プロファイルで指定されたアカウントに対するサービス アカウント ユーザーを付与
サービス アカウントとして動作する権限がないユーザーが、サービス アカウントまたは OIDC トークン認証プロファイルを作成または編集する プロファイルの保存が失敗し、次のエラーが表示されます。 PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to save this auth config. プロファイルで指定されたアカウントのサービス アカウント ユーザーを付与
承認者は実行ユーザーのサービス アカウントとして機能できない 実行の承認または再開が次のエラーで失敗します。 PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to resume this execution. 実行は期限切れになるまで一時停止したままになるため、承認が機能しなくなったように見えることがあります。 承認する可能性のあるすべてのユーザーにサービス アカウント ユーザーを付与
実行ユーザーのサービス アカウントとして機能する権限がないユーザーがインテグレーションを公開またはテストする PRINCIPAL needs roles/iam.serviceAccountUser on SERVICE_ACCOUNT (or its project) to publish or test this integration. すでに公開されているものは引き続き実行されます。自動化によって公開される場合、これはコンソールではなくデプロイ パイプラインに表示されます。 パブリッシャー、テスター、自動化にサービス アカウント ユーザーを付与する
タスクはトリガーしたユーザーとして実行され、そのユーザーはリソースにアクセスできません。新しいインテグレーションでは、2026 年 10 月 15 日以降は、任意のインテグレーションのテストで、JavaScript、Data Transformer スクリプト、データ マッピング タスクがこの方法で実行されます。 統合に変更がないにもかかわらず、実行は正常に開始されますが、1 つのタスクがリソースの名前を指定して失敗します。 これらのユーザーにリソースへのアクセス権を付与するか、すでにアクセス権を持っている実行ユーザー サービス アカウントにインテグレーションを移動します。通常は後者がより良い方法です。インテグレーションのアクセス権が実行ユーザーによって変わるのを防ぐことができるためです。

Application Integration のエラーコードの完全なリストについては、エラーコードをご覧ください。

IAM ロールエラー

Application Integration は、実行ユーザー アカウントに加えて、各アクションに対するユーザーの IAM 権限も検証します。統合の操作時に PERMISSION_DENIED エラーが発生した場合や、実行ログの読み込みに失敗した場合は、必要な権限を付与するロールがあることを確認してください。

操作 次のいずれかのロールが必要です
統合を表示して開く roles/integrations.integrationViewer
実行ログと詳細を表示する roles/integrations.integrationViewer または roles/integrations.integrationInvoker
統合を実行する roles/integrations.integrationInvoker または roles/integrations.integrationEditor
統合を作成、編集する roles/integrations.integrationEditor
統合を公開する roles/integrations.integrationDeployer または roles/integrations.integrationEditor
一時停止された実行を承認または再開する roles/integrations.suspensionResolver または roles/integrations.integrationAdmin
すべての統合に対する完全アクセス権 roles/integrations.integrationAdmin

ロールを付与するには、次のコマンドを実行します。

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

詳しくは以下をご覧ください。

権限付与でエラーが修正されなかった

  • 権限付与が間違ったプロジェクトに対して行われた。これは、インテグレーションを所有するプロジェクトではなく、サービス アカウントを所有するプロジェクトで行う必要があります。
  • まだ有効になっていません。数分ほどお待ちください。認可の判断は、通常の IAM 伝播遅延に加えて、短時間キャッシュに保存されます。
  • 2 つ目のサービス アカウントが関与している。実行ユーザーのサービス アカウント、各認証プロファイルのサービス アカウント、各サブインテグレーションの実行ユーザーのサービス アカウントは別個のものであり、それぞれに独自の権限付与が必要です。
  • 権限付与が間違ったプリンシパルに付与された。Cloud Scheduler、Cloud Pub/Sub、Eventarc、Integration Connectors のイベント トリガーの場合、権限付与が必要なプリンシパルはトリガーのサービス アカウントであり、ユーザーではありません。サービス アカウント ユーザーが必要なユーザーをご覧ください。
  • ブロックはサービス アカウントではなく、独自のロールです。サービス アカウント ユーザーは、実行ユーザーのサービス アカウントとして動作できるかどうかを制御します。アクションの実行が許可されているかどうかは、別の IAM ロールによって制御されます。IAM ロールエラーをご覧ください。