Возможна ли многопользовательская установка с Firebase и Firestore? - PullRequest
0 голосов
/ 11 января 2019

Я смотрю на создание мультитенантного приложения с использованием Firebase и Firestore. Количество арендаторов будет небольшим (примерно 6 изначально), и конечные пользователи не будут создавать собственные экземпляры в приложении, а будут строго контролироваться администраторами.

Моя идеальная ситуация - иметь только одно приложение, к которому я могу подключить несколько доменов, и направлять запросы в конкретные базы данных для их выполнения.

У меня есть несколько проблем:

Я прочитал в документации, что я могу создать несколько баз данных для одного приложения, но не вижу параметров в моей панели администратора, поэтому я не уверен, является ли документация неверной в настоящее время (или относится ли она к БД в реальном времени) ).

Я не хочу, чтобы пользователи, которые регистрируются, были зарегистрированы для всех арендаторов, и, учитывая то, что, похоже, работает аутентификация Firebase, я не вижу способа указать, в каком домене регистрируется пользователь. У меня была мысль об этом в коллекции, которая отслеживает домены, частью которых является пользователь, и подделывала его так, что он держит пользователей в изоляции, но если пользователь зарегистрировался в «двух» арендаторах и хотел изменить свой логин учетные данные, которые могут изменить их по всей сети, и могут привести к путанице.

Так что, похоже, что это не будет работать так же чисто, как хотелось бы, что указывает на вариант 2:

Имейте одно приложение внешнего интерфейса, которое имеет ссылки на все приложения Firebase, к которым оно может подключиться, и связывается с бэкэндами отдельных приложений для разделения данных и аутентификации пользователя. Это решило бы проблему разрозненного пользователя, но тогда я бы поддерживал несколько различных приложений на бэкэнде, и весь смысл создания новой версии этого продукта заключается в том, чтобы избавиться от необходимости поддерживать несколько похожих, но немного разных кодовых баз. Решение этой проблемы состояло бы в том, чтобы развернуть одно и то же хранилище кода в разных приложениях на firebase: позволит ли CLI каждый раз выбирать цель развертывания?

Полагаю, вариант 3 заключается в том, чтобы приложение React без головы связывалось с сервером узлов или чем-то еще, но тогда я бы потерял все прелести Firebase, и я действительно копаю Firebase.

Это решаемая проблема? Или я пытаюсь втиснуть квадратный колышек в круглое отверстие?

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...