Почему ваш JWT в ASP.NET Core возвращает 401 даже с действительным токеном
Действительный токен, который всё равно даёт 401, почти всегда означает, что обработчик bearer не запускался или запустился под не той схемой. Проверьте порядок middleware, схему по умолчанию, имя схемы и дошёл ли вообще заголовок до обработчика.