#oauth #google-api #google-oauth
Вопрос:
Я внедряю «войдите в систему с помощью Google» или «Войдите в Google» в своем веб-приложении. API Google позволяет использовать nonce для предотвращения атак с повторным воспроизведением, но не сообщает максимальную (или минимальную) продолжительность nonce.
Глядя на: данные из этого документа: https://developers.google.com/identity/gsi/web/reference/html-reference#data-nonce
Любая помощь была бы очень кстати
Комментарии:
1. Хороший вопрос, который я задал кому-то в Google, я дам вам знать, если получу ответ.
2. Черт возьми, у вас гораздо больше связей, чем у меня, сэр. Спасибо.
3. мэм, на самом деле, мой контакт связывается с командой, которую он не знал лично.
4. @DaImTo извиняется за мое предположение
5. @DaImTo Большое спасибо, это прекрасно отвечает на мой вопрос.
Ответ №1:
Я отправил сообщение своим контактам в Google, ожидая их ответа. Первая часть этого ответа была моим собственным исследованием.
Тем не менее, я начал копаться в RFC в поисках OAuth, и единственное упоминание, которое я нашел стоящим, было бы следующим. (Мой опыт работы с командой Google Oauth говорит о том, что им нравится следовать рекомендациям RFC, поскольку они являются общепринятым отраслевым стандартом.)
15.5.2. Реализация Nonce Отмечает, что значение параметра nonce должно включать состояние за сеанс и быть недоступным для злоумышленников. Одним из способов достижения этой цели для клиентов веб-сервера является хранение криптографически случайного значения в файле cookie сеанса HttpOnly и использование криптографического хэша значения в качестве параметра nonce. В этом случае значение nonce в возвращенном маркере идентификатора сравнивается с хэшем файла cookie сеанса для обнаружения воспроизведения маркера идентификатора третьими лицами. Связанный метод, применимый к клиентам JavaScript, заключается в хранении криптографически случайного значения в локальном хранилище HTML5 и использовании криптографического хэша этого значения.
Тот факт, что они предлагают хранить его в файле cookie сеанса, приведет к тому, что максимальный предел будет, по крайней мере, максимальным размером файла cookie сеанса, что даст нам что-то подобное.
Однако я, кажется, припоминаю кое-что, что позволило вам указать значение файла cookie в нескольких файлах cookie. То, что это снова приведет меня к вашему предположению, которое, вероятно, будет ограничением, применяемым каждым сервером OAuth.
Я думаю, нам все еще нужно дождаться ответа от Google.
перефразированный ответ от Google
Google явно не ограничивает размер nonce. Идея состояла бы в том, чтобы
ограничить его максимальным размером JWT поддержки. Однако это может зависеть от браузера , устройств и сетевой инфраструктуры.
Они также обновили документацию, найденную здесь, чтобы отразить это.