Wpis z mikrobloga

Mireczki spod znaku c# oraz ogólnie programowanie. Pytanie co do loginów użytkowników. Klepię projekt dla studentów za hajsiwo, który #!$%@?ę raz dwa, ale chodzi tylko o kwestię logowania się do programu różnych użytkowników i chcę to zrobić tip top, żeby studentka która zobaczy to rozwiązanie, aż będzie chciała mi #!$%@?ć loda, bo będzie tak zajebiste ( ͡° ͜ʖ ͡°)

Mam konta szef, księgowa, sprzedawca. Szef może wszystko, księgowa wystawia faktury, ma widok na zestawienia kosztów sprzedanych rzeczy w ciągu miesiąca, potwierdza płatności itp. itd. sprzedawca natomiast może mieć podgląd zamówień i tak samo jak księgowa potwiedzać płatności (zresztą to #!$%@?, bo jak on potwierdzi to musi kooperować z księgową) itd.

Jak zrobić weryfikację kont różnych poziomów i w samej aplikacji?
Zakładam tabele "tuSaKontaoRoznychPrzywilejachSzefKsiegowaPracownik" i daje im po cyferkach uprawnienia od 1 do 3 i sprawdzam potem w kodzie od 1 do 3 poziom ich uprawnień, czy zakładam tabele "nazwacobyławyżej" i za pomocą selecta od 1 do 3 sprawdzam jaki typ to jest konta i poprzez metody w ifie tworzę implementację klasy osoby zalogowanej? Czy tworzę po prostu klasy i interfejsy dla każdego z rodzaju kont (w Interfejsie zamieszczam listę metod, które potem będą dziedziczone przez klasy różnych rodzajów kont) i w zależności od utworzenia klasy ktora się zalogowała mają one dostęp do różnych metod.
Jak to ugryźć? Może Microsoft posiada jakieś gotowce- komponenty dla logowań kont? Przy zakładaniu projektu MVC mam takie rozwiązanie, aby dokonać "change authentication". Może to do czegoś się przyda? Screen poniżej. Model MVC ogarniam, ale nie na poziomie różnych użytkowników i chciałbym wiedzieć jakie rozwiązania się stosuje.
#csharp #programowanie
Pobierz KorelacjaProkrastynacji - Mireczki spod znaku c# oraz ogólnie programowanie. Pytanie ...
źródło: comment_hkLb0tcNW5SdkqF30zIVk3rN6r5q6rGl.jpg
  • 1
@KorelacjaProkrastynacji: Generalnie poczytaj o identity. Microsoft daje wszystko z pudełka. Musisz zaimplementować role do identity. Dużo poradników znajdziesz na necie. Sam dostęp użytkowników możesz określać na poziomie kontrolerów lub akcji za pomocą atrybutu [Authorize(Roles = "Szef,Ksiegowa,Sprzedawaca")] lub if User.IsInRole() w samym kodzie.