このページでは、Kubernetes Secret の概要と、Cloud Code で Secret Manager API を使用して作成、使用、保存を行う方法について説明します。
Kubernetes Secret の概要
Kubernetes アプリケーションを作成する際には、多くの場合、パスワード、SSH 認証鍵、または OAuth トークンに少量の機密データを渡す必要があります。この情報を Pod の仕様やコンテナ イメージに保存するのではなく、Kubernetes Secret を作成して機密データを保存できます。
デフォルトでは、Kubernetes Secret は暗号化されずに API サーバーの基盤となるデータストアに保存されます。API アクセス権を持つすべてのユーザーが Secret を取得または変更できます。Kubernetes Secret のドキュメントでは、Kubernetes Secret を安全に使用するために、少なくとも次の手順を行うことをおすすめします。
- Secret の保存データの暗号化を有効にします。
- Secret への最小特権アクセスを使用して、RBAC ルールを有効化または構成します。
- Secret へのアクセスを特定のコンテナに制限します。
- 外部 Secret ストア プロバイダの使用を検討します。
Cloud Code の Secret Manager
Cloud Code は、Secret Manager API を使用して、IDE 内から、保存時の暗号化で Secret を作成、バージョニング、保存できるようにします。Secret Manager は、Cloud Code でのみ、またはシークレット管理にすでに使用している他のツールに加えて使用できます。
Cloud Code を使用して IDE 内で実行可能なアクションは次のとおりです。
- Secret Manager API を有効にします。
- Secret Manager ビューまたはエディタビューを使用して Kubernetes Secret を作成します。
- Secret をバージョニング、表示、削除します。
- アプリケーションからシークレットにアクセスします。
Cloud Code で Kubernetes Secret を操作する
Cloud Code で Secret を作成、バージョニング、使用、削除する手順については、Secret の管理をご覧ください。
次のステップ
- Kubernetes ドキュメントで Kubernetes Secret の詳細を確認する。
- Kubernetes Secret のベスト プラクティスを理解する。
- サービス アカウント トークンまたは代替を Secret に使用することを検討する。