Руководство для разработчиков

/
/
/
Скрыть поля формы при потенциальной опасности

Скрыть поля формы при потенциальной опасности

Предположим вы отображаете в одной из форм имена/пароли доступа к базе данных. Как обезопасить себя от CSRF?

Достаточно в описании полей, где указаны чувствительные, с точки зрения безопасности, данные, выставить параметр secured=yes. Например:

<metadata name="dbconnection" type="form">
  <form>
    <field name="url">
      <input type="text" name="url"/>
    </field>
    <field name="username">
      <input type="text" name="username" secured="yes"/>
    </field>
    <field name="password">
      <input type="text" name="password" secured="yes"/>
    </field>
  </form>
</metadata>

Таким образом, если пользователь панели случайно попадет на вредоносный сайт, с которого будет проведена CSRF атака (т.е. попытаются GET запросом получить данные формы), то панель определит что referrer откуда пришёл запрос не совпадает с её, и поля username и password будут скрыты.