У меня есть приложение реагирования, которое должно быть аутентифицировано OAuth для службы (похожей на логин Google или Facebook) для выполнения вызовов API. В настоящее время я использую пакет npm, и он принимает в качестве параметров мои учетные данные клиента и обрабатывает процесс аутентификации для меня.
Но мои учетные данные присутствуют на стороне клиента и могут быть получены из инспектор браузера (я видел другие варианты, такие как сохранение учетных данных в файле .env
и импорт оттуда, но это также происходит на стороне клиента).
Я хочу переместить эту аутентификацию на сервер со стороны, и я изо всех сил пытаюсь придумать рабочий процесс. Я взглянул на соответствующий пост , в котором упоминалась эта статья. Но здесь говорится, что
Клиент инициирует поток, направляя агента пользователя владельца ресурса в конечную точку авторизации. Клиент включает в себя свой идентификатор клиента, запрошенную область действия, локальное состояние и URI перенаправления, на который сервер авторизации отправит агент пользователя обратно, как только доступ будет предоставлен (или запрещен).
Если я понимаю это правильно, мне тоже кажется, что мне нужно использовать свои учетные данные на стороне клиента.
Я попытался придумать подход для реализации этого, и он выглядит так:
Я определяю маршрут /login
для моего внутреннего API, который возвращает мои учетные данные, хранящиеся на сервере.
Когда компонент npm (о котором я упоминал ранее в посте) смонтирован, я делаю вызов извлечения в методе componentDidMount()
, который получает мне учетные данные и устанавливает учетные данные в компоненте npm.
После этого я могу войти в систему как я делал раньше.
Это правильный подход? Я не смог найти ни одного ресурса, упоминающего что-то подобное. Если нет, пожалуйста, укажите мне правильный подход.