Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Предупреждение
Эта документация не подходит для последней версии SignalR. Взгляните на ASP.NET Core SignalR.
В этом разделе описывается, как применить авторизацию для постоянного подключения. Общие сведения об интеграции безопасности в приложение SignalR см. в разделе "Общие сведения о безопасности".
Принудительное применение авторизации
Чтобы применить правила авторизации при использовании PersistentConnection , необходимо переопределить AuthorizeRequest метод. Атрибут нельзя использовать с постоянными Authorize подключениями. Метод AuthorizeRequest вызывается платформой SignalR Framework перед каждым запросом, чтобы убедиться, что пользователь авторизован для выполнения запрошенного действия. Метод AuthorizeRequest не вызывается из клиентского приложения; вместо этого пользователь проходит проверку подлинности через стандартный механизм аутентификации вашего приложения.
В приведенном ниже примере показано, как ограничить запросы для пользователей, прошедших проверку подлинности.
public class AuthenticatedConnection : PersistentConnection
{
protected override bool AuthorizeRequest(IRequest request)
{
return request.User.Identity.IsAuthenticated;
}
}
Вы можете добавить любую настраиваемую логику авторизации в метод AuthorizationRequest; например, проверьте, принадлежит ли пользователь определенной роли.