Я пытался выяснить, можно ли представить два разных экрана входа в систему на основе роли авторизации. Требование простое. У меня есть две роли: "admin" и "public". Во всех методах действий моих приложений для этих двух ролей отмечены атрибуты «Авторизовать».
Теперь в требованиях моего приложения указаны разные экраны входа для «admin» и «public». Экран входа «admin» защищен дополнительным защитным кодом, который не требуется для экрана входа «public». Я искал какой-то способ узнать, кто пытается войти в систему, на основе вызванного метода Action. Если вызываемый метод действия украшен Authorize[Roles="admin"]
, то я бы представил экран входа администратора, тогда как если вызываемый метод действия применяется Authorize[Roles="public"]
, тогда мне нужно представить общедоступный экран входа.
Если экран входа вызывается напрямую, то по умолчанию будет представлен общедоступный экран входа.
Это может показаться немного странным, но это сценарий, для которого я пытаюсь найти решение.