Я собираюсь присоединиться к тому, что должно быть десятками тысяч других разработчиков, добавив логин OAuth (логин Facebook) к существующему сайту ASP.NET, который в настоящее время использует аутентификацию по формам.
К сожалению, мы не можем предоставить полный доступ к сайту пользователям, которые использовали OAuth для аутентификации.
Я хочу, чтобы два уровня доступа были доступны пользователям, в зависимости от того, как они аутентифицировались. Если они вошли в систему через OAuth, то у них будет ограниченный доступ, если они прошли проверку подлинности с помощью форм, то у них будет полный доступ.
Существует ли какая-либо встроенная система в ASP.NET Membership, которая допускает несколько уровней аутентификации?
Если нет, может ли кто-нибудь предоставить какие-либо советы или ссылки на советы о том, как это реализовать?
Я думаю, что на самом базовом уровне все, что нужно, - это глобально доступный bool, который устанавливается для каждого входа в систему и обозначает, вошел ли пользователь в OAuth или нет. Если бы я мог установить User.Identity.AuthenticationType
при входе в систему, это, вероятно, помогло бы. Я, конечно, хотел бы избежать боли создания целого нового провайдера нестандартного членства.