Следуя документации Firebase здесь , я внедрил следующее правило безопасности:
match /docs/{hashID} {
allow read, write: if hashing.md5(request.auth.uid.toUtf8()).toBase64() == hashID;
}
На стороне клиента я использую node-md5 для вычисления хэш-идентификатор пользователя и запись в документ
firebase.firestore().collection("docs").doc(md5(user.uid)).writeSomething()
Правило безопасности не выполняется, поскольку хэши не совпадают.
Для uid «crz6KyreRCM4A0Qvk9EfeXHBLF43» мой клиент md5 выдает мне «eee1f958a8c0a27ef6886736768683b686 , в то время как Firebase Rules Playground выдает мне "fbOLeadWz7YxnsGgfESBNg ==". Я проверил правильность значения md5 клиента, используя https://www.md5hashgenerator.com/. Что я делаю не так в правиле безопасности?