Cloud APIs を使用して、コードから Google Cloud のプロダクトおよびサービスにアクセスできます。これらの Cloud APIs では、クライアント ライブラリ経由で呼び出すことができる、シンプルな JSON REST インターフェースが公開されています。
このドキュメントでは、Cloud APIs を有効にし、Cloud クライアント ライブラリをプロジェクトに追加する方法について説明します。
Cloud APIs の閲覧
IDE 内で利用可能なすべての Google Cloud APIs を確認する手順は次のとおりです。
- [ツール] メニューで、[Cloud Code] > [Cloud APIs] を選択します。
- Google Cloud APIs Explorer のツリーを展開して、使用可能なすべての API を表示します。Explorer はカテゴリ別に Cloud APIs をグループ化します。Search API の検索バーを使用して特定の API を見つけ出すこともできます。Search APIs search bar.
- [API] をクリックすると、ステータス、対応するクライアント ライブラリの言語に固有のインストール手順、関連ドキュメントなどの詳細が表示されます。

Cloud APIs の有効化
API の詳細を使用してプロジェクトの Cloud API をすばやく有効にするには、次の手順に従います。
- Cloud APIs の詳細ビューで、Cloud APIs を有効にするプロジェクトを選択します。
- [API を有効にする] をクリックします。
API が有効になると、この変更を確認するメッセージが表示されます。
Cloud クライアント ライブラリの追加
IntelliJ でプロジェクトにライブラリを追加する手順は次のとおりです。
Java Maven プロジェクトの場合
- [ツール] メニューで、[Cloud Code] > [Cloud APIs] を選択します。
- Google Cloud クライアント ライブラリ(ほとんどのプロジェクトで推奨)または Java Spring Google Cloud(プロジェクトで Java Spring を使用する場合に推奨)からライブラリ タイプを選択します。
- [Module] プルダウン メニューで、ライブラリを追加するモジュールを選択します。
- [Add Maven Dependency] をクリックして、プロジェクトに BOM とクライアント ライブラリを追加します。
[Add Google Cloud Libraries] ダイアログが開き、サポートされるライブラリが表示されます。
![[Manage Google Cloud APIs] ダイアログを示すスクリーンショット。このダイアログでは、ライブラリを追加するモジュールを選択し、追加可能な API の一覧を表示することができます。このダイアログの作業領域には、各 API に関する情報が表示されます。](https://cloud.google.com/static/code/docs/intellij/images/add-maven-library.png?hl=ja)
その他のすべてのプロジェクトの場合
- [ツール] メニューで、[Cloud Code] > [Cloud APIs] を選択します。
- 使用する言語に応じた API の詳細ページに記載されているインストール手順に従って、API をインストールします。
[Add Google Cloud Libraries] ダイアログが開き、サポートされるライブラリが表示されます。
![[Manage Google Cloud APIs] ダイアログを示すスクリーンショット。このダイアログは追加可能な API の一覧を表示することもできます。このダイアログの作業領域には、API に関する情報が表示されます。](https://cloud.google.com/static/code/docs/intellij/images/client-library-detail-enable.png?hl=ja)
API サンプルの使用
API Explorer で各 API のコードサンプルを検索して使用するには、以下の手順に沿って操作します。
[ツール] メニューで、[Cloud Code] > [Cloud APIs] を選択します。
詳細ビューを開くには、API の名前をクリックします。
API のコードサンプルを表示するには、[コードサンプル] タブをクリックします。
サンプルリストをフィルタリングするには、[言語] プルダウン メニューから、検索するテキストを入力するか、プログラミング言語を選択します。
認証の設定
必要な API を有効にして必要なクライアント ライブラリを追加したら、アプリケーションの認証を正常に完了するためにアプリケーションを構成する必要があります。構成は、開発の種類と実行するプラットフォームによって異なります。
関連する認証手順を完了すると、アプリケーションが認証され、デプロイの準備が整います。
ローカルでの開発
ローカルマシン
IDE から Google Cloud にログインした場合は、Cloud Code には、アプリケーションのデフォルト認証情報(ADC)が確実に設定されています。Cloud Code を使用してログインしていない場合は、gcloud
auth application-default login
を手動で実行します。
minikube
- IDE から Google Cloud にログインした場合は、Cloud Code には、アプリケーションのデフォルト認証情報(ADC)が確実に設定されています。Cloud Code を使用してログインしていない場合は、
gcloud auth application-default login
を手動で実行します。 minikube start --addons gcp-auth
で minikube を起動します。これにより、ADC が Pod にマウントされます。Google Cloud 用の詳細な minikube 認証ガイドについては、minikube gcp-auth ドキュメントをご覧ください。
その他のローカル K8s クラスタ
- IDE から Google Cloud にログインした場合は、Cloud Code には、アプリケーションのデフォルト認証情報(ADC)が確実に設定されています。Cloud Code を使用してログインしていない場合は、
gcloud auth application-default login
を手動で実行します。 - Pod またはデプロイのマニフェストで Pod の仕様を編集して、Google Cloud クライアント ライブラリで認証情報を検出できるように、ローカルの
gcloud
ディレクトリを Kubernetes Pod にマウントします。Kubernetes Pod の構成例:apiVersion: v1 kind: Pod metadata: name: my-app labels: name: my-app spec: containers: - name: my-app image: gcr.io/google-containers/busybox ports: - containerPort: 8080 volumeMounts: - mountPath: /root/.config/gcloud name: gcloud-volume volumes: - name: gcloud-volume hostPath: path: /path/to/home/.config/gcloud
Cloud Run
IDE から Google Cloud にログインした場合は、Cloud Code には、アプリケーションのデフォルト認証情報(ADC)が確実に設定されています。Cloud Code を使用してログインしていない場合は、gcloud
auth application-default login
を手動で実行します。
リモート開発
Google Kubernetes Engine
プロジェクトのスコープに応じて、GKE での Google Cloud サービスの認証方法を選択できます。
- (開発のみ)
- 次の設定で GKE クラスタを作成します。
- GKE のデフォルトで使用されるサービス アカウント(Compute Engine のデフォルト サービス アカウント)を使用していること、そのサービス アカウントを使用していること、および [アクセス スコープ] が [すべての Cloud APIs への完全アクセス権を許可] に設定されていることを確認してください(この 2 つの設定を行うには、[ノードプール] > [セキュリティ] と進んでください)。
Compute Engine サービス アカウントはノードにデプロイされているすべてのワークロードで共有されるので、この方法は権限をオーバープロビジョニングし、開発目的でのみ使用する必要があります。 - クラスタで Workload Identity が有効になっていないことを確認します([クラスタ] > [セキュリティ] セクションにて)。
- GKE のデフォルトで使用されるサービス アカウント(Compute Engine のデフォルト サービス アカウント)を使用していること、そのサービス アカウントを使用していること、および [アクセス スコープ] が [すべての Cloud APIs への完全アクセス権を許可] に設定されていることを確認してください(この 2 つの設定を行うには、[ノードプール] > [セキュリティ] と進んでください)。
- 必要なロールを Compute Engine のデフォルト サービス アカウントに割り当てます。
- Secret にアクセスする場合は、Secret Manager 固有の手順に従って、サービス アカウントに必要なロールを設定します。
- Compute Engine のデフォルトのサービス アカウントが使用されている場合は、適切な IAM ロールがすでに適用されている可能性があります。
ID に付与できる IAM ロールタイプと事前定義ロールの一覧については、ロールについてのガイドをご覧ください。
ロールを付与する手順については、リソースへのアクセス権の付与、変更、取り消しをご覧ください。
- 次の設定で GKE クラスタを作成します。
- (本番環境に推奨)
- Workload Identity を使用して GKE クラスタとアプリケーションを構成し、GKE で Google Cloud サービスを認証します。これにより、Kubernetes サービス アカウントが Google サービス アカウントに関連付けられます。
- Kubernetes Deployment YAML ファイル内の
.spec.serviceAccountName
フィールドを設定して、Kubernetes サービス アカウントを参照するように Kubernetes Deployment を構成します。
Cloud Code テンプレートから作成されたアプリの場合、このファイルは kubernetes-manifests フォルダにあります。 - アクセスしようとしている Google Cloud サービスに追加のロールが必要な場合は、アプリの開発に使用している Google サービス アカウントにそれらのロールを付与します。
- Secret にアクセスする場合は、Secret Manager 固有の手順に従って、サービス アカウントに必要なロールを設定します。
ID に付与できる IAM ロールタイプと事前定義ロールの一覧については、ロールについてのガイドをご覧ください。
ロールを付与する手順については、リソースへのアクセス権の付与、変更、取り消しをご覧ください。
Cloud Run
- Cloud Run アプリケーションをデプロイするための新しい専用のサービス アカウントを作成するには、[サービス アカウント] ページで、Secret が保存されているプロジェクトを選択します。
- [サービス アカウントを作成] をクリックします。
- [サービス アカウントの作成] ダイアログで、わかりやすいサービス アカウント名を指定します。
- [サービス アカウント ID] を一意のわかりやすい値に変更してから、[作成] をクリックします。
- アクセスしようとしている Google Cloud サービスに追加のロールが必要な場合は、付与し、[続行] をクリックして、[完了] をクリックします。
- デプロイ構成に Kubernetes サービス アカウントを追加するには、[Cloud Run: Deploy] 実行構成に移動し、[詳細なリビジョン設定] セクションを展開して、[サービス アカウント] フィールドにサービス アカウントを入力します。
Cloud Run
プロジェクトのスコープに応じて、GKE での Google Cloud サービスの認証方法を選択できます。
- (開発のみ)
- 次の設定で GKE クラスタを作成します。
- GKE のデフォルトで使用されるサービス アカウント(Compute Engine のデフォルト サービス アカウント)を使用していること、および [アクセス スコープ] が [すべての Cloud APIs への完全アクセス権を許可] に設定されていることを確認してください(この 2 つの設定を行うには、[ノードプール] > [セキュリティ] と進んでください)。
Compute Engine サービス アカウントはノードにデプロイされているすべてのワークロードで共有されるので、この方法は権限をオーバープロビジョニングし、開発目的でのみ使用する必要があります。 - クラスタで Workload Identity が有効になっていないことを確認します([クラスタ] > [セキュリティ] セクションにて)。
- GKE のデフォルトで使用されるサービス アカウント(Compute Engine のデフォルト サービス アカウント)を使用していること、および [アクセス スコープ] が [すべての Cloud APIs への完全アクセス権を許可] に設定されていることを確認してください(この 2 つの設定を行うには、[ノードプール] > [セキュリティ] と進んでください)。
- 必要なロールを Compute Engine のデフォルト サービス アカウントに割り当てます。
- Secret にアクセスする場合は、Secret Manager 固有の手順に従って、サービス アカウントに必要なロールを設定します。
- Compute Engine のデフォルトのサービス アカウントが使用されている場合は、適切な IAM ロールがすでに適用されている可能性があります。
ID に付与できる IAM ロールタイプと事前定義ロールの一覧については、ロールについてのガイドをご覧ください。
ロールを付与する手順については、リソースへのアクセス権の付与、変更、取り消しをご覧ください。
- 次の設定で GKE クラスタを作成します。
- (本番環境に推奨)
- Workload Identity を使用して GKE クラスタとアプリケーションを構成し、GKE で Google Cloud サービスを認証します。これにより、Kubernetes サービス アカウントが Google サービス アカウントに関連付けられます。
- デプロイ構成に Kubernetes サービス アカウントを追加するには、[Cloud Run: Deploy] 実行構成に移動し、[詳細なリビジョン設定] セクションを展開して、[サービス アカウント] フィールドに Kubernetes サービス アカウントを入力します。
- アクセスしようとしている Google Cloud サービスに追加のロールが必要な場合は、アプリの開発に使用している Google サービス アカウントにそれらのロールを付与します。
- Secret にアクセスする場合は、Secret Manager 固有の手順に従って、サービス アカウントに必要なロールを設定します。
ID に付与できる IAM ロールタイプと事前定義ロールの一覧については、ロールについてのガイドをご覧ください。
ロールを付与する手順については、リソースへのアクセス権の付与、変更、取り消しをご覧ください。
Secret Manager 権限を有効にしたリモート開発
認証にサービス アカウントを使用してリモートで開発しており、アプリケーションが Secret を使用している場合は、リモート開発の手順に追加していくつかの手順を行う必要があります。これらの手順では、Google サービス アカウントに特定の Secret Manager の Secret にアクセスに必要なロールを割り当てます。
Cloud Code の右側のサイドバーの [Secret Manager] タブをクリックして、[Secret Manager] パネルを開きます。
コード内でアクセスする Secret を選択します。
[権限] タブに切り替え、編集 [権限を編集] をクリックして Secret の権限を構成します。シークレットの Secret Manager 構成ページがウェブブラウザで開きます。
Google Cloud Console で、[情報パネルを表示] をクリックし、[プリンシパルを追加] をクリックします。
サービス アカウントに、Secret Manager Secret アクセサーのロールを割り当てます。
サービス アカウントには、このシークレットにアクセスする権限があります。