Если у вас включен вход в систему по электронной почте / паролю, вы не можете помешать людям пытаться создавать учетные записи и входить в систему. То, что вы предложили в своем вопросе, на самом деле не "безопасность", так как код клиента может быть скомпрометирован и обошел. Однако вы можете использовать правила безопасности, чтобы определить, кто действительно может получить доступ к вашей базе данных. Поскольку вы пометили этот Google-Cloud-FireStore, я предполагаю, что это то, что вы используете.
Firestore имеет правил безопасности , которые вы можете использовать, чтобы определить, кто имеет доступ к каким данным. Для панели администратора, в которой вы доверяете определенному набору учетных записей (которые вы можете создать вручную), вы можете просто внести их в белый список в своих правилах. Предполагая, что у вас есть список UID, проще всего сделать, если вы доверяете им все действия в базе данных, просто предоставьте им полный доступ:
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if request.auth.uid in ['uid1', 'uid2', 'uid3'];
}
}
}
Возможно, вы захотите что-то более сложное в этом случае вам действительно придется изучить систему правил безопасности и максимально эффективно ее использовать. Или вы можете направить все действия пользователя через управляемый вами сервер и проверить маркер Firebase Auth ID пользователя с помощью Firebase Admin SDK перед совершением действия.