Pierwsze kroki z regułami zabezpieczeń Firebase

Firebase Security Rules zapewniają niezawodną, w pełni konfigurowalną ochronę danych w usługach Cloud Firestore, Realtime Database i Cloud Storage. Możesz łatwo zacząć korzystać z Security Rules tej funkcji, wykonując czynności opisane w tym przewodniku, aby zabezpieczyć dane i chronić aplikację przed złośliwymi użytkownikami.

Aby uzyskać pomoc AI, skopiuj poniższy prompt do agenta kodowania AI (np. Gemini w Android Studio, Antigravity, Claude Code, Codex i Cursor). Możesz dostosować prompta i współpracować z agentem. Szczegółowe informacje o instalacji znajdziesz w artykule Umiejętności agenta Firebase.

Help me use Firebase in my app.
1. Make sure that **Firebase agent skills** are installed and updated. For Claude Code, Codex, or Cursor agents, help me install the Firebase plugin. For other agents, run `npx skills add firebase/agent-skills`. Always try to use **Firebase agent skills** for Firebase-related tasks.
2. Help me write, validate, and deploy Firebase Security Rules to protect my app's Cloud Storage data.

Rozumienie języka Firebase Security Rules

Zanim zaczniesz pisać reguły, warto poświęcić trochę czasu na zapoznanie się z  Firebase Security Rulesjęzykiem konkretnych usług Firebase, z których korzystasz. Cloud Storage korzysta z nadzbioru języka Common Expression Language (CEL), który opiera się na instrukcjach match i allow określających warunek dostępu w zdefiniowanej ścieżce.

Zacznij od poznania podstawowej składni języka Firebase Security Rules.

Skonfiguruj usługę Authentication

Jeśli jeszcze tego nie zrobiono, dodaj Firebase Authentication do aplikacji.Firebase Authentication obsługuje wiele popularnych metod uwierzytelniania i integruje się z Firebase Security Rules, aby zapewnić kompleksowe możliwości weryfikacji.

Możesz skonfigurować dodatkowe, niestandardowe informacje o uwierzytelnianiu w przypadku swojej aplikacji.

Dowiedz się więcej o Firebase Security Rules i Firebase Authentication.

Określanie struktur danych i reguł

Starannie uporządkuj dane, aby były zgodne z Twoimi wymaganiami dotyczącymi bezpieczeństwa.

Sposób strukturyzacji danych może wpływać na sposób strukturyzacji i wdrażania reguł. Podczas definiowania struktur danych zastanów się, jaki mogą mieć wpływ na strukturę Security Rules.

Na przykład w Cloud Storage możesz uwzględnić pole, które będzie wskazywać konkretną rolę każdego użytkownika. Następnie reguły mogą odczytywać to pole i używać go do przyznawania dostępu opartego na rolach. Możesz też utworzyć bazę danych Cloud Firestore, zapisać kryteria dostępu w dokumentach Cloud Firestore, a potem uzyskać dostęp do tych dokumentów z Cloud Storage Security Rules.

Podczas definiowania architektury danych i reguł pamiętaj, że reguły mogą się kaskadowo rozprzestrzeniać lub nie, w zależności od usługi. W przypadku Realtime Database reguły działają od góry do dołu, a reguły na wyższych poziomach zastępują te na niższych. Jeśli reguła przyznaje uprawnienia do odczytu lub zapisu w określonej ścieżce, przyznaje też dostęp do wszystkich węzłów podrzędnych. Z kolei w przypadku Cloud Firestore i Cloud Storage reguły są stosowane tylko na określonych poziomach hierarchii danych, a dostęp do różnych poziomów kontroluje się za pomocą wyraźnych reguł.

Dostęp do reguł

Aby wyświetlić istniejące Security Rules, użyj interfejsu wiersza poleceń Firebase lub konsoli Firebase. Aby uniknąć przypadkowego zastąpienia aktualizacji, edytuj reguły zawsze w ten sam sposób. Jeśli nie masz pewności, czy zdefiniowane lokalnie reguły odzwierciedlają najnowsze aktualizacje, w konsoli Firebase zawsze zobaczysz ostatnio wdrożoną wersję Firebase Security Rules.

Aby uzyskać dostęp do reguł z Firebase konsoli, wybierz projekt, a następnie w panelu nawigacyjnym po lewej stronie kliknij Miejsce na dane. Kliknij Security Rules, gdy znajdziesz się w odpowiedniej bazie danych lub zasobniku na dane.

Aby uzyskać dostęp do reguł z Firebase interfejsu CLI, otwórz plik reguł wskazany w pliku firebase.json.

Tworzenie reguł podstawowych

Podczas tworzenia aplikacji i poznawania Security Rules spróbuj wdrożyć Security Rules, aby rozwiązać kilka podstawowych przypadków użycia, w tym:

  • Tylko właściciel treści: ogranicza dostęp do treści według użytkownika.
  • Dostęp mieszany: ogranicz dostęp do zapisu dla użytkowników, ale zezwól na publiczny dostęp do odczytu.
  • Dostęp oparty na atrybutach: ogranicz dostęp do grupy lub typu użytkownika.

Testowanie reguł

Jeśli konfigurujesz Firebase Security Rules w Firebase konsoli, możesz użyć placu zabaw reguł Firebase, aby szybko sprawdzić działanie. Zalecamy jednak dokładniejsze przetestowanie za pomocą Local Emulator Suite przed wdrożeniem zmian w środowisku produkcyjnym.

Reguły wdrażania

Aby wdrożyć reguły w środowisku produkcyjnym, użyj konsoli Firebase lub interfejsu wiersza poleceń Firebase. Wykonaj czynności opisane w artykule Zarządzanie Firebase Security Rules i wdrażanie tej usługi.