0

모바일 애플리케이션 용 firebase 데이터베이스 보안에 대해 몇 가지 질문이 있습니다.해커가 firebase 데이터베이스에서 읽기/쓰기를 수행하지 못하도록하는 방법

예를 들어 Android 애플리케이션을 디 컴파일 한 후 해커가 firebase api 키를 가져온 다음 firebase 데이터베이스에 액세스 할 수 있습니다. 맞습니까?

예를 들어 auth! = null 인 경우에만 firebase에서 읽기/쓰기가 가능한 보안 규칙을 추가했다고 가정합니다. 인증이 내 firebase 데이터베이스를 보호하고 있음을 의미하지만,이 질문은 저에게 같은 질문을하게합니다. , facebook/google/firebase 전자 메일 인증을 구성하는 경우 응용 프로그램의 해당 공급자에 대해 일부 api 키가 필요할 것입니다. 해커가 해당 키에 액세스 할 수 있으면 자신의 응용 프로그램에서 내 인증을 사용할 수있게 될 것이며 내 firebase 데이터에 액세스 할 수 있습니까?

내 응용 프로그램 만 firebase 데이터베이스에 액세스 할 수 있도록 Android 응용 프로그램에서 수행 할 작업을 이해하고 싶습니다.

감사합니다.

답변

2

Android 애플리케이션을 디 컴파일 한 후 해커가 firebase apier 키를 가져온 다음 firebase 데이터베이스에 액세스 할 수 있습니까?

데이터베이스가 인증 된 사용자에게만 액세스를 제한하는 보안 규칙을 사용하지 않는 경우에만.

나는 페이스 북/구글/또는 중포 기지 이메일 인증 해커가 그 키에 대한 액세스 권한을 가지고 있다면 나는 그가 사용할 수 있습니다, 내 응용 프로그램에서 이들 업체에 대한 몇 가지 API를 키 필요해을 구성하는 경우 자신의 응용 프로그램에서 내 인증 및 내 firebase 데이터에 액세스 할 수 있습니까?

아니요, 그렇게 작동하지 않습니다.

Firebase로 인증 된 각 사용자에게 실시간 데이터베이스, Firestore 또는 저장소와 같은 보호 된 서비스에 액세스 할 때 사용자를 식별하는 데 사용되는 토큰이 발급됩니다. 이 토큰은 1 시간 동안 유효하며 그 후에는 SDK가 자동으로 수행해야하는 새로 고침이 필요합니다.

해커가 해당 사용자의 데이터를 제어하려면이 토큰을 얻어야하며, 작업하는 데 한 시간 이상 걸리지 않습니다. 그런 다음 SDK에서 얻은 다음 토큰을 얻어야합니다. 이 모든 일은 사용자의 기기에서 발생해야합니다.

+0

해커가 앱에 동일한 인증을 설정하면 토큰이 표시되지 않습니까? –

+0

"동일한 인증 설정"이란 무엇을 의미합니까? Android 앱은 패키지 이름과 SHA-1 해시로 고유하게 식별됩니다. 해커에게 서명 키를 제공하는 경우에만 복제 할 수 있습니다. –

+0

패키지 이름을 복제 할 수 있습니다 ... sha-1이 동일한 인증 기밀을 사용하는 다른 앱을 어떻게 막을 수 있는지 설명해 주시겠습니까? –