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

Cloud APIs の有効化
API の詳細を使用してプロジェクトの Cloud API をすばやく有効にするには、次の手順に従います。
- Cloud APIs の詳細ビューで、Cloud APIs を有効にするプロジェクトを選択します。
- [API を有効にする] ボタンをクリックします。
API が有効になると、この変更を確認するメッセージが表示されます。
Cloud クライアント ライブラリの追加
IntelliJ でプロジェクトにライブラリを追加する手順は次のとおりです。
Java Maven プロジェクトの場合
- [Tools] > [Cloud Code] > [Cloud APIs] を選択します。
- Google Cloud クライアント ライブラリ(推奨)または Java Spring Google Cloudライブラリからライブラリ タイプを選択します。
- [Module] プルダウン メニューで、ライブラリを追加するモジュールを選択します。
- [Add Maven Dependency] をクリックして、プロジェクトに BOM とクライアント ライブラリを追加します。
[Manage Google Cloud APIs] ダイアログにが開き、サポートされるライブラリが表示されます。
![[Manage Cloud APIs] ダイアログを示すスクリーンショット。このダイアログのプルダウン メニューを使用して、ライブラリに追加するモジュールを選択します。追加可能な API の一覧を表示することもできます。このダイアログの作業領域には、API に関する情報が表示されます。](https://cloud.google.com/static/code/docs/intellij/images/add-maven-library.png?hl=ja)
その他のすべてのプロジェクトの場合
- [Tools] > [Cloud Code] > [Add Cloud libraries and Manage Cloud APIs] を選択します。
- 使用する言語に応じた API の詳細ページに記載されているインストール手順に従って、API をインストールします。
[Add Google Cloud Libraries] ダイアログが開き、サポートされるライブラリが表示されます。
![[Add Cloud Libraries] ダイアログのスクリーンショット。このダイアログは追加可能な API の一覧を表示することもできます。このダイアログの作業領域には、API に関する情報が表示されます。](https://cloud.google.com/static/code/docs/intellij/images/client-library-detail-enable.png?hl=ja)
認証の設定
必要な API を有効にして必要なクライアント ライブラリを追加したら、アプリケーションの認証を正常に完了するためにアプリケーションを構成する必要があります。構成は、開発の種類と実行するプラットフォームによって異なります。
関連する認証手順を完了すると、アプリケーションが認証され、デプロイの準備が整います。
ローカルでの開発
minikube
gcloud auth application-default login
を実行して、アプリケーションのデフォルト認証情報(ADC)が設定されていることを確認します。これにより、minikube で認証に使用する ADC を検出できます。
minikube
gcloud auth application-default login
を実行して、アプリケーションのデフォルト認証情報(ADC)が設定されていることを確認します。これにより、minikube で認証に使用する ADC を検出できます。minikube start --addons gcp-auth
で minikube を起動します。これにより、ADC が Pod にマウントされます。Google Cloud 用の詳細な minikube 認証ガイドについては、minikube gcp-auth ドキュメントをご覧ください。
ローカル Kubernetes クラスタ
gcloud auth application-default login
を実行して、アプリケーションのデフォルト認証情報(ADC)が設定されていることを確認します。- デプロイ マニフェストを編集して Kubernetes Pod にローカルの
gcloud
ディレクトリをマウントします。これにより、Google Cloud クライアント ライブラリで認証情報を検出できるようになります。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
gcloud auth application-default login
を実行して、アプリケーションのデフォルト認証情報(ADC)が設定されていることを確認します。これにより、Cloud Run のローカルでシミュレートされた環境で、認証に使用する ADC を検出できます。
リモート開発
Google Kubernetes Engine
- Workload Identity を使用して GKE クラスタとアプリケーションを構成し、GKE で Google Cloud サービスを認証します。これにより、Kubernetes サービス アカウントが Google サービス アカウントに関連付けられます。
- アクセスしようとしている Google Cloud サービスに追加のロールが必要な場合は、アプリの開発に使用している Google サービス アカウントにそれらのロールを付与します。
ID に付与できる IAM ロールの種類と事前定義ロールのリストについては、ロールについてのガイドをご覧ください。ロールを付与する手順については、リソースへのアクセス権の付与、変更、取り消しをご覧ください。 - Kubernetes Deployment YAML ファイル内の
.spec.serviceAccountName
フィールドを設定して、Kubernetes サービス アカウントを参照するように Kubernetes Deployment を構成します。
Cloud Code テンプレートから作成されたアプリの場合、このファイルは kubernetes-manifests フォルダにあります。
Cloud Run
- Cloud Run アプリケーションをデプロイするための新しい専用のサービス アカウントを作成するには、[サービス アカウント] ページで、Secret が保存されているプロジェクトを選択します。
- [サービス アカウントを作成] をクリックします。
- [サービス アカウントの作成] ダイアログで、わかりやすいサービス アカウント名を指定します。
- [サービス アカウント ID] を一意のわかりやすい値に変更してから、[作成] をクリックします。
- アクセスしようとしている Google Cloud サービスに追加のロールが必要な場合は、付与し、[続行] をクリックして、[完了] をクリックします。
- デプロイ構成にサービス アカウントを追加するには、[Cloud Run: Deploy] 実行構成に移動し、[詳細なリビジョン設定] セクションを展開して、[サービス アカウント] フィールドにサービス アカウントを入力します。
Cloud Run
- Workload Identity を使用して GKE クラスタとアプリケーションを構成し、GKE で Google Cloud サービスを認証します。これにより、Kubernetes サービス アカウントが Google サービス アカウントに関連付けられます。
- アクセスしようとしている Google Cloud サービスに追加のロールが必要な場合は、アプリの開発に使用している Google サービス アカウントにロールを付与します。
ロールについてのガイドには、IAM のロールのタイプと、ID に付与できる事前定義されたロールのリストが記載されています。 - デプロイ構成に Kubernetes サービス アカウントを追加するには、[Cloud Run: Deploy] 実行構成に移動し、[詳細なリビジョン設定] セクションを展開して、[サービス アカウント] フィールドに Kubernetes サービス アカウントを入力します。
Secret Manager を有効にしたリモート開発
認証にサービス アカウントを使用してリモートで開発しており、アプリケーションが Secret を使用している場合は、Google サービス アカウントに特定の Secret Manager の Secret にアクセスする際に必要なロールを割り当てるために追加の手順を行う必要があります。
[Secret Manager] パネルを開き、コード内でアクセスする Secret を選択します。
[権限] タブに切り替え、編集 [権限を編集] をクリックして Secret の権限を構成します。シークレットの Secret Manager 構成ページがウェブブラウザで開きます。
Google Cloud コンソールで、[情報パネルを表示] をクリックし、[プリンシパルを追加] をクリックします。
サービス アカウントに、Secret Manager Secret アクセサーのロールを割り当てます。
サービス アカウントには、このシークレットにアクセスする権限があります。