Firebase 보안 규칙 시작하기

Firebase Security RulesCloud Firestore, Realtime Database, Cloud Storage 손쉽게 Rules로 시작하여 이 가이드의 단계에 따라 악의적인 사용자로부터 앱을 보호할 수 있습니다.

Firebase Security Rules 언어 이해하기

규칙을 작성하기 전에 시간을 내어 검토해야 합니다. 사용 중인 Firebase 제품의 Firebase Security Rules 언어 Cloud Storage는 상위 집합을 활용합니다. matchallow에 의존하는 CEL (Common Expression Language)의 정수 정의된 경로에 액세스 조건을 설정하는 문

먼저 Firebase Security Rules 언어의 핵심 문법을 알아보세요.

Authentication 설정

아직 추가하지 않았다면 앱에 Firebase Authentication를 추가합니다. Firebase Authentication는 다양한 일반적인 인증 방법을 지원하며 Firebase Security Rules를 사용하여 포괄적인 확인 기능을 제공합니다.

앱에 추가적으로 커스텀 인증 정보를 설정할 수 있습니다.

Firebase Security RulesFirebase Authentication에 대해 자세히 알아보세요.

데이터 및 규칙 구조 정의

데이터를 구조화하는 방법은 규칙을 구조화하고 구현하는 방법에 영향을 미칠 수 있습니다. 데이터 구조를 정의할 때는 Rules 구조에 미칠 수 있는 영향을 파악합니다.

예를 들어 Cloud Storage에는 각 사용자의 특정 역할을 나타내는 필드입니다. 규칙에서 이 필드를 읽고 사용하여 역할 기반 액세스를 허용할 수 있습니다. 또한 Cloud Firestore 데이터베이스, Cloud Firestore에 액세스 기준 저장 Cloud Storage Security Rules에서 해당 문서에 액세스할 수 있습니다.

데이터 및 규칙 아키텍처를 정의할 때는 제품에 따른 규칙의 하위 전파 여부에 유의하세요. Realtime Database의 경우 하향식으로 작동하며 상위 규칙이 하위 규칙보다 우선합니다. 규칙이 특정 경로에서 읽기 또는 쓰기 권한을 부여하는 경우 그 아래의 모든 하위 노드에 대한 액세스 권한도 부여됩니다. 반면에 Cloud FirestoreCloud Storage, 데이터 계층 구조의 지정된 수준에서만 규칙이 적용됨 명시적 규칙을 작성하여 다양한 수준에 대한 액세스를 제어합니다.

규칙 보기

기존 Rules를 보려면 Firebase CLI 또는 Firebase 콘솔. 실수로 업데이트를 덮어쓰지 않으려면 같은 방법을 사용해 규칙을 일관되게 수정해야 합니다. 확실하지 않은 경우 로컬에 정의된 규칙이 최신 업데이트를 반영하는지 여부에 관계없이 콘솔에는 항상 가장 최근에 배포된 Firebase Security Rules 버전이 표시됩니다.

Firebase 콘솔에서 규칙에 액세스하려면 왼쪽 탐색 패널에서 저장용량. 다음으로 Rules 아이콘을 클릭합니다. 올바른 데이터베이스 또는 스토리지 버킷에 저장해야 합니다

Firebase CLI에서 규칙에 액세스하려면 다음으로 이동하세요. 규칙 파일에 명시된 대로 firebase.json 파일에 입력합니다.

기본 규칙 작성

앱을 개발하고 Rules을(를) 이해하면서 다음 기능을 사용해 보세요. Rules를 구현하여 몇 가지 기본 사용 사례를 해결합니다. 여기에는 다음이 포함됩니다.

  • 콘텐츠 소유자 전용: 사용자별로 콘텐츠 액세스를 제한합니다.
  • 혼합 액세스: 사용자에게 쓰기 액세스를 제한하지만 공용 읽기 액세스를 허용합니다.
  • 속성 기반 액세스: 사용자 그룹 또는 유형으로 액세스를 제한합니다.

규칙 테스트

Firebase 콘솔에서 Firebase Security Rules를 설정하는 경우 다음을 사용할 수 있습니다. Firebase 규칙 플레이그라운드를 활용하여 있습니다. 그러나 배포하기 전 Local Emulator Suite 살펴봤습니다

규칙 배포

Firebase 콘솔 또는 Firebase CLI를 사용하여 규칙 배포 살펴보겠습니다 다음에 설명된 단계를 따르세요. Firebase Security Rules를 관리하고 배포합니다.