Cloud Code の Secret Manager 統合を使用すると、コードベースで Secret を作成せずに、IDE 内で Secret を作成、表示、更新、使用できます。
このページでは、IDE 内で Secret Manager にアクセスする方法と、Secret の作成と管理を開始する方法について説明します。
Secret Manager API を有効にする
Cloud Code で Secret を管理する場合、Secret は Secret Manager に安全に保存され、必要に応じてプログラムで取得できます。必要な要件は、Secret Manager API が有効になっており、Secret を管理するための適切な権限が付与されていることのみです。
アプリケーション コードが存在するプロジェクトで作業していることを確認します。Secret はアプリケーション コードと同じプロジェクトにある必要があります。
[Cloud Code] をクリックし、[Secret Manager] エクスプローラを展開します。
Secret Manager API を有効にしていない場合は、Secret Manager エクスプローラで [Enable Secret Manager API] をクリックします。
Secret を作成する
Secret Manager エクスプローラを使用して Secret を作成するには、次の手順を行います。
IDE で [Cloud Code] をクリックし、[Secret Manager] エクスプローラを展開します。
[Secret Manager] エクスプローラで 追加 [Secret を作成] をクリックします。
[Secret の作成] ダイアログで、Secret のプロジェクト、名前、値、リージョンを設定し、Secret を整理するラベルを指定します。
エディタを使用して Secret を作成することもできます。
- エディタで Secret として保存するテキストを含むファイルを開きます。
- Secret として保存するテキストをハイライト表示して右クリックし、[Secret Manager で Secret を作成] をクリックします。
- [Secret の作成] ダイアログで、Secret のプロジェクト、名前、値、リージョン、ラベルをカスタマイズします。
Secret の新しいバージョンを作成する
Secret Manager を使用して Secret の新しいバージョンを作成する手順は次のとおりです。
既存の Secret を右クリックし、[Create Secret Version] を選択します。
[バージョンを作成] ダイアログで、[シークレットの値] フィールドを使用するか、ファイルをインポートして、既存の Secret の新しい値を設定します。
Secret の以前のすべてのバージョンを削除して、作成する新しいバージョンのみを保持するには、[過去のバージョンをすべて無効にする] を選択します。
[バージョンを作成] をクリックします。バージョンを追加すると、[バージョン] プルダウンに Secret の最新バージョンと以前のバージョンが表示されます。
または、エディタで Secret の新しいバージョンを作成することもできます。
エディタでファイルを開き、Secret として保存するテキストをハイライト表示します。
ハイライト表示されたテキストを右クリックし、[Add Version to Secret in Secret Manager] を選択します。
Secret バージョンを管理する
Secret のバージョンを有効化、無効化、または破棄するには、Secret を右クリックして、実行するアクションのコマンドを選択します。Secret の有効なバージョンについては、バージョンの値を表示することもできます。
Secret を表示する
Secret を表示するには、[Secret Manager] エクスプローラでリストから Secret を選択します。名前、レプリケーション ポリシー、作成タイムスタンプ、リソース ID などの詳細は、Secret 名の下に表示されます。
Google Cloud コンソールで Secret を表示する
また、[Secret Manager] エクスプローラで Secret を右クリックし、[Open in Cloud console] をクリックして、Google Cloud コンソールで Secret を表示することもできます。
Kubernetes Explorer で Secret を表示する
Kubernetes Explorer で Secret を表示するには、次の手順を行います。
- [Cloud Code] をクリックし、[Kubernetes] エクスプローラを展開します。
- クラスタを展開し、[Secrets] を展開します。
- Secret を展開して詳細を表示します。
アプリケーションから Secret にアクセスする
Secret を作成したら、コードに追加して認証を設定できます。
アプリケーションから Secret にアクセスするには:
Secret Manager クライアント ライブラリをインストールします。
[Cloud Code] をクリックし、[Cloud APIs] エクスプローラを展開します。
[Cloud Security] > [Secret Manager API] を展開し、使用している言語のクライアント ライブラリのインストール セクションの手順に沿って操作します。
関連するコード スニペットをカスタマイズして、アプリケーションのコードに追加します。
コードで使用する Secret のバージョン名を取得するには、Secret Manager パネルで Secret を選択し、右クリックして [リソース ID をコピー] を選択します。
認証設定を完了するには、クライアント ライブラリ認証ガイドに従ってください。
- ローカルでの開発: ローカル クラスタ(minikube、Docker Desktop など)またはローカル エミュレータで開発を行う場合は、ワークフローに関連するローカル開発セクションに示されている手順を完了する必要があります。
- リモート開発: アプリケーションで GKE クラスタまたは Cloud Run サービスを使用している場合は、ワークフローに関連するリモート開発セクションに示されている手順を完了する必要があります。これには、サービス アカウントで必要なロールを設定するための Secret Manager 固有の手順も含まれます。
シークレットを環境変数として追加する
既存の Kubernetes Secret を環境変数として Deployment に追加するには、次の手順に従います。
- [Cloud Code] をクリックし、[Kubernetes] エクスプローラを展開します。
- minikube クラスタを展開し、[Secrets] を展開します。
- デプロイメント オブジェクトを表す Secret を右クリックして、[Secret を環境変数として追加] をクリックします。
Secret をボリュームとしてマウントする
既存の Kubernetes Secret をボリュームとして Deployment のコンテナにマウントするには、次の手順を行います。
- [Cloud Code] をクリックし、[Kubernetes] エクスプローラを展開します。
- minikube クラスタを展開し、[Secrets] を展開します。
- デプロイメント オブジェクトを表す Secret を右クリックし、[Secret をボリュームとしてマウントする] をクリックします。
シークレットを削除
Cloud Code の Secret Manager を使用して Secret を削除するには、次の手順に従います。
[Cloud Code] をクリックし、[Secret Manager] エクスプローラを展開します。
既存の Secret を右クリックし、[Cloud コンソールで開く] を選択します。
[シークレットの詳細] ページで [削除] をクリックし、プロンプトに従って Secret を削除します。