この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:5
ページ更新者:爽健
更新日時:2026-06-11 07:10:02

タイトル: プロジェクトの作成とアプリ連携
SEOタイトル: Firebase プロジェクト作成と Web アプリ連携 完全ガイド(コンソール / 設定オブジェクト / SDK 初期化 / Authentication / Firestore)

この記事の要点
  • Firebase の利用開始は Firebase コンソールでのプロジェクト作成から始まる
  • 作成したプロジェクトに Web アプリを追加すると、firebaseConfig(APIキー等の設定オブジェクト)が発行される
  • その firebaseConfig を Web アプリに貼り付け、initializeApp() で初期化すれば連携完了
  • API キーは公開しても直ちに危険ではないが、必ず Firebase Security Rules でアクセス制御をかける
  • 実運用では Authentication / Firestore / Hosting など必要なサービスを順次有効化していく

Firebase プロジェクト作成からアプリ連携までの流れ

Firebase は Google が提供するモバイル / Web 向け BaaS(Backend as a Service)です。Authentication(認証)、Firestore(DB)、Cloud Storage、Hosting、Cloud Functions などをコード少なめで利用できます。

本ページでは、Firebase コンソールでプロジェクトを作成し、Web アプリに紐づけるまでの初期セットアップ手順をまとめます。

1. Firebase コンソールでプロジェクトを作成

Firebase コンソールにアクセスし、Google アカウントでログインします。「プロジェクトを追加」ボタンを押します。

Firebase コンソール プロジェクト追加

プロジェクト作成時の入力項目

項目内容
プロジェクト名分かりやすい英数字。日本語可だが内部 ID は別途自動生成
プロジェクト ID世界で一意な ID。後から変更不可
Google アナリティクス有効化推奨(無料)。クラッシュ計測 / イベント計測が使える
アナリティクスのアカウント既存の GA アカウントを選ぶか新規作成

プロジェクトの作成が完了すると以下のようなダッシュボード画面が開きます。

Firebase プロジェクトダッシュボード

2. Web アプリを追加する

ダッシュボード中央に並ぶアイコンから、ターゲットとなるプラットフォームを選びます。Web アプリの場合は「」マーク(Web アイコン)をクリックします。

Firebase Webアプリ追加ボタン

登録時の入力項目

  • アプリのニックネーム — コンソール表示用。後から変更可
  • Firebase Hosting も設定する — サイトを Firebase でホスティングするならチェック(後から有効化も可能)

3. firebaseConfig をコピーする

登録後、以下のような firebaseConfig オブジェクトSDK 読み込みスクリプトが表示されます。これを Web アプリに貼り付ければ連携完了です。

Firebase Webアプリ用 設定情報

firebaseConfig の中身

const firebaseConfig = {
  apiKey: "AIzaSyXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  authDomain: "my-project.firebaseapp.com",
  projectId: "my-project",
  storageBucket: "my-project.appspot.com",
  messagingSenderId: "123456789012",
  appId: "1:123456789012:web:abcdef0123456789abcdef",
  measurementId: "G-XXXXXXXXXX"
};

4. Web アプリに組み込む(モジュール版・v9 以降)

現在の Firebase Web SDK はモジュラー API(v9 以降)が推奨です。npm でインストールするか、CDN(type="module")で読み込みます。

npm install firebase
// src/firebase.js
import { initializeApp } from "firebase/app";
import { getAnalytics }   from "firebase/analytics";

const firebaseConfig = {
  apiKey: "...",
  authDomain: "...",
  projectId: "...",
  storageBucket: "...",
  messagingSenderId: "...",
  appId: "..."
};

export const app       = initializeApp(firebaseConfig);
export const analytics = getAnalytics(app);

CDN(compat なし)の例

<script type="module">
  import { initializeApp } from "https://www.gstatic.com/firebasejs/10.13.0/firebase-app.js";
  const firebaseConfig = { /* ... */ };
  const app = initializeApp(firebaseConfig);
</script>

5. 主要サービスの有効化

プロジェクト作成と SDK 連携が終わったら、左メニューから利用したいサービスを順に有効化します。

サービス用途有効化手順
Authenticationユーザー認証(メール / Google / Twitter 等)「ログイン方法」タブで使うプロバイダを有効化
Cloud FirestoreNoSQL ドキュメント DB「データベースの作成」→ 本番モード / テストモードを選ぶ
Realtime Database旧来のリアルタイム DB新規なら Firestore が推奨
Storage画像 / 動画ファイルの保管「使ってみる」で初期 Rules を作成
Hosting静的サイトホスティングCLI で firebase init hosting
Cloud Functionsサーバレス関数従量課金プラン(Blaze)にアップグレード必要

6. セキュリティルールは必須

Firestore / Realtime Database / Storage はセキュリティルール(Security Rules)で守ります。テストモードのまま放置すると全世界から読み書き自由になり、データ流出・破壊につながります。

// Firestore セキュリティルール例
rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {

    // ログイン済みユーザーのみ自分の文書を読み書き
    match /users/{uid} {
      allow read, write: if request.auth != null
                        && request.auth.uid == uid;
    }

    // 公開記事は誰でも読める、書き込みは作者のみ
    match /posts/{postId} {
      allow read: if true;
      allow create, update, delete:
        if request.auth != null
        && request.auth.uid == resource.data.author;
    }
  }
}

API キーの扱いについて

Firebase の apiKey公開前提の識別子であり、漏れても直ちに侵害されるわけではありません。重要なのは:

  • Security Rules で必ずアクセス制御をかける(最大の防御線)
  • Google Cloud コンソールで API キーに HTTP リファラ制限をかける
  • サーバ側の処理はFirebase Admin SDK + サービスアカウントキーで行う(こちらは絶対に公開禁止)

7. 動作確認(最小のサインイン例)

import { getAuth, signInAnonymously } from "firebase/auth";

const auth = getAuth(app);
signInAnonymously(auth)
  .then((cred) => console.log("signed in as", cred.user.uid))
  .catch((err) => console.error(err));

よくあるトラブル

症状原因と対処
Firebase: Error (auth/invalid-api-key)firebaseConfig の貼り付けミス
Permission denied / Missing or insufficient permissionsSecurity Rules が原因。コンソールでルールを確認
The given site does not match the project's auth domainauthDomain のドメインを Authentication 設定の承認済みドメインに追加
CORS エラーHosting 経由でない場合は API キーの HTTP リファラ制限を確認

関連

  • Firebase Authentication — メール / Google / Twitter 等の認証
  • Cloud Firestore — NoSQL ドキュメント DB
  • Firebase Hosting — 静的サイトホスティング
  • Firebase Security Rules — アクセス制御
  • Firebase CLI — ローカル開発・デプロイ