Удаление контента из базы данных, меры безопасности

ОБНОВЛЕНИЕ:

Я добавил защиту CSRF, как сказал мне Бердир, с помощью ссылки ниже, чтобы мое приложение снова заработало . Однако ... Я не совсем уверен, что я сделал прямо сейчас: D Как это сделает мое приложение более безопасным? Меня особенно беспокоит тот факт, что теперь я получаю значение cookie в моем коде ajax, потому что я должен передать его с помощью моего вызова ajax ... иначе это просто не сработает. Разве это не дает важной информации о файле cookie? Или я просто параноик. Спасибо!

http://aymsystems.com/ajax-csrf-protection-codeigniter-20

// старый . Я не совсем уверен, что я сделал прямо сейчас: D Как это сделает мое приложение более безопасным? Меня особенно беспокоит тот факт, что я теперь получаю значение cookie в моем коде ajax, потому что я должен передать его с помощью моего вызова ajax ... иначе это просто не сработает. Разве это не дает важной информации о файле cookie? Или я просто параноик. Спасибо!

http://aymsystems.com/ajax-csrf-protection-codeigniter-20

// старый . Я не совсем уверен, что я сделал прямо сейчас: D Как это сделает мое приложение более безопасным? Меня особенно беспокоит тот факт, что теперь я получаю значение cookie в моем коде ajax, потому что я должен передать его с помощью моего вызова ajax ... иначе это просто не сработает. Разве это не дает важной информации о файле cookie? Или я просто параноик. Спасибо!

http://aymsystems.com/ajax-csrf-protection-codeigniter-20

// старый Привет.

В этом веб-приложении, которое я создаю, у меня есть функция, позволяющая добавлять «советы и рекомендации» по определенным предметам. Эти страницы могут быть добавлены только учетными записями с ролью администратора. Однако мне также нужна возможность удалить эти страницы. (Всегда под рукой, верно). Поскольку я использую CodeIgniter, я думал просто создать функцию контроллера, которая принимает идентификатор и передает этот идентификатор в модель, где страница, соответствующая этому идентификатору, будет удалена из базы данных.

Просто чтобы прояснить это :

Контроллер:

public function del_content($id)
{
    $this->content_model->del_content($id)
}

Модель:

public function del_content($id)
{
    // database code which I can't be bothered to look up now
    // something like $this->db->where(), $this->db->delete()
}

Это все действительно просто, но я боюсь, что это может быть слишком просто. Мне это не кажется таким уж безопасным, не так ли? Поскольку вы могли бы вызвать функцию из адресной строки URL-адреса в своем браузере, вы могли бы удалить через нее всю таблицу содержимого. (Так как для элемента с идентификатором 3 вы бы сделали http: // mywebsite / controller / del_content / 3 ). Конечно, только учетные записи администраторов будут иметь доступ к этой функции, но все же ...

Я никогда раньше не программировал ничего подобного, и поэтому мне никогда не приходилось думать о мерах безопасности, которые я должен предпринять в этом случае. Будет ли кто-нибудь достаточно любезен, чтобы дать мне некоторые вещи, за которыми я должен следить, и, возможно, некоторые идеи, предложения о том, как сделать это более безопасным?

Большое спасибо!

6
задан cabaret 9 May 2011 в 10:20
поделиться