сессий) прописывается и лицензируется в USB ключе, необходимо в ASP.net core 2.1 приложении подсчитывать активные сессии и при достижении определенного количества блокировать работу приложения. Как лучше это реализовать? Пока хотим делать через SignalR подписку на хаб и опрашивать по периоду подписанных клиентов, мониторить активные соединения, при превышении-блокировать новых. Есть варианты лучше?
Чего просто не чекать лимит при создании сессии?
Зачем держать открытым соединение? Можно просто сделать мидлвер, чтобы проверял валидность сессии при каждом реквесте, если вернул 401 редиректаем с ошибкой...
В веб-приложении понятие "активная сессия" довольно размыто. Можно сделать через определение "онлайновости" через веб-сокеты, а подсчитывать количество юзеров через глобальный hashset, хранящий некие уникальные идентификаторы пользователя (логин+ip+useragent?)
Обсуждают сегодня