Firebase – безопасно входить в чат с паролем

Как проверить, вводит ли пользователь правильный пароль для присоединения к чату.

Этот подход является, возможно, совершенно нецелесообразным. Этот фрагмент кода – это просто показать, чего я хочу достичь, но он не работает вообще.

val ref = FirebaseDatabase.getInstance().getReference("chats") ref.child(chatName).child("password").equalTo(password).addListenerForSingleValueEvent( override fun onDataChange(snapshot: DataSnapshot) { Log.d(TAG, snapshot.toString()) // if there is data the password was right } .... ) 

Как можно безопасно все это вступить в чат с системой паролей? Какие правила я должен установить для базы данных.

Можно ли изменять запросы с помощью firebase с помощью встроенного телефона и просматривать данные, которые передаются между клиентом и сервером?

Если вы хотите, чтобы каждый чат с паролем, одним из вариантов является включение этого пароля в путь в комнате чата. Так, например:

 chats: { roomId1: { secret: { chat11: ... chat12: ... } } roomId2: { correcthorsebatterystaple: { chat21: ... chat22: ... } } 

Защитите эту структуру следующими правилами:

 { "rules": { ".read": false, "chats": { "$roomId": { "$password: { ".read": true } } } } } 

С этой структурой никто не может прочитать список комнат или даже определенную комнату. Чтобы иметь возможность читать, они должны знать как идентификатор комнаты, так и пароль для этой комнаты.