Утверждения и авторизация на основе политик в ASP.NET Core

Завершено

В предыдущем уроке вы добавили функцию QR-кода для включения многофакторной проверки подлинности. В этом уроке вы узнаете об авторизации на основе утверждений и политик.

Авторизация и проверка подлинности

Все, что вы узнали о удостоверении, относится к проверке подлинности. Проверка подлинности — это процесс, проверяющий, что пользователь является тем, за кого себя выдает.

Рассмотрим форму входа. При вводе имени пользователя в форме вы утверждаете, что это вы. Форма подтверждает, что вы являетесь тем, за кого вы себя выдаете, проверяя ваш пароль.

Авторизация относится к процессу, который определяет, что пользователю, прошедшему проверку подлинности, разрешено делать. Например, экран администрирования может быть доступен только для пользователей с утверждением IsAdmin=True. Так как утверждения связаны с удостоверением, авторизация не может быть выполнена без проверки подлинности.

Утверждения и авторизация на основе политик

Утверждения — это пары "имя-значение", описывающие субъект, а не то, что он может сделать! Утверждения назначаются доверенным центром и используются для применения политик авторизации.

Рассмотрим удостоверение личности, выданное государством. На этом удостоверении личности указаны ваши атрибуты. Это и есть утверждения. Заинтересованные стороны могут проверять удостоверение, источник его выдачи и его подлинность и принимать решения на основе атрибутов. Решения определяют принимаемую политику.

В качестве конкретного примера можно рассмотреть бары и закусочные. Елена хочет приобрести напиток, который могут покупать только взрослые. Бармен проверяет учетные данные Елены и утверждение о дате ее рождения. Затем он применяет политику, основанную на этой дате рождения, и Елена получает право на покупку напитка.

Сводка

В этом уроке вы узнали о различии между проверкой подлинности и авторизацией. Вы также узнали, как утверждения используются политиками для авторизации. В следующем уроке вы сможете использовать удостоверение для хранения утверждений и применения политик для условного доступа.

Проверьте свои знания

1.

Какое из следующих утверждений является истинно?