Служба SignalR (без сервера) - функции Azure - PullRequest
0 голосов
/ 20 сентября 2019

Я запутался в SignalR, особенно при использовании службы Azure SignalR, а в еще большей степени, когда размышляю над реализацией без сервера с использованием функций Azure.

У меня есть веб-приложение и приложение-функция Azure,который имеет реализованную функцию переговоров.JavaScript на клиенте успешно согласовывает и может подключаться к службе Azure SignalR, пока все хорошо.

Дополнительный вопрос: Единственное, что мешает любому пожилому человеку подключиться и получить токен с настройкой CORS?Это достаточно безопасно само по себе?

После этого я запутался.Теперь у меня есть служба Azure SignalR и приложение-функция Azure. Какое приложение-функция используется после установки клиентского подключения к службе Azure SignalR?

С точки зрения взаимодействия с клиентом мне нужно сделать такие вещи, как присоединение к группе и трансляция в указанную группу (из JavaScript на клиенте), Я предполагаю, что это будут две дополнительные функции (триггеры Http) наприложение функции?

Если я правильно понял вышеприведенное, как мне помешать кому-либо вызывать функцию "широковещания" через конечную точку приложения http http ?По крайней мере, локально я могу позвонить ему из Почтальона, не предоставив никакой информации, полученной в первоначальном ответе о согласовании.

Мне также нужно отправить сообщения группам из кода бэкэнда (стандарт .net), этосделано по вызову приложения-функции или напрямую в службу Azure SignalR?

Заранее спасибо.

1 Ответ

1 голос
/ 21 сентября 2019

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

Это единственное, что мешает любому пожилому человеку подключиться иполучить токен настройки CORS?Достаточно ли это безопасно само по себе?

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

С точки зрения взаимодействия с клиентомМне нужно сделать что-то вроде присоединения к группе и трансляции в указанную группу (из JavaScript на клиенте), я предполагаю, что это будет две дополнительные функции (триггеры Http) в приложении функций?

Выпри условии, правильно.Если вы хотите полностью отказаться от сервера, это путь.Вы можете аутентифицировать функции так же, как вы аутентифицируете свою функцию согласования SignalR, и у вас будет защищенная конечная точка, которая будет вызывать для вас службу SignalR.

Мне также нужно передавать сообщения в группы из бэкэндакод (стандарт .net), это делается путем вызова приложения-функции или напрямую в службу Azure SignalR?

На этот вопрос нет правильного ответа.Это действительно зависит от вашей конкретной архитектуры.Без дополнительного контекста было бы трудно / неправильно попытаться ответить на этот вопрос.

О, и если вы собираетесь работать без сервера с SignalR, я действительно надеюсь, что вы используете их привязки.:)

...