Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

Firebaseアプリのチェック

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

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

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

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

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

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

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

  • リアルタイムデータベース
  • クラウドストレージ
  • クラウド関数(呼び出し可能な関数)

iOSの上でDeviceCheckを始めるには、 iOSのアプリの証言を始めます

Androidで始めましょう

Webアプリを始めましょう

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

iOSのアンドロイドウェブ

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

サービスのアプリチェックを有効にし、クライアント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アクセスには、Appleが設定した割り当てまたは制限が適用されます。

  • SafetyNetには、1日あたり10,000コールの割り当てがあります。クォータの増加を要求する方法については、参照SAFETYNETのマニュアルを

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

始めましょう

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

iOSの上でDeviceCheckを始めるには、 iOSのアプリの証言を始めます

Androidで始めましょう

Webアプリを始めましょう

カスタムプロバイダーを使い始める

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

iOSのアンドロイドウェブ