Это немного основано на мнениях, однако, большая часть этого находится в документах и рекомендуется хорошей практикой, поэтому я постараюсь ответить.
Я настоятельно рекомендую перейти с @Guard
, Nest JS использует декораторы практически для всего. Это точно, но как-то основано на Spring, который используется во всем мире. Декораторы делают код довольно многословным, поскольку вы можете ясно видеть, что применимо к классу или конкретному методу.
У меня никогда не было проблем, например с JWT Guards in Nest JS.
Взгляните сюда: https://docs.nestjs.com/techniques/authentication#implementing -passport-jwt
Для меня это работает как шарм.
В любом случае - вы также можете попробовать использовать ваш собственный Guard для JWT, например, https://github.com/auth0/node-jwks-rsa. Должно быть легче отлаживать, чем наверняка, однако встроенная защита JWT, насколько я помню, дает хорошие журналы.
Я бы предложил использовать Middleware для вещей, которые взаимодействуют с КАЖДЫМ И КАЖДЫМ ответом или запросом и охранники для всех аутентичных вещей.