Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Webアプリのデバッグプロバイダーでアプリチェックを使用する

アプリをAppCheckに登録した後、開発中のローカルや継続的インテグレーション(CI)環境など、App Checkが通常は有効と分類されない環境でアプリを実行する場合は、次のように作成できます。実際の認証プロバイダーの代わりにAppCheckデバッグプロバイダーを使用するアプリのデバッグビルド。

ローカルホストでデバッグプロバイダーを使用する

あなたのアプリを実行している間にデバッグ・プロバイダーを使用するにlocalhost (たとえば、開発中に)、以下の操作を行います。

  1. あなたのデバッグビルドでは、設定することにより、デバッグモードを有効self.FIREBASE_APPCHECK_DEBUG_TOKENするtrueあなたはアプリのチェックを初期化する前に。例えば:

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    initializeAppCheck(app, { /* App Check options */ });
    
  2. ローカルでWebアプリにアクセスし、ブラウザーの開発者ツールを開きます。デバッグコンソールに、デバッグトークンが表示されます。

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will
    need to safelist it in the Firebase console for it to work.
  3. プロジェクト設定>アプリケーションのチェックFirebaseコンソールのセクション、あなたのアプリのオーバーフローメニューからデバッグトークンを管理]を選択します。次に、前の手順でログインしたデバッグトークンを登録します。

    [デバッグトークンの管理]メニュー項目のスクリーンショット

トークンを登録すると、Firebaseバックエンドサービスはトークンを有効なものとして受け入れます。

このトークンは、有効なデバイスがなくてもFirebaseリソースへのアクセスを許可するため、プライベートに保つことが重要です。パブリックリポジトリにコミットしないでください。登録されたトークンが侵害された場合は、Firebaseコンソールですぐに取り消してください。

このトークンはブラウザにローカルに保存され、同じマシンの同じブラウザでアプリを使用するたびに使用されます。あなたが別のブラウザで、または別のマシン上のトークンを使用する場合は、設定self.FIREBASE_APPCHECK_DEBUG_TOKENトークン文字列の代わりにtrue

CI環境でデバッグプロバイダーを使用する

継続的インテグレーション(CI)環境でデバッグプロバイダーを使用するには、次の手順を実行します。

  1. プロジェクト設定>アプリケーションのチェックFirebaseコンソールのセクション、あなたのアプリのオーバーフローメニューからデバッグトークンを管理]を選択します。次に、新しいデバッグトークンを作成します。次のステップでトークンが必要になります。

    このトークンは、有効なデバイスがなくてもFirebaseリソースへのアクセスを許可するため、プライベートに保つことが重要です。パブリックリポジトリにコミットしないでください。登録されたトークンが侵害された場合は、Firebaseコンソールですぐに取り消してください。

    [デバッグトークンの管理]メニュー項目のスクリーンショット

  2. あなたは自分のCIシステムのセキュアキーストアに作成されたトークンのデバッグを追加します(例えば、GitHubのアクション暗号化された秘密やトラビスCIの暗号化された変数)。

  3. 必要に応じて、CIシステムを構成して、デバッグトークンをCI環境内で環境変数として使用できるようにします。以下のような変数に何か名前APP_CHECK_DEBUG_TOKEN_FROM_CI

  4. あなたのデバッグビルドでは、設定することにより、デバッグモードを有効self.FIREBASE_APPCHECK_DEBUG_TOKEN使用すると、アプリケーションのチェックをインポートする前に、デバッグトークン環境変数の値に。例えば:

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    initializeAppCheck(app, { /* App Check options */ });
    

アプリがCI環境で実行されると、Firebaseバックエンドサービスは送信したトークンを有効なものとして受け入れます。