2015-11-02 4 views

ответ

3

Мой предпочтительный подход - использовать отдельный экземпляр для обработки заданий cron. Я держу этот экземпляр вне стека публикаций, поэтому он не получает запросы извне. По этой причине CSRF не является угрозой для этого экземпляра. В «экземпляре cron» вы можете безопасно установить переменную среды PLONE_CSRF_DISABLED переменной true, не беспокоясь о CSRF.

в виде Zeo билдаута это приводит к чему-то вроде:

[instance-cron] 
recipe = collective.recipe.zope2cluster 
<= instance-settings 
environment-vars += 
    PLONE_CSRF_DISABLED true 
+1

В зависимости от того, сколько cronjobs вы хотите запустить, как часто, вы не хотите, даже нужно, чтобы сохранить этот экземпляр все время, вы могли бы начать это в кроне. Это не спасет вас от внешней атаки, но это может в значительной степени избавить вас от случайного выполнения экспериментов в этом случае, забыв, что он записывается в prod. –

3

Возможно, вы периодически вызываете просмотр, чтобы вы могли читать, как выполнять запись на чтение из документации plone.protect. Раздел, который вы ищете, вероятно, «Marking the entire request as safe».

Таким образом, вы можете пометить запрос как «безопасный» для выполнения записи.

 Смежные вопросы

  • Нет связанных вопросов^_^