Является ли сервер часов больше не рекомендуемым способом выполнения запланированных задач? Любые подсказки, как исправить проблему?Сервер часов не имеет права запрашивать больше, так как CSRF Fix/plone.protect 3
3
A
ответ
3
Мой предпочтительный подход - использовать отдельный экземпляр для обработки заданий cron. Я держу этот экземпляр вне стека публикаций, поэтому он не получает запросы извне. По этой причине CSRF не является угрозой для этого экземпляра. В «экземпляре cron» вы можете безопасно установить переменную среды PLONE_CSRF_DISABLED переменной true, не беспокоясь о CSRF.
в виде Zeo билдаута это приводит к чему-то вроде:
[instance-cron]
recipe = collective.recipe.zope2cluster
<= instance-settings
environment-vars +=
PLONE_CSRF_DISABLED true
3
Возможно, вы периодически вызываете просмотр, чтобы вы могли читать, как выполнять запись на чтение из документации plone.protect. Раздел, который вы ищете, вероятно, «Marking the entire request as safe».
Таким образом, вы можете пометить запрос как «безопасный» для выполнения записи.
В зависимости от того, сколько cronjobs вы хотите запустить, как часто, вы не хотите, даже нужно, чтобы сохранить этот экземпляр все время, вы могли бы начать это в кроне. Это не спасет вас от внешней атаки, но это может в значительной степени избавить вас от случайного выполнения экспериментов в этом случае, забыв, что он записывается в prod. –