Firebaseアプリのチェック

App Checkは、請求詐欺やフィッシングなどの悪用からバックエンドリソースを保護するのに役立ちます。 Firebaseサービスと独自のバックエンドの両方で機能し、リソースを安全に保ちます。

App Checkを使用すると、アプリを実行しているデバイスは、次のいずれかまたは両方を証明するアプリまたはデバイス証明プロバイダーを使用します。

  • リクエストは本物のアプリから発信されます
  • リクエストは、本物の改ざんされていないデバイスから発信されます

この証明書は、アプリがFirebaseバックエンドリソースに対して行うすべてのリクエストに添付されます。

App Checkには、次のサービスをアテステーションプロバイダーとして使用するためのサポートが組み込まれています。

これらがニーズに対して不十分な場合は、サードパーティの認証プロバイダーまたは独自の認証手法を使用する独自のサービスを実装することもできます。

App Checkは現在、次のFirebase製品で動作します。

サポートされているFirebase製品
リアルタイムデータベース
クラウドファイヤーストア
クラウドストレージ
クラウド関数(呼び出し可能な関数)

App Checkを使用して、Firebase以外のバックエンドリソースを保護することもできます。

始める準備はできましたか?

始めましょう

それはどのように機能しますか?

サービスのAppCheckを有効にして、クライアントSDKをアプリに含めると、次のことが定期的に発生します。

  1. アプリは、選択したプロバイダーと対話して、アプリまたはデバイスの信頼性の証明を取得します(プロバイダーによっては両方)。
  2. アテステーションはアプリチェックサーバーに送信されます。アプリチェックサーバーは、アプリに登録されているパラメーターを使用してアテステーションの有効性を検証し、有効期限付きのアプリチェックトークンをアプリに返します。このトークンは、検証した認証資料に関する情報を保持している可能性があります。
  3. App CheckクライアントSDKは、トークンをアプリにキャッシュし、アプリが保護されたサービスに対して行うリクエストと一緒に送信できるようにします。

App Checkで保護されているサービスは、現在の有効なAppCheckトークンを伴うリクエストのみを受け入れます。

App Checkによって提供されるセキュリティはどのくらい強力ですか?

App Checkは、アテステーションプロバイダーの強度に依存して、アプリまたはデバイスの信頼性を判断します。すべてではありませんが、バックエンドに向けられた悪用ベクトルを防ぎます。 App Checkを使用しても、すべての不正使用を排除できるわけではありませんが、App Checkと統合することで、バックエンドリソースの不正使用保護に向けた重要な一歩を踏み出すことができます。

アプリチェックとFirebase認証は、アプリのセキュリティストーリーの補完的な部分です。 Firebase Authenticationは、ユーザーを保護するユーザー認証を提供しますが、App Checkは、開発者であるユーザーを保護するアプリまたはデバイスの信頼性の証明を提供します。 App Checkは、API呼び出しに有効なFirebase App Checkトークンを含めることを要求することで、Firebaseリソースとカスタムバックエンドへのアクセスを保護します。これらの2つの概念は連携して、アプリを保護します。

割り当てと制限

App Checkの使用には、使用するアテステーションプロバイダーの割り当てと制限が適用されます。

  • DeviceCheckおよびAppAttestへのアクセスには、Appleが設定した割り当てまたは制限が適用されます。

  • Play Integrityには、標準API使用層に対して1日あたり10,000回の呼び出しの割り当てがあります。使用階層を上げる方法については、 PlayIntegrityのドキュメントを参照してください。

  • SafetyNetには、1日あたり10,000コールの割り当てがあります。クォータの増加を要求する方法については、 SafetyNetのドキュメントを参照してください。

  • reCAPTCHA v3には、月間100万コールの割り当てと、1,000QPSの制限があります。クォータの増加を要求する方法については、 reCAPTCHAのドキュメントを参照してください。

  • reCAPTCHA Enterpriseは、1か月あたり100万回の通話が無料で、それ以上の費用がかかります。 reCAPTCHAEnterpriseの価格を参照してください。

始めましょう

始める準備はできましたか?

Appleプラットフォーム

DeviceCheck App Attest

アンドロイド

IntegritySafetyNetを再生する

ウェブ

reCAPTCHA v3 reCAPTCHA Enterprise

フラッター

デフォルトのプロバイダー

カスタムAppCheckプロバイダーを実装する方法を学びます。

カスタムプロバイダー

AppCheckを使用してFirebase以外のバックエンドリソースを保護する方法を学びます。

iOS + Android Web Flutter