e-dzienik aplikacja w asp.net

0

Witam,
mam zamiar stworzyć coś w rodzaju e-dzienika. Ponieważ dopiero zaczynam swoją przygodę z asp.net chciałbym się dowiedzieć jak wygląda sprawa autoryzacji użytkowników. W swoim projekcie uwzględniłem dwie grupy użytkowników admin(nauczyciel) i uczniowie. Chcę zrobić tylko możliwość logowania bez rejestracji. Jak się do tego zabrać? (wcześniej pisałem tylko aplikacje deskopowe bez autoryzacji).

2

Nie piszę w .net więc ciężko mi konkretnie odpowiedzieć ale tak uogólniając to w bazie przechowujesz Użytkowników. Do tego tworzysz tabele "Role" która będzie przechowywać konkretne role w systemie(wystarczy przechowywać ich nazwy), np. Role_Administrator, Role_Teacher, Role_student, Role_User etc.
Potem tworzysz tabelę z 2 kluczami obcymi (user_id, role_id) która będzie przechowywała informacje o tym jaki user jakie role posiada.

Nie znam frameworków do asp.net aczkolwiek coś takiego w Javie robi się za pomocą Spring (a dokładnie Spring Security). Myślę że kwestia znalezienia podobnego frameworka.

Co do idei:

W swoim projekcie uwzględniłem dwie grupy użytkowników admin(nauczyciel) i uczniowie.

To mega słabe to podejście ponieważ już na starcie komplikujesz sobie możliwość rozbudowy systemu. A co jeśli zrobisz tą funkcjonalność i będziesz chciał dodać np użytkownika z uprawnieniami który może zarządzać nauczycielami w szkole? Jakie nadasz mu uprawnienia skoro Adminami są nauczyciele ?
Administratorem strony możesz być tylko ty... Dzięki temu możesz sobie np w przyszłości dodać jakiś tam panel administratora który np wyświetla Ci informacje ilu uczniów, nauczycieli itp korzysta z Twojego dziennika.
Administratorem Szkoły (np. ROLE_SCHOOLADMINISTRATOR) może być np osoba która zakłada profil szkoły.
Nauczyciel niech ma po prostu uprawnienia nauczyciela a uczniowie uprawnienia uczniów. Nie musisz teraz implementować administratora szkoły, admina, moderatorów, rodziców uczniów itp... Możesz na razie zrobić sobie tylko Nauczycieli i Uczniów ale przypisz im uprawnienia skierowane do nich a nie admina.

2

Podczas tworzenia aplikacji w asp wybierasz z kreatora Authentication na wartość Invidual User Account. Dzięki temu visual studio wygeneruje Ci prostą implementacje logowania i rejestracji użytkowników. Następnie musisz przypisać role użytkownikom, całość opisana jest w tym linku. Gdy chcesz, aby do pewnych elementów strony mieli dostęp określeni użytkownicy używasz [Authorize(Roles = "Typ")] przed metodą. Jeżeli wolisz oglądać to zostawiam filmik na youtube w którym krok po kroku autor wprowadza do zagadnienia autoryzacji i ról użytkowników.

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