ASP.NET logowanie i identyfikacja

0

Cześć,
Pisze aplikację, która ma być ostatecznie stroną internetową. Nie mam z tym jednak zbyt wiele doświadczenia, więc postanowiłem, że:

  • Cała logika napisana będzie w dll-kach.
  • Dzięki temu zachowam pewien sposób przenośności, gdyż logika w dll-kach będzie mogła być przenoszona na każdą platformę .NET
  • Łatwiej rozdzielę logikę od GUI itd.

Napotkałem jednak pewien problem. A właściwie nie jestem pewien, czy przypadkiem nie zrobię sobie kuku.
Otóż podczas logowania do bazy danych wykonuję odpowiednie sprawdzenie, czy login i hasło się zgadzają. Wszystko to w dll-ce. Następnie jeśli dane są poprawne loguję użytkownika w ten sposób, że w dll-ce w jednej z klas zapisuję informację o zalogowanym użytkowniku.
W rezultacie proces logowania nie robi właściwie nic w samej architekturze ASP.NET. Ze strony tylko wołam metody będące w dll-kach.

I zastanawiam się, czy przypadkiem nie będzie sytuacji, gdy

  • Pan Zdzisław zalogował się na konto "Zdzisław".
  • Pan Janek wszedł na stronę i... automatycznie jest zalogowany jako Pan Zdzisław.

Czy taka sytuacja przy takim podejściu nie wystąpi?

Pozdrawiam.

0

Ja nie chcę używam MVC. Wiem o nim, ale z powodów technologicznych odpada.
Pytanie moje było inne i prosiłbym o odpowiedź na nie.

1

Użyj wbudowanych mechanizmów i nie przechowuj kontekstu użytkownika w swoich dllkach, trzymaj tam tylko logikę, którą wywołujesz z aplikacji.

0

Ok, ale dlaczego? Mój sposób też zadziała i trzyma sesje użytkownika. Spodziewam się więc, ze problem który opisałem w pierwszym poście nie wystąpi, gdyby tak było strona by nie działała w ogóle dla nikogo tylko dla jednego pierwszego użytkownika z powodu blokady dll-ki. Takie coś nie wystąpi, więc nie spodziewam się problemu.

Jedynie problem rozwiązałem niekonwencjonalnie, ale... jaki masz argument za tym by zrobić tak jak napisałeś? Potrzebuję faktów i dowodów, bo nie ma sensu bym zmieniał coś co działa całkiem nieźle.

2

Standardowe rozwiązanie:

  1. Działa dla wielu użytkowników.
  2. Integruje się z platformą.
  3. Skaluje się.
  4. Jest bezpieczne (o ile nie schrzanisz totalnie użycia).
  5. Nie spowoduje zawału serca u osoby, która je zobaczy w przyszłości.
  6. Nie jest WTFem.

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