Konsultacja podejścia do obsługi sesji użytkownika w aplikacji ISAPI

0

Cześć, temat raczej na Newbie ale jest już zamknięte ;)
przygotowuje się do napisania małej aplikacji ISAPI, jest to moje pierwsza styczność z tego typu aplikacją dlatego chciałbym Was prosić o opinie (żeby nie narobić się bez sensu).

Chodzi mi o obsługę sesji użytkownika, zastanawiam się jak ten temat najlepiej ugryźć. Wymyśliłem sobie że podczas logowania użytkownik otrzyma token którym będzie posługiwał się w następnych zapytaniach do serwera. Taki token będzie sprawdzany i jeśli jest prawidłowy (nie przeterminowany etc) zapytanie będzie realizowane. Problem w tym że nie może to istotnie wpływać (czasowo) na działanie aplikacji. Mam pomysł żeby napisać klasę, która będzie przechowywać informację o sesjach, wiem że IIS dynamicznie tworzy wątki dla połączeń/zapytań więc planuje wywoływać ww klasę z wykorzystaniem sesji krytycznej. Czy to optymalne podejście, pytam bo będzie to wykonywane przy każdym zapytaniu? Pytanie może trywialne ale nie mam z kim się skonsultować, a mam w głowie mnóstwo wątpliwości.

0

Nie wiem, czy będzie to komunikacja w ramach jakiejś lokalnej sieci, czy przez net, ilu będzie użytkowników itp, ale mam dwie uwagi.

Po pierwsze bym się nie przejmował wydajnością, chyba że planujesz ruch idący w tysiące osób na minutę.

A po drugie - poza sprawdzaniem samego tokena bym dodał jeszcze jakieś zabezpieczenie chroniące przed jego przejęciem. Myślę, że przypisanie tokena do adresu IP lub/oraz loginu powinno sprawę załatwić.

0

Słuszne uwagi, dzięki! Zacząłem to pisać i zauważyłem, że brzydko to wygląda jak każda metoda jako pierwszy parametr przyjmuje token. Szukałem jakiegoś wbudowanego mechanizmu do przesyłania tego ale nie widzę. Jedyne co to pola UserName i Password no niby można je wykorzystać do przesłania tokena ale nie wiem czy to będzie zgodnie ze sztuką (niby jest to też powiązane z autoryzacją). Znacie na to jakieś lepsze rozwiązanie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0