Firebase Summit에서 발표된 모든 내용을 살펴보고 Firebase로 앱을 빠르게 개발하고 안심하고 앱을 실행하는 방법을 알아보세요. 자세히 알아보기

Firebase 보안 규칙을 빠르게 검증

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

Firebase Console에서 업데이트된 Firebase 보안 규칙을 빠르게 테스트하려면 Rules Playground를 사용하세요.

Rules Playground는 새로운 동작을 탐색하거나 규칙을 작성할 때 신속하게 유효성을 검사할 때 사용할 수 있는 편리한 도구입니다. 시뮬레이션에 대해 설정한 매개변수에 따라 액세스가 허용 또는 거부되었음을 확인하는 메시지가 표시됩니다.

규칙 플레이그라운드 사용

  1. Firebase 콘솔 을 열고 프로젝트를 선택합니다.
  2. 그런 다음 제품 탐색에서 다음 중 하나를 수행합니다.
    • 실시간 데이터베이스 , Cloud Firestore 또는 저장소 를 적절하게 선택한 다음 규칙 을 클릭하여 규칙 편집기로 이동합니다.
  3. 편집을 마치면 편집기에서 Rules Playground 를 클릭합니다.
  4. Rules Playground 설정에서 다음을 포함한 테스트 옵션을 선택합니다.
    • 테스트 읽기 또는 쓰기.
    • 데이터베이스 또는 저장소 버킷의 특정 위치 (경로).
    • 인증 유형 - 인증되지 않은 인증된 익명 사용자 또는 특정 사용자 ID.
    • 규칙이 구체적으로 참조하는 문서별 데이터(예: 쓰기를 허용하기 전에 규칙에 특정 필드가 있어야 하는 경우).
  5. 실행 을 클릭하고 편집기 위의 배너에서 결과를 찾습니다.

샘플 규칙 플레이그라운드 시나리오

다음 샘플 시나리오 및 기본 규칙을 사용하여 Rules Playground 동작을 테스트합니다.

클라우드 파이어스토어

service cloud.firestore {
  match /databases/{database}/documents {
    // Allow only authenticated content owners access
    match /some_collection/{document} {
      allow read, write: if request.auth != null && request.auth.uid == request.resource.data.author_uid
      }
    }
  }

실시간 데이터베이스

 // These rules grant access to a node matching the authenticated
 // user's ID from the Firebase auth token
 {
   "rules": {
     "users": {
       "$uid": {
         ".read": "$uid === auth.uid",
         ".write": "$uid === auth.uid"
       }
     }
   }
 }
 

클라우드 스토리지

// Grants a user access to a node matching their user ID
service firebase.storage {
  match /b/{bucket}/o {
    // Files look like: "user/<UID>/path/to/file.txt"
    match /user/{userId}/{allPaths=**} {
      allow read, write: if request.auth != null && request.auth.uid == userId;
    }
  }
}
  • 규칙 편집기에서 위에 제공된 규칙을 추가합니다.

  • 시뮬레이션 유형 드롭다운 메뉴에서 가져오기 를 선택하고 위치 필드에 유효한 경로를 입력합니다.

  • 인증 을 켜고 공급자 드롭다운에서 인증 유형을 선택합니다.

  • 사용자 ID 세부 정보를 입력하고 실행 을 클릭합니다.

시뮬레이션 결과가 편집기 상단에 나타납니다. 입력한 사용자 ID 세부 정보에 따라 읽기가 성공적으로 허용 또는 거부되었음을 확인하는 배너가 표시됩니다.