Получение информации о пользователе в промежуточном программном обеспечении и его внедрение - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть аутентификация JWT в моем .NET Core 2.2 API.Когда пользователь создает новую сущность, мне нужно получить его информацию (имя пользователя и часовой пояс, установленные в приложении) для проверки сущности.

Дело в том, что я не хочу добавлять все этов утверждениях (также есть некоторые другие свойства) моего JWT, и он должен проходить туда-сюда и поддерживать его в актуальном состоянии, когда некоторые пользовательские предпочтения меняются.Поэтому я предпочитаю указывать только идентификатор пользователя в заявках, и после получения его запроса я могу затем запросить свою базу данных / кэш / что угодно, чтобы получить его полную информацию.

Я подумал о создании промежуточного программного обеспечения, котороеобработает запрос, чтобы получить информацию о пользователе и сделать ее доступной в качестве службы (например, UserInfo), чтобы я мог получить ее в своем DbContext и использовать ее так же, как я могу сделать с HttpContext:

var ctx = this.GetService<IHttpContextAccessor>().HttpContext;

(я использую DbContextPool, поэтому я получаю такой сервис и не внедряю его).

Я не очень знаком с промежуточным ПО, нотаким образом, что мое промежуточное программное обеспечение каким-то образом сделало бы доступным UserInfo, чтобы я мог получить его в своем DbContext точно так же, как я могу сделать с HttpContext?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...