Я читал об аутентификации и авторизации в. net core 3.1 и запутался.
В основном у меня есть приложение. net core MVC. В razor есть представление входа в систему, которое отправляет HTTP-запрос на сервер веб-API и получает токен, если учетные данные верны. Затем этот токен-носитель используется для получения данных из API. Учетные данные пользователя необходимы только через представление входа в систему, чтобы получить токен-носитель, а затем этот токен используется для выполнения http-запроса для получения и публикации данных.
Это ново для меня, и я не знаю, что это такое. лучший способ сделать это.
Можно ли использовать токен для аутентификации и авторизации доступа к контроллерам, что-то вроде функций и идентичности signmanager?
Я видел способы сохранения пользователя и пароль, но не уверен, может ли он работать с токенами, учитывая, что мы используем логин только для получения токена на предъявителя. Это действительно единственный способ узнать, что пользователь вошел в систему.
Я прошу не образец проекта как таковой, а кого-то, кто мог бы указать мне в правильном направлении. Очень признателен.
Изменить: я забыл упомянуть, что веб-сайт будет размещен в Azure.
Спасибо!
ОБНОВЛЕНИЕ :
Надеюсь, это поможет. Пытаюсь быть более конкретным c.
У меня есть веб-клиент asp. net core mvc, который вызывает сервер API для входа в систему. Имя пользователя, пароль и grant_type отправляются на Сервер API использует httpclient, и это отправляет json обратно с токеном-носителем, истекшим сроком действия и другими полями.
Я хотел бы настроить аутентификацию и авторизацию на основе возможности успешного входа в систему, то есть вызова сервер API с URL + / токеном со страницы входа и правильными учетными данными. Оставьте этот токен доступным для контроллеров, чтобы они могли выполнять другие вызовы API для получения и отправки данных на сервер API. Таким образом, приложение знает, что пользователь вошел в систему на веб-сайте, и я могу использовать метод [Authorize} в контроллерах для их защиты, а также для выхода пользователя из системы, удалив токен с клиента веб-сайта.
клиент пока не имеет доступа к базе данных, он просто вызывает API-сервер. Это немного похоже на мобильное приложение, только использует вызовы API.
Надеюсь, теперь это имеет смысл.