Я новичок в firebase и создаю приложение для обмена сообщениями и использую частную службу otp для регистрации номера телефона. Я использую как базу данных в реальном времени, так и firestore, поэтому мне нужно защитить базу данных в правилах безопасности. Похоже, что использование auth.uid является единственным способ использования в правилах безопасности.
Я сохраняю чат в базе данных в реальном времени и сохраняю профили пользователей в firestore.
Как я могу создать auth.uid для правил безопасности для телефонных номеров моих пользователей, которые аутентифицированы с помощью частной службы OTP.
Пожалуйста, помогите мне, как я могу подойти к этому.
@RenaudTarnec Я не хочу использовать аутентификацию телефона с помощью firebase. особенно signinwithphonenumber отправляет новое SMS-сообщение otp с recaptcha (мне не нравится поток пользовательского интерфейса), но я уже проверил номер телефона с помощью частной службы otp. могу ли я создать auth.uid для моего подтвержденного номера телефона от клиента. согласно вашему предложению, устанавливает значение uid с помощью admin sdk из безопасного клиента. это безопасный подход.
"Могу ли я создать auth.uid для моего подтвержденного номера телефона из client.as, согласно вашему предложению, устанавливает значение uid с помощью admin sdk" => Да. Для этого вам нужно использовать внутренний сервер, который вы контролируете, или, проще говоря, облачную функцию. "от клиента безопасно ... это безопасный подход" => На самом деле, на этот вопрос сложно ответить. Все зависит от того, как клиенты (и какие клиты, например, Admin?) Вызывают облачную функцию из внешнего интерфейса.
Возможно, вас заинтересует этот статья, который показывает, как создать модуль администратора для управления доступом и ролями пользователей Firebase. Мы не указываем идентификатор пользователя при его создании в облачной функции, но вам просто нужно следовать примеру, показанному в приведенной выше ссылке (мой первый комментарий) admin.auth().createUser({uid: 'some-uid', phoneNumber: '+11234567890'})
@RenaudTarnec, поэтому мне нужно установить значение uid с помощью admin sdk из облачной функции. Я изучу его. Большое вам спасибо. Если я когда-нибудь столкнусь с какой-либо проблемой при создании uid. Могу я снова задать вопрос.

Как прокомментировал Рено, вам нужно:
На этом этапе информация из настраиваемого токена доступна в правилах безопасности для Firestore и Realtime Database.
Похоже, вам стоит взглянуть на аутентификацию телефона Firebase: firebase.google.com/docs/auth/web/phone-auth. Обратите внимание, что с помощью Admin SDK вы можете установить значение uid пользователя, см. firebase.google.com/docs/auth/admin/manage-users#create_a_us er