Я пытаюсь внедрить Google OAuth с пакетом реагировать-гугл-логин, но после прочтения документации обнаружил, что у меня возникли вопросы:
ReactDOM.render(
<GoogleLogin
clientId = "658977310896-knrl3gka66fldh83dao2rhgbblmd4un9.apps.googleusercontent.com"
buttonText = "Login"
onSuccess = {responseGoogle}
onFailure = {responseGoogle}
/>,
document.getElementById('googleButton')
);
В этом примере, представленном в инструкциях по использованию, clientId разработчика жестко зашит в компонент. Я совершенно уверен, что этого никогда не должно произойти, поэтому я хотел получить некоторые разъяснения относительно того, как на самом деле лучше всего хранить учетные данные для аутентификации сторонних производителей.
(Не уверен, что это уместно, но я хотел добавить, что буду использовать бэкэнд rails. Мне кажется, я видел в прошлом реализацию, в которой сначала делается запрос к бэкэнду, где фактический запрос oauth затем отправляются с использованием учетных данных, которые были сохранены как переменные среды на сервере, чтобы они никогда не проходили через браузер? Если это имеет смысл?)
Любые советы или разъяснения по этому вопросу будут высоко оценены. Заранее спасибо!
Я согласен с тем, что библиотека является клиентской, и поэтому clientId не может быть защищен. Но это также точно мое замешательство. Зачем существует этот пакет, если вы не можете защитить свои учетные данные? Я ошибаюсь, думая, что мне это нужно в первую очередь?
Зависит от вашего варианта использования... Слишком широко, чтобы вдаваться в подробности...





Вы говорите о 2 разных вещах. Библиотека, которую вы используете, предназначена для oauth на стороне клиента... Вы можете настроить
.env.и сохранить там свой идентификатор клиента, но, в конечном счете, что-нибудь на стороне клиента - нет никакого способа действительно скрыть (сказав это, можно использовать Это...)