Cloud Functions でサードパーティ API のキーを安全に使用したいと考えています。最も安全な方法はどれですか?
- A. API キーを Cloud Functions のソースコードにハードコードする
- B. API キーを Cloud Storage バケットのプライベートファイルに保存し、Cloud Functions が読み取る
- C. API キーを環境変数として Cloud Functions の設定に設定する
- D. API キーを Secret Manager に保存し、Cloud Functions から実行時に取得する
解答と解説を見る
正解: D
Secret Manager を使うと、API キーなどの秘密情報をバージョン管理された暗号化ストレージに保存でき、Cloud Functions の実行時に IAM 権限を使って安全に取得できます。アクセスログが記録されるため、誰がいつシークレットを取得したかも追跡できます。ソースコードへのハードコードは最悪のプラクティスでリポジトリに漏洩するリスクがあります。環境変数への設定は Cloud Console から確認できてしまうため、Secret Manager より安全性が低いです。Cloud Storage のファイルは IAM 権限で保護できますが、バージョン管理やローテーション機能、監査ログが Secret Manager ほど充実していません。
📚 関連サービスの解説: Secret Manager ・ Cloud Functions