Table of Contents
方法の比較
- ① JSONファイルそのまま配置: セキュリティ低、開発時のみ推奨
- ② .env に記述: バランス良い、本番でもOK
- ③ Base64+.env: おすすめ
- ④ GCP Secret Manager: 本番・チーム開発に最適
① JSONファイル配置
APPPATH配下の web 非公開ディレクトリに置く。必ず .gitignore に追加。絶対にリポジトリに含めない。
② .env に JSON 内容を記述
FIREBASE_CREDENTIALS に JSON を記述し env 関数で読み込む。
③ Base64+.env
base64 -w 0 コマンドでエンコードし FIREBASE_CREDENTIALS_BASE64 に記述。base64_decode で復元。
④ GCP Secret Manager
composer require google/cloud-secret-manager でインストール。accessSecretVersion で取得。
CodeIgniter 組み込み例
app/Libraries/FirebaseAuth.php を作成。__construct 内で env から証明汎を読み込み、getCredentials で配列を返す。
まとめ
- 個人・ローカル開発: ① or ②
- チーム・本番環境: ③ Base64+.env
- GCP本番運用: ④ Secret Manager
どの方法でも .gitignore への追加と公開ディレクトリへの配置禁止は必須。

コメント