Вам придется разделить аутентификацию на две части:
Аутентификация с помощью Vuejs. Это не зависит от Фастапи. Единственной общей вещью будет тот факт, что при входе в систему, vue будет аутентифицироваться в fastapi (как человек посередине, который передает информацию). Vue затем кеширует полученный токен JWT (или любой полученный токен) и сохраняет его в сеансе (чтобы в случае перезагрузки страницы пользователю не приходилось снова входить в систему). Как только пользователь выйдет из системы, удалите токен из приложения vue.
Аутентификация через FastAPI. Здесь вы просто проходите аутентификацию с использованием имени пользователя и пароля, получаете токен JWT в качестве ответа (или любой другой токен, который вы хотите) и используете этот токен для следующих запросов.
По существу, один раз vue получает пароль пользователя, он аутентифицируется в API fastapi, получает токен и сохраняет его где-то (это зависит от того, как вы его реализуете и от vuejs, я не использовал, поэтому ничего не могу сказать).
При подключении к фону эквивалентом формы. net будет форма входа vue, но я рекомендую вам сначала следовать некоторым учебникам по vuejs, чтобы сначала понять, как она работает, и иметь правильное понимание того, как это работает, и каковы некоторые возможности для достижения чего-либо.