App Engine スタンダード環境のサービス エージェント

デフォルトの App Engine サービス アカウントに加え、App Engine スタンダード環境には、App Engine スタンダード環境のサービス エージェントという名前の Google が管理するサービス アカウントが含まれます。サービス エージェントを使用すると、Google Cloud プロジェクトは、他の Google Cloud サービスとは別にアプリのリソースとやりとりできます。

App Engine ツール(gcloud app deploy コマンドなど)を使用して、プロジェクトの最初のアプリを App Engine スタンダード環境にデプロイすると、このアカウントが自動的に作成されます。

サービス エージェントは、Google Cloud コンソールの [サービス アカウント] ページには表示されません。また、次の制限があります。

App Engine スタンダード環境のサービス エージェントの確認

Google Cloud プロジェクトにサービス エージェントが存在することを確認するには、次の手順に沿って操作します。

  1. Google Cloud コンソールを開きます。

    [権限] ページに移動

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

  3. [プリンシパル] リストで、次の ID を使用する App Engine スタンダード環境のサービス エージェントの ID を見つけます。
    service-PROJECT_NUMBER@gcp-gae-service.iam.gserviceaccount.com

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

サービス エージェントのロール

サービス エージェントには、App Engine スタンダード環境のサービス エージェント ロールが付与されています。このロールには、スタンダード環境アプリを管理するために PHP 5 スタンダード環境が必要とする一連の権限が含まれています。たとえば、このロールには次のタスクを実行するための権限があります。

  • App Engine インスタンスが Cloud Storage バケットなどの他の Google Cloud リソースにアクセスするために、アクセス トークンを取得します。
  • 以前の App Engine バンドル サービスの Blobstore API を使用します。

App Engine スタンダード環境のサービス エージェント ロールは、サービス エージェント用に予約されています。この IAM ロールを他のアカウントに付与しないでください。このロールに含まれる権限は予告なく変更される可能性があるためです。

削除されたサービス エージェントの復元

App Engine スタンダード環境のサービス エージェントを誤って削除した場合は、次の手順で復元します。

  1. Google Cloud コンソールを開きます。

    [権限] ページに移動

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

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

  4. App Engine スタンダード環境のサービス エージェント ロールを選択します。

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