Autoryzacja oparta na oświadczeniach i zasadach w programie ASP.NET Core

Ukończone

W poprzedniej lekcji dodano funkcję kodu QR, aby umożliwić uwierzytelnianie wieloskładnikowe. W tej lekcji dowiesz się więcej o autoryzacji na podstawie oświadczeń i zasad.

Autoryzacja a uwierzytelnianie

Wszystko, co już wiesz na temat tożsamości, dotyczyło uwierzytelniania. Uwierzytelnianie to proces, w którym użytkownik jest weryfikowany jako osoba, do której się podaje.

Rozważ formularz logowania. Po wprowadzeniu nazwy użytkownika w formularzu twierdzisz, że będziesz ty. Formularz uwierzytelnia cię jako osobę, za którą się podajesz, poprzez weryfikację hasła.

Authorization odnosi się do procesu określającego, co może zrobić uwierzytelniony użytkownik. Na przykład ekran administracyjny może być dostępny tylko dla użytkowników posiadających oświadczenie IsAdmin=True. Ponieważ oświadczenia są skojarzone z tożsamością, nie może istnieć autoryzacja bez uwierzytelniania.

Twierdzenia i autoryzacja oparta na politykach

Oświadczenia to pary nazwa-wartość opisujące, co podmiot jest, nie, co może zrobić! Oświadczenia są przypisywane przez zaufany urząd i są używane do wymuszania zasad autoryzacji.

Rozważ identyfikator wystawiony przez instytucje rządowe. Identyfikator wyświetla twoje atrybuty. Są to oświadczenia. Zainteresowane strony mogą obserwować identyfikator, weryfikować jego źródło i autentyczność oraz podejmować decyzje na podstawie atrybutów. Decyzje wymuszają zasady.

Spójrz na bary i tawerny, aby uzyskać bardziej konkretny przykład. Alicja chce kupić napój dla dorosłych. Barman bada poświadczenia Alicji i sprawdza informację o jej dacie urodzenia. Następnie wymuszają zasady oparte na tej dacie urodzenia, a Alicja jest upoważniona do zakupu napoju.

Streszczenie

W tej lekcji przedstawiono różnicę między uwierzytelnianiem a autoryzacją. Przedstawiono również sposób użycia oświadczeń przez zasady do autoryzacji. W następnej jednostce możesz użyć tożsamości do przechowywania oświadczeń i wprowadzania polityk dostępu warunkowego.