SignalR с проверкой подлинности Windows не работает при публикации в IIS ⇐ C#
SignalR с проверкой подлинности Windows не работает при публикации в IIS
У меня есть приложение Blazor Server Chat, которое использует концентратор SignalR для отправки сообщений клиенту. Используемая аутентификация — Windows Auth.
Сообщения не доходят до отдельного пользователя. Я протестировал широковещание, которое действительно работает для отправки сообщения через SignalR, но, конечно, всем.
Проблема связана с именем пользователя, зарегистрированного в SignalR. Предполагается, что каждый пользователь имеет индивидуальное имя, а для Windows Auth рекомендуется реализовать NameUserIdProvider следующим образом:
Открытый класс NameUserIdProvider: IUserIdProvider { общедоступная строка GetUserId (соединение HubConnectionContext) { вернуть соединение.Пользователь?.Идентификация?.Имя; }
Однако проблема заключается в том, что это не возвращает текущего пользователя Windows, а возвращает учетную запись пользователя, под которой работает веб-сайт, которая, конечно же, одинакова для всех пользователей.
Я попытался добавить заявку клиента в ClaimsTransformer, но оказалось, что эта заявка недоступна на момент подключения.
Я не понимаю, как это решить. Буду рад любым советам.
У меня есть приложение Blazor Server Chat, которое использует концентратор SignalR для отправки сообщений клиенту. Используемая аутентификация — Windows Auth.
Сообщения не доходят до отдельного пользователя. Я протестировал широковещание, которое действительно работает для отправки сообщения через SignalR, но, конечно, всем.
Проблема связана с именем пользователя, зарегистрированного в SignalR. Предполагается, что каждый пользователь имеет индивидуальное имя, а для Windows Auth рекомендуется реализовать NameUserIdProvider следующим образом:
Открытый класс NameUserIdProvider: IUserIdProvider { общедоступная строка GetUserId (соединение HubConnectionContext) { вернуть соединение.Пользователь?.Идентификация?.Имя; }
Однако проблема заключается в том, что это не возвращает текущего пользователя Windows, а возвращает учетную запись пользователя, под которой работает веб-сайт, которая, конечно же, одинакова для всех пользователей.
Я попытался добавить заявку клиента в ClaimsTransformer, но оказалось, что эта заявка недоступна на момент подключения.
Я не понимаю, как это решить. Буду рад любым советам.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Проверка подлинности Windows Laravel 11 IIS не может найти $_SERVER['AUTH_USER']
Anonymous » » в форуме Php - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Веб-приложение ASP.NET → Проверка подлинности Windows → IIS Express → Kerberos или NTLM?
Anonymous » » в форуме C# - 0 Ответы
- 13 Просмотры
-
Последнее сообщение Anonymous
-