Здравствуйте, Shmj, Вы писали:
S>Здравствуйте, AlexNek, Вы писали:
AN>>Всё работает замечательно, за исключением того что имеется прямой доступ к базе на сервере
S>Позвольте уточнить — клиент получает строку подключения и напрямую подключается к базе? А у вас публичное приложение и давать всем подряд строку подключения не хотите? Правильно понял?
Не совсем так.
Вероятно с блазором мало еще кто работает, поэтому немного воды.
Везде идет речь о двух моделях: блазор клиент и блазор сервер. На самом деле их три, так как блазор клиент может быть еще в режиме Hosted, когда часть кода на сервере, часть на клиенте.
И поначалу я не понимал отчего нет встроенной возможности сделать, грубо говоря, логин диалог для обычного блазор клиента. Ведь есть же примеры которые это делают с identity сервером (IS).
Но все они передеают пароль пользователя из клиента на IS Rest API. И кроме того все "секретные" данные нужно держать тоже на клиенте или как то их получать, всё равно на клиент.
Поэтому видимо и был сделан некий гибрид из сервера и клиента. Весь "логин" происходит фактически на сервере, но для пользователя это абсолютно прозрачно.
Есть рукодельные версии, где логин также происходит на сервере в IS, но для этого происходит видимое переключение приложений.
Формы для "логина" также располагаются на сервере и всё это завязано с IS и базой данной.
Данная модель мне нравится больше и всё что мне хочется — это отрезать логику от конкретной базы данных. Так как все данные находятся в сервисах.
Но похоже микрософт этого не предусмотрел.