Авторизация и обновление текущих требований MVC 5

У меня есть 2 вопроса по поводу претензий:

1) В.Net 4.5 и MVC 5, как Microsoft реализует авторизацию, когда вы устанавливаете на контроллере AuthorizeAttirubte, проверяет ли она базу данных, чтобы получить роль пользователя? Или это использует претензии?

Я где-то читал, что Microsoft каждый раз использует базу данных для проверки роли, и они посоветовали написать новый AuthorizeAttribute для реализации проверки подлинности на основе утверждений.

Это статья, о которой я говорю: http://kevin-junghans.blogspot.be/2013/10/improving-performance-of.html

Или он устарел и теперь Microsoft использует роли в претензиях?

2) Второй вопрос об обновлении претензий:

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

Было бы правильно как-то обновить претензию....? А как это сделать?

1 ответ

Решение
  1. Атрибут authorize использует такие вещи, как User.Identity, как IsAuthenticated/IsUserInRole, который косвенно рассматривает утверждения. Доступ к базе данных основан на обновлении файла cookie в отличие от проверки авторизации, то есть ее ортогональности.
  2. Претензии обновляются при создании файла cookie для входа (попадание в базу данных). Чтобы принудительно обновить претензии, вы можете просто уйти в отставку пользователя, который принудительно обновил.
Другие вопросы по тегам