인증을 사용하고 로그인 방법을 사용하여 인증 된 사람이 브라우저 사용자가 내 데이터베이스를 조작 할 수 있다는 의미입니까? 또는 전 세계적으로 폭죽이 노출 된 경우에만 가능합니까? 반응하는 js 개발을 통해 구체적으로 묻습니다.firebase 규칙 집합은 데이터베이스를 어떻게 보호합니까?
답변
당신은 다음과 같은 규칙을 설정 한 경우 : 그것은 단지 사람이 읽고 데이터베이스에 쓸 수 있다는 것을 의미
{
"rules": {
".read":true ,
".write": true
}
}
. 데이터베이스가있는 firebase 콘솔에 액세스 할 수있는 것은 아닙니다. 또한 데이터베이스가 귀하의 계정과 연결되어 있기 때문에 firebase 데이터베이스 URL을 가져온 것이 아니라 데이터베이스에 액세스 할 수 있다는 의미는 아닙니다.
계정에 액세스 할 수있는 사람 만 Firebase 콘솔에 들어가고 콘솔에서 규칙 및/또는 데이터베이스를 변경할 수 있습니다.
테스트를 위해 계정을 로그 아웃하고 firebase 데이터베이스 URL을 가지고 위의 url
에 입력하고 액세스 할 수 있는지 확인하십시오.
위의 규칙이있는 예 : 웹 사이트에 로그인 화면이있는 경우 위의 규칙을 사용해도 사용자가 로그인 할 수 있습니다. 코드에서 지정하면 로그인해야 로그인 할 수 있습니다. 그의 정보가 데이터베이스에 있다면.
는이 규칙을 사용하여 말할 수 있습니다 :
{
"rules": {
".read":auth!=null,
".write": auth!=null
}
}
그것은 읽고 사용자가 해당 작업을 수행 할 수 있도록 인증해야하는 데이터베이스에 작성하는 것을 의미한다.
이 규칙은 사용자가 수행 할 수있는 작업을 결정하기위한 것입니다. 아무도 콘솔에 액세스 할 수 없습니다. 당신이 사용하는 경우
이 :
편집
는{
"rules": {
".read": true,
".write": false,
}
}
그리고 예를 들어 나는 안드로이드 응용 프로그램에 제품을 추가 할 수 있도록 데이터베이스에 아무것도 쓸 수있는 한, 그것은 추가되지 않습니다 응용 프로그램 (그래픽)하지만 데이터베이스에 추가되지 않습니다, 그래서 내가 그 제품에 데이터베이스에서 추가되지 않은 이후 (그래서 실 거예요 DB에서 제품의 목록을로드 할 때 나타납니다 그 활동을 볼 수 없을 때).