Ну так у меня не было той дополнительной информации, что ты сейчас выдал. То, что я написал - по результатам БЕГЛОГО осмотра сайта, его структуры и его ЗАЯВЛЕННЫХ на нём самом ТТХ.
Там workflow тот еще. Даже с точки зрения владельца объявления. Ой, мне поправить, ой нет, я платно не готов, давайте я изменю так, чтобы бесплатно проходило, и т.п.
В итоге у владельца в личном кабинете ссылки на штук пять-восемь (лень считать, сколько именно) списков вида "объявления, готовые к публикации", "объявления, которые требуется оплатить", "объявления, по которым требуется уточнение".
Это не меняет сути нарисованной мной схемы. Усложняет генератор задания от пользователя в очередь - да. Требует выделения пользователю "песочницы" доступных только ему и root данных со сложной структурой обработки оных - да. Про демона и про висящие в памяти процесы юзеров (опять ты рисуешь этот ужас своих каких-то личных снов) - нет, ты бредишь.
НЕ требует такая постановка задачи обязательного перехода к парадигме "код, исполняемый для действий пользователя с информацией в личном кабинете пользователя, следует исполнять с правами root и с разрешением править всю базу, и только отсутствие ошибок и тщательное программирование каждой ветки защищает от пиздеца", в рамках которой ты приступил к работе ИЗНАЧАЛЬНО. :)
То есть - в "моей" схеме от дыр класса "пользователь сумел править ему недозволенное" защищает сама логика "пользователь не запускает кода, которому что-то позволено лишнее".
А в "твоей" схеме - "всё работает от рута, и малейшая неаккуратность в коде - поле для эксплойта, в какой бы части кода эта неаккуратность ни располагалась".
Подчеркну - да, всегда есть тонкости хотя бы с той же оплатой, подтверждение которой наверняка может приходить с трёх, а то и более сторон, а задержки в обработке заданий очереди критичны. Это усложнит и обработчик заданий в очереди.
То есть сложность распределена по разному.
Тебе проще "ни за какие деньги" не строить песочницы, а работать "чтоб всегда под рутом" - верю. Это как раз универсальная парадигма современного мира "всем написанным идиотами пользовательским программам в винде зачем-то вдруг требуются права администратора", и она привычна и всосана со спермой Билла Гейтса всем пользовательским населением сети. :)
И так, "под рутом", творить ВСЕМ проще, быстрее, спокойнее. Хуяк - и в продакшн.
И потому получается то, о чём я написал в посте. Массово.
no subject
Date: 2016-Feb-22, Monday 09:13 (UTC)Ну так у меня не было той дополнительной информации, что ты сейчас выдал. То, что я написал - по результатам БЕГЛОГО осмотра сайта, его структуры и его ЗАЯВЛЕННЫХ на нём самом ТТХ.
Там workflow тот еще. Даже с точки зрения владельца объявления. Ой, мне поправить, ой нет, я платно не готов, давайте я изменю так, чтобы бесплатно проходило, и т.п.
В итоге у владельца в личном кабинете ссылки на штук пять-восемь (лень считать, сколько именно) списков вида "объявления, готовые к публикации", "объявления, которые требуется оплатить", "объявления, по которым требуется уточнение".
Это не меняет сути нарисованной мной схемы.
Усложняет генератор задания от пользователя в очередь - да.
Требует выделения пользователю "песочницы" доступных только ему и root данных со сложной структурой обработки оных - да. Про демона и про висящие в памяти процесы юзеров (опять ты рисуешь этот ужас своих каких-то личных снов) - нет, ты бредишь.
НЕ требует такая постановка задачи обязательного перехода к парадигме "код, исполняемый для действий пользователя с информацией в личном кабинете пользователя, следует исполнять с правами root и с разрешением править всю базу, и только отсутствие ошибок и тщательное программирование каждой ветки защищает от пиздеца", в рамках которой ты приступил к работе ИЗНАЧАЛЬНО. :)
То есть - в "моей" схеме от дыр класса "пользователь сумел править ему недозволенное" защищает сама логика "пользователь не запускает кода, которому что-то позволено лишнее".
А в "твоей" схеме - "всё работает от рута, и малейшая неаккуратность в коде - поле для эксплойта, в какой бы части кода эта неаккуратность ни располагалась".
Подчеркну - да, всегда есть тонкости хотя бы с той же оплатой, подтверждение которой наверняка может приходить с трёх, а то и более сторон, а задержки в обработке заданий очереди критичны. Это усложнит и обработчик заданий в очереди.
То есть сложность распределена по разному.
Тебе проще "ни за какие деньги" не строить песочницы, а работать "чтоб всегда под рутом" - верю. Это как раз универсальная парадигма современного мира "всем написанным идиотами пользовательским программам в винде зачем-то вдруг требуются права администратора", и она привычна и всосана со спермой Билла Гейтса всем пользовательским населением сети. :)
И так, "под рутом", творить ВСЕМ проще, быстрее, спокойнее.
Хуяк - и в продакшн.
И потому получается то, о чём я написал в посте.
Массово.