Firebaseセキュリティルールの使用を開始する

Firebaseセキュリティルールは、Cloud Firestore、Realtime Database、CloudStorageのデータに堅牢で完全にカスタマイズ可能な保護を提供します。このガイドの手順に従ってルールを簡単に開始し、データを保護し、悪意のあるユーザーからアプリを保護できます。

Firebaseセキュリティルールの言語を理解する

ルールの作成を開始する前に、使用しているFirebase製品の特定のFirebaseセキュリティルール言語を確認することをお勧めします。クラウドストレージはに依存している一般的な表現言語(CEL)のスーパーセットで活用matchしてallowに定義されたパスにアクセスするための条件を設定する文を..

学習することから始めFirebaseセキュリティルール言語のコア構文を

認証を設定する

あなたはすでにそれを行っていない場合は、追加のアプリにFirebase認証を。 Firebase Authenticationは、多くの一般的な認証方法をサポートし、Firebase Security Rulesと統合して、包括的な検証機能を提供します。

アプリの追加のカスタム認証情報を設定できます。

詳細情報FirebaseセキュリティルールとFirebase認証を

データとルールの構造を定義する

データを構造化する方法は、ルールを構造化および実装する方法に影響を与える可能性があります。データ構造を定義するときは、それらがルール構造に与える影響を考慮してください。

たとえば、Cloud Storageでは、各ユーザーの特定の役割を示すフィールドを含めることができます。次に、ルールはそのフィールドを読み取り、それを使用してロールベースのアクセスを許可できます。

データとルールのアーキテクチャを定義するときは、製品に応じて、ルールがカスケードされる方法とカスケードされない方法に注意してください。 Realtime Databaseを使用すると、ルールはトップダウンで機能し、浅いルールが深いルールを上書きします。ルールが特定のパスで読み取りまたは書き込み権限を付与する場合、そのルールの下にあるすべての子ノードへのアクセスも許可します。対照的に、CloudFirestoreとCloudStorageでは、ルールはデータ階層の指定されたレベルにのみ適用され、さまざまなレベルへのアクセスを制御する明示的なルールを記述します。

ルールにアクセスする

既存のルールを表示するには、FirebaseCLIまたはFirebaseコンソールのいずれかを使用します。誤って更新を上書きしないように、常に同じ方法を使用してルールを編集してください。ローカルで定義されたルールが最新のアップデートを反映しているかどうかわからない場合、Firebaseコンソールには常にFirebaseセキュリティルールの最新バージョンが表示されます。

あなたのルールにアクセスするにはFirebaseコンソールプロジェクトを選択し、その後、左側のナビゲーションパネルで、ストレージをクリックします。あなたが正しいデータベースやストレージバケツにいる一度ルールをクリックします。

Firebase CLIからあなたのルールにアクセスするには、あなたに注意ルール・ファイルにアクセスしてくださいfirebase.jsonファイル

基本的なルールを書く

あなたのアプリと理解ルールを開発しているとして、いくつか対処するためのルールを実装してみてください基本的な使用例以下を含むが、:

  • コンテンツ所有者のみ:ユーザーによるコンテンツへのアクセスを制限します。
  • 混血アクセス:ユーザーが書き込みアクセスを制限しますが、公共の読み取りアクセスを許可します。
  • 属性ベースのアクセス:グループへのアクセスを制限したり、ユーザーの入力します。

ルールをテストする

あなたはFirebaseコンソールであなたのFirebaseセキュリティルールを設定している場合は、使用することができますFirebaseルール遊び場をすばやく検証動作に。しかし、我々はとのより徹底的なテストをお勧めしますローカルエミュレータスイートを使用すると、本番への変更を展開する前に。

ルールを展開する

FirebaseコンソールまたはFirebaseCLIを使用して、ルールを本番環境にデプロイします。で説明されている手順に従って、管理および展開Firebaseセキュリティルールを