Добрый день, сегодня посмотрел лекцию о middlaware.Я немного разрабатываю на nest.js стараясь сохранить многослойность архитектуры.Обычно я использую три уровня.Контроллеры-сервисы-кастомные репозитории.Зачастую возникает вопрос,которым я долго мучаю себя.В каком именно месте проверять,что ресурс соответствует данному юзеру(при этом мне нужно сделать запрос в бд). Очевидно,что уровень контроллеров, репозиториев не очень подходит.Остается только сервис, guard или validation pipe,что примено одно и тоже, потому что выполняется до контроллера(безусловно смысловая нагрузка разная и сначала срабатывает гуард).Так вот.В гуарде до контроллера делать запрос в бд,мне кажется очень сильным протеканием абстракций,а с другой стороны сервис не должен отвечать за логику доступа к ресурсу.Подскажите,где я ошибаюсь.