Google が管理するサービス エージェント

App Engine には、App Engine フレキシブル環境のサービス エージェントという名前のサービス エージェントが含まれます。このサービス エージェントにより、サービスは他の Google Cloud リソースにアクセスする際にユーザーに代わって動作できます。サービス エージェントは変更しないことが重要です。

なお、サービス エージェントは Google Cloud コンソールの [サービス アカウント] ページには表示されず、App Engine のデフォルトのサービス アカウントとの関連はありません。

Google Cloud プロジェクトのサービス エージェントは、最初のサービスをデプロイした後に自動的に作成されます。たとえば、gcloud app deploy コマンドを初めて実行して、フレキシブル環境にアプリをデプロイした後に作成されます。

サービス エージェントでは、App Engine フレキシブル環境サービス エージェントの事前定義された IAM ロールが使用されます。このロールには、App Engine がアプリを管理するのに必要な権限のセットが含まれます。このロールは、サービス エージェントの作成時にサービス エージェントに自動的に付与されます。

たとえば、これらの権限によって Google Cloud プロジェクトで App Engine インスタンスが他の Google Cloud リソース(Cloud Storage バケットなど)にアクセスするために使用するアクセス トークンを取得できます。

重要な制限事項:

サービス エージェントを確認する

Google Cloud プロジェクトでサービス エージェントに必要なロールが付与されていることを確認するには、次の手順を行います。

  1. Google Cloud コンソールで、[権限] ページに移動します。

    [権限] に移動

  2. [権限] ページの右上にある [Google 提供のロール付与を含める] チェックボックスをオンにします。

  3. [プリンシパル] リストで、次の ID を使用してサービス エージェントを見つけます。
    service-PROJECT_NUMBER@gae-api-prod.google.com.iam.gserviceaccount.com

  4. サービス エージェントに App Engine フレキシブル環境のサービス エージェント ロールが付与されていることを確認します。

サービス エージェントに必要なロールを復元する

サービス エージェントに必要な App Engine フレキシブル環境サービス エージェントのロール バインディングを Google Cloud プロジェクトから誤って削除した場合は、次の手順で復元します。

  1. Google Cloud コンソールで、[権限] ページに移動します。

    [権限] に移動

  2. [追加] をクリックします。

  3. サービス エージェント ID を次の形式で入力します。
    service-PROJECT_NUMBER@gae-api-prod.google.com.iam.gserviceaccount.com

  4. [App Engine フレキシブル環境のサービス エージェント] ロールを選択します。

  5. [保存] をクリックします。