Firebaseアプリのチェック
App Checkは、請求詐欺やフィッシングなどの悪用からバックエンドリソースを保護するのに役立ちます。 Firebaseサービスと独自のバックエンドの両方で機能し、リソースを安全に保ちます。
App Checkを使用すると、アプリを実行しているデバイスは、次のいずれかまたは両方を証明するアプリまたはデバイス証明プロバイダーを使用します。
- リクエストは本物のアプリから発信されます
- リクエストは、本物の改ざんされていないデバイスから発信されます
このアテステーションは、アプリがFirebaseバックエンドリソースに対して行うすべてのリクエストに添付されます。
App Checkには、アテステーションプロバイダーとして次のサービスを使用するためのサポートが組み込まれています。
- AppleプラットフォームでのDeviceCheckまたはAppAttest
- AndroidでIntegrityまたはSafetyNet (非推奨)を再生する
- Webアプリ上のreCAPTCHAv3またはreCAPTCHAEnterprise
これらがニーズに対して不十分な場合は、サードパーティの認証プロバイダーまたは独自の認証手法を使用する独自のサービスを実装することもできます。
App Checkは現在、次のFirebase製品で動作します。
サポートされているFirebase製品 |
---|
リアルタイムデータベース |
CloudFirestore |
クラウドストレージ |
クラウド関数(呼び出し可能な関数) |
App Checkを使用して、Firebase以外のバックエンドリソースを保護することもできます。
始める準備はできましたか?
それはどのように機能しますか?
サービスのアプリチェックを有効にして、クライアントSDKをアプリに含めると、次のことが定期的に発生します。
- アプリは、選択したプロバイダーと対話して、アプリまたはデバイスの信頼性(プロバイダーによっては両方)の証明書を取得します。
- アテステーションはアプリチェックサーバーに送信されます。アプリチェックサーバーは、アプリに登録されているパラメーターを使用してアテステーションの有効性を検証し、有効期限付きのアプリチェックトークンをアプリに返します。このトークンは、検証した認証資料に関する情報を保持している可能性があります。
- App CheckクライアントSDKは、トークンをアプリにキャッシュし、アプリが保護されたサービスに対して行うリクエストと一緒に送信できるようにします。
App Checkで保護されているサービスは、現在の有効なAppCheckトークンを伴うリクエストのみを受け入れます。
App Checkによって提供されるセキュリティはどのくらい強力ですか?
App Checkは、アプリまたはデバイスの信頼性を判断するために、その認証プロバイダーの強度に依存しています。すべてではありませんが、バックエンドに向けられた悪用ベクトルを防ぎます。 App Checkを使用しても、すべての不正使用を排除できるわけではありませんが、App Checkと統合することで、バックエンドリソースの不正使用保護に向けた重要な一歩を踏み出すことができます。
App CheckはFirebase認証とどのように関連していますか?
アプリチェックと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プラットフォーム
アンドロイド
ウェブ
reCAPTCHA v3 reCAPTCHA Enterprise
フラッター
カスタムアプリチェックプロバイダーを実装する方法を学びます。
AppCheckを使用してFirebase以外のバックエンドリソースを保護する方法を学びます。