Как работает одноразовый номер WordPress?

Я добавляю одноразовый номер в форму, и он отлично работает, но у меня есть несколько вопросов.

Если форму используют 10000 пользователей одновременно, nonce будет разным для каждого из них?

Нонс генерируется WordPress каждые 12 часов, но какие факторы влияют на его жизнь и изменяют ее?

Если я закрою браузер, у меня будет тот же одноразовый номер, когда я снова открою браузер?

Если я выключаю компьютер и перезагружаюсь, у меня будет тот же одноразовый номер?

Если я подключусь к Интернету с другого IP-адреса, у меня будет тот же одноразовый номер?

Если я сменю браузер, у меня будет тот же одноразовый номер?

Если я удалю историю просмотра и файлы cookie, у меня будет тот же одноразовый номер?


person MasterRed    schedule 21.07.2015    source источник
comment
nonce - число, использованное один раз. если его используют несколько человек, то это уже не будет одноразовым номером.   -  person Marc B    schedule 31.07.2015
comment
это не настоящий ответ на эту тему, но не так далеко: хранится в пользовательских сеансах. Это уникальные токены, хранящиеся в сеансе пользователя. ... Если пользователь выйдет из WordPress, одноразовые номера больше не будут действительны.... (скопировано из stackoverflow.com/questions/31535895/ )   -  person SL5net    schedule 28.02.2019


Ответы (1)


Функция WP nonce создает криптографический токен, привязанный к конкретному действию, пользователю и сеансу пользователя. Это означает, что у каждого пользователя будет свой токен даже для 10000 пользователей.

Нонс создается WordPress каждые 12 часов, но какие факторы влияют на его жизнь и изменяют ее?

Он создается с помощью функции wp_nonce_tick(), которая проходит через фильтр nonce_life и может быть изменена с помощью этого фильтра. документы wp_nonce_tick

Если я закрою браузер, у меня будет тот же одноразовый номер, когда я снова открою браузер?

Если я выключу компьютер и перезагружу, у меня будет тот же нонс?

Если я сменю браузер, у меня будет тот же одноразовый номер?

Если вы вошли в систему и ваш сеанс такой же, у вас будет тот же токен одноразового номера.

Если я подключусь к Интернету с другого IP-адреса, у меня будет тот же одноразовый номер?

Нет, ваш сеанс будет другим, и будет сгенерирован новый токен.

Если я удалю историю посещенных страниц и файлы cookie, у меня будет тот же одноразовый номер?

Нет, ваш сеанс будет изменен, так как сеанс хранится в файле cookie браузера.

Вы не должны полагаться только на проверку одноразового номера. Вам также необходимо проверить функцию current_user_can(), поскольку она описана в документации.

person Artem    schedule 11.05.2019