|
0 / 0 / 0
Регистрация: 24.02.2015
Сообщений: 16
|
||||||||||||||||
Безопасное обновление записи в БД26.08.2019, 18:36. Показов 672. Ответов 9
Всем привет, возможно, для кого-то мой вопрос покажется легким, но все-таки я хотел бы узнать варианты решения.
Предположим, у меня есть некая БД, с некой таблицей. Так же существует страница, позволяющая обновлять записи в этой таблице, что-то вроде
Если использовать типичное решение из интернетов, а именно сделать так:
0
|
||||||||||||||||
| 26.08.2019, 18:36 | |
|
Ответы с готовыми решениями:
9
Безопасное обновление Lookup Безопасное обновление конфигурации
|
|
39 / 22 / 10
Регистрация: 31.05.2017
Сообщений: 152
|
|
| 26.08.2019, 19:50 | |
|
nubone, Возможно подход не совсем правильный, но как по мне подобные данные нужно держать строго на сервере, клиенту они и даром не нужны. Как вариант - записывать идентефикатор этой записи в сессию и потом витягивать этот идентефикатор через эту же сессию. Конкретно к вашему случаю стоит на сервер добавить проверку, дабы чужие пользователи не могли изменять данные других пользователей. (Для новостей то же самое можно сделать, например редактировать новость может либо пользователь, который создал её, либо администраторы, всем остальным выдавать 403)
0
|
|
|
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
|
|||
| 26.08.2019, 20:02 | |||
|
а вот это все, что приходит от пользователя, нужно проверять
1
|
|||
|
0 / 0 / 0
Регистрация: 24.02.2015
Сообщений: 16
|
|
| 26.08.2019, 20:52 [ТС] | |
|
Это нерабочий пример, просто демонстрация, конечно, лучше записывать все в БД через плейсхолдеры, а не просто извлекая из массива POST. Тут неважно как я добавляю информацию, важно то, как лучше всего передавать идентификатор.
Да, я пробовал изменить его через Инспектор кода и вышло удачно!
0
|
|
|
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
|
|
| 26.08.2019, 21:19 | |
|
0
|
|
|
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
|
|
| 26.08.2019, 21:46 | |
|
1) Можно использовать uuid, его сложнее подобрать чем простое число.
2) Проверять права на сервере. У вас же должен быть какой-то признак означающий что юзер может совершить данное действие. Тут может быть много разных вариантов реализации, все зависит от бизнес логики.
0
|
|
|
0 / 0 / 0
Регистрация: 24.02.2015
Сообщений: 16
|
|
| 26.08.2019, 22:03 [ТС] | |
|
Неужели, кроме как разграничением прав не решить эту задачу? я не против разграничения, просто кажется, что должно быть какое-то решение. Насчет uuid хорошая идея, я тоже подумал о том, чтобы делать идентификаторы неоднозначными, uuid здесь отлично подойдет.
0
|
|
|
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
|
||
| 26.08.2019, 22:40 | ||
|
Как вариант еще для каждого клиента развернуть свое приложение со своей БД. Вполне рабочая схема когда клиентов мало.
0
|
||
|
377 / 319 / 73
Регистрация: 15.09.2017
Сообщений: 1,436
|
|||
| 26.08.2019, 23:24 | |||
![]() Также, естественно, нужна защита от "разрушения" текста запроса поступающими значениями (экранирование, подготовленные запросы и т.п.). Еще про CSRF-токены почитайте (они обеспечивают дополнительную защиту от соответствующего вида атак). Добавлено через 8 минут
0
|
|||
|
0 / 0 / 0
Регистрация: 24.02.2015
Сообщений: 16
|
|
| 26.08.2019, 23:33 [ТС] | |
|
Спасибо всем, кто отписался)
0
|
|
| 26.08.2019, 23:33 | |
|
Помогаю со студенческими работами здесь
10
Связь между таблицами.Обновление одной записи при обновлении другой записи Обновление записи
обновление записи Обновление записи в БД Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|