Сообщение Re[33]: Каких программ вам не хватает? от 18.04.2025 15:27
Изменено 18.04.2025 15:31 Кt Л.
Re[33]: Каких программ вам не хватает?
Здравствуйте, Sinclair, Вы писали:
S>Нет, но я не совсем понимаю, что мне пишете вы. Да, теперь понятно — ответ "да".
ну так ведь это же даже не секьюрити а костыль.
S>Не было никакого тейка про баги. Я, наверное, плохо объяснил сценарий.
[]
S>Пользователь выполняет свой привычный workflow, и внезапно обнаруживает 500 internal error. Потому что сервису вдруг попался экземпляр инвойса с атрибутом НДС=null, а на это никто не рассчитывал.
вы ошибку использования переносите на ошибку проектирования. придумали какой-то вырожденный случай чтобы под него подогнать свои пристрастия в ахитектуре.
я тоже люблю когда просто. но делать секьюрити через скрывание полей факторизацией это не секьюрити
КЛ>>ну у тебя там есть юзер, у которого явно есть роль или зачем там была написана вся та бесполезная портянка
S>Я вроде три раза объяснил, в четвёртый уже не буду.
я реально не понял, видимо потмоу что мне в голову такое не приходило делать
S>Ну, научите же меня, как всё это правильно делать. А то по моей практике, простые решения — они самые надёжные.
простые — да. но мир сложен. учим вот но ты ни в какую)
КЛ>>это читерство. у тебя одна таблица, а не две. зачем сюда писать какой-то детский сад?
S>Да, у меня одна таблица. Читерство-то в чём? Детский сад — это ваша манера общаться. Я что-то начал от неё уставать.
я тоже, сори
КЛ>>у тебя windows головного мозга
S>Windows тут ни при чём. Row-level security в каком-нибудь Постгрес устроены ровно так же.
S>Пример, который я привёл, про этот сайт — поэтому упомянут Windows и SQL Server.
какой сайт? rsdn? ужас.
Вы писали "Это когда мы заводим для пользователя №44487 виндовый аккаунт, даём этому аккаунту права на SQL базу с табличками forums, topics, replies, и marks, при логине на сайт создаём виндовую сессию, и все запросы в SQL Server выполняем через новое соединение под правами этого виндового аккаунта."
в постгрес так никто делать не будет в здравом уме
КЛ>>да да, а твои проверки row-level секьюрити в контроллере стоят ноль да? и ты поташищь весь резалтсет для всех юзеров из базы да?
S>Вот зачем вы пишете бред. Я же показал вам тремя абзацами выше код запросов — где там "весь резалтсет для всех юзеров из базы"?
а где там фильтрация по юзеру? Это:
КЛ>>да ты тут уже нарассказывал
S>Я как-то не рассчитывал встретить в архитектурной дискуссии незнание основ RDBMS. Поэтому надеюсь на то, что я просто вас не так понял. Но, на всякий случай выражаю готовность поделиться всем, что знаю сам.
ты про то, что я написал views вместо materialized views? жестко
КЛ>>ну спроектируй тут, только без хаков с db.OutboundInvoices, db.InboundInvoices — одна таблица, row-level security и тп.
S>Непонятно, что такое "хаки".
разбиение на 2 таблицы, потому что по коду не очевидно, что у тебя одна таблица
КЛ>>я тебе набросал _примерную_ схему, ты
КЛ>>же мне ответил "недостаточно вводных данных".
S>Вы жульничаете. Схему вы набросали про фильтрацию строк, а задачу, про которую я ответил "недостаточно данных" — про какую-то (непонятно какую) обрезку атрибутов.
S>И ни в одном из случаев нет ничего про постановку задачи. Выглядит так, что вы стараетесь сначала придумать решение, а уже потом любой ценой его защитить, вообще не задумываясь, а зачем такое решение нужно.
да я просто рассказываю что я видел в своей практике
КЛ>>какая чушь
S>Не, беру свои слова по поводу "поделиться всем, чем знаю" обратно.
"Вот зачем вы пишете бред." — твои слова выше. Но согласен, я мог бы и помягче, сори
S>Нет, но я не совсем понимаю, что мне пишете вы. Да, теперь понятно — ответ "да".
ну так ведь это же даже не секьюрити а костыль.
S>Не было никакого тейка про баги. Я, наверное, плохо объяснил сценарий.
[]
S>Пользователь выполняет свой привычный workflow, и внезапно обнаруживает 500 internal error. Потому что сервису вдруг попался экземпляр инвойса с атрибутом НДС=null, а на это никто не рассчитывал.
вы ошибку использования переносите на ошибку проектирования. придумали какой-то вырожденный случай чтобы под него подогнать свои пристрастия в ахитектуре.
я тоже люблю когда просто. но делать секьюрити через скрывание полей факторизацией это не секьюрити
КЛ>>ну у тебя там есть юзер, у которого явно есть роль или зачем там была написана вся та бесполезная портянка
S>Я вроде три раза объяснил, в четвёртый уже не буду.
я реально не понял, видимо потмоу что мне в голову такое не приходило делать
S>Ну, научите же меня, как всё это правильно делать. А то по моей практике, простые решения — они самые надёжные.
простые — да. но мир сложен. учим вот но ты ни в какую)
КЛ>>это читерство. у тебя одна таблица, а не две. зачем сюда писать какой-то детский сад?
S>Да, у меня одна таблица. Читерство-то в чём? Детский сад — это ваша манера общаться. Я что-то начал от неё уставать.
я тоже, сори
КЛ>>у тебя windows головного мозга
S>Windows тут ни при чём. Row-level security в каком-нибудь Постгрес устроены ровно так же.
S>Пример, который я привёл, про этот сайт — поэтому упомянут Windows и SQL Server.
какой сайт? rsdn? ужас.
Вы писали "Это когда мы заводим для пользователя №44487 виндовый аккаунт, даём этому аккаунту права на SQL базу с табличками forums, topics, replies, и marks, при логине на сайт создаём виндовую сессию, и все запросы в SQL Server выполняем через новое соединение под правами этого виндового аккаунта."
в постгрес так никто делать не будет в здравом уме
КЛ>>да да, а твои проверки row-level секьюрити в контроллере стоят ноль да? и ты поташищь весь резалтсет для всех юзеров из базы да?
S>Вот зачем вы пишете бред. Я же показал вам тремя абзацами выше код запросов — где там "весь резалтсет для всех юзеров из базы"?
а где там фильтрация по юзеру? Это:
IQueryable<OutboundInvoice> InvoicesSentBy(CompanyID currentCompany) =>
from i in db.OutboundInvoices where i.originator = currentCompany select i;
IQueryable<InboundInvoice> InvoicesSentTo(CompanyID currentCompany) =>
from i in db.InboundInvoices where i.destination = currentCompany select i;КЛ>>да ты тут уже нарассказывал
S>Я как-то не рассчитывал встретить в архитектурной дискуссии незнание основ RDBMS. Поэтому надеюсь на то, что я просто вас не так понял. Но, на всякий случай выражаю готовность поделиться всем, что знаю сам.
ты про то, что я написал views вместо materialized views? жестко
КЛ>>ну спроектируй тут, только без хаков с db.OutboundInvoices, db.InboundInvoices — одна таблица, row-level security и тп.
S>Непонятно, что такое "хаки".
разбиение на 2 таблицы, потому что по коду не очевидно, что у тебя одна таблица
КЛ>>я тебе набросал _примерную_ схему, ты
КЛ>>же мне ответил "недостаточно вводных данных".
S>Вы жульничаете. Схему вы набросали про фильтрацию строк, а задачу, про которую я ответил "недостаточно данных" — про какую-то (непонятно какую) обрезку атрибутов.
S>И ни в одном из случаев нет ничего про постановку задачи. Выглядит так, что вы стараетесь сначала придумать решение, а уже потом любой ценой его защитить, вообще не задумываясь, а зачем такое решение нужно.
да я просто рассказываю что я видел в своей практике
КЛ>>какая чушь
S>Не, беру свои слова по поводу "поделиться всем, чем знаю" обратно.
"Вот зачем вы пишете бред." — твои слова выше. Но согласен, я мог бы и помягче, сори
Re[33]: Каких программ вам не хватает?
Здравствуйте, Sinclair, Вы писали:
S>Нет, но я не совсем понимаю, что мне пишете вы. Да, теперь понятно — ответ "да".
ну так ведь это же даже не секьюрити а костыль.
S>Не было никакого тейка про баги. Я, наверное, плохо объяснил сценарий.
[]
S>Пользователь выполняет свой привычный workflow, и внезапно обнаруживает 500 internal error. Потому что сервису вдруг попался экземпляр инвойса с атрибутом НДС=null, а на это никто не рассчитывал.
вы ошибку использования переносите на ошибку проектирования. придумали какой-то вырожденный случай чтобы под него подогнать свои пристрастия в ахитектуре.
я тоже люблю когда просто. но делать секьюрити через скрывание полей факторизацией это не секьюрити
КЛ>>ну у тебя там есть юзер, у которого явно есть роль или зачем там была написана вся та бесполезная портянка
S>Я вроде три раза объяснил, в четвёртый уже не буду.
я реально не понял, видимо потмоу что мне в голову такое не приходило делать
S>Ну, научите же меня, как всё это правильно делать. А то по моей практике, простые решения — они самые надёжные.
простые — да. но мир сложен. учим вот но ты ни в какую)
КЛ>>это читерство. у тебя одна таблица, а не две. зачем сюда писать какой-то детский сад?
S>Да, у меня одна таблица. Читерство-то в чём? Детский сад — это ваша манера общаться. Я что-то начал от неё уставать.
я тоже, сори
КЛ>>у тебя windows головного мозга
S>Windows тут ни при чём. Row-level security в каком-нибудь Постгрес устроены ровно так же.
S>Пример, который я привёл, про этот сайт — поэтому упомянут Windows и SQL Server.
какой сайт? rsdn? ужас.
Вы писали "Это когда мы заводим для пользователя №44487 виндовый аккаунт, даём этому аккаунту права на SQL базу с табличками forums, topics, replies, и marks, при логине на сайт создаём виндовую сессию, и все запросы в SQL Server выполняем через новое соединение под правами этого виндового аккаунта."
в постгрес так никто делать не будет в здравом уме
КЛ>>да да, а твои проверки row-level секьюрити в контроллере стоят ноль да? и ты поташищь весь резалтсет для всех юзеров из базы да?
S>Вот зачем вы пишете бред. Я же показал вам тремя абзацами выше код запросов — где там "весь резалтсет для всех юзеров из базы"?
а где там фильтрация по юзеру? Это:
КЛ>>да ты тут уже нарассказывал
S>Я как-то не рассчитывал встретить в архитектурной дискуссии незнание основ RDBMS. Поэтому надеюсь на то, что я просто вас не так понял. Но, на всякий случай выражаю готовность поделиться всем, что знаю сам.
ты про то, что я написал views вместо materialized views? жестко
КЛ>>ну спроектируй тут, только без хаков с db.OutboundInvoices, db.InboundInvoices — одна таблица, row-level security и тп.
S>Непонятно, что такое "хаки".
разбиение на 2 таблицы, потому что по коду неочевидно, что у тебя одна таблица
КЛ>>я тебе набросал _примерную_ схему, ты
КЛ>>же мне ответил "недостаточно вводных данных".
S>Вы жульничаете. Схему вы набросали про фильтрацию строк, а задачу, про которую я ответил "недостаточно данных" — про какую-то (непонятно какую) обрезку атрибутов.
S>И ни в одном из случаев нет ничего про постановку задачи. Выглядит так, что вы стараетесь сначала придумать решение, а уже потом любой ценой его защитить, вообще не задумываясь, а зачем такое решение нужно.
да я просто рассказываю что я видел в своей практике
КЛ>>какая чушь
S>Не, беру свои слова по поводу "поделиться всем, чем знаю" обратно.
"Вот зачем вы пишете бред." — твои слова выше. Но согласен, я мог бы и помягче, сори
S>Нет, но я не совсем понимаю, что мне пишете вы. Да, теперь понятно — ответ "да".
ну так ведь это же даже не секьюрити а костыль.
S>Не было никакого тейка про баги. Я, наверное, плохо объяснил сценарий.
[]
S>Пользователь выполняет свой привычный workflow, и внезапно обнаруживает 500 internal error. Потому что сервису вдруг попался экземпляр инвойса с атрибутом НДС=null, а на это никто не рассчитывал.
вы ошибку использования переносите на ошибку проектирования. придумали какой-то вырожденный случай чтобы под него подогнать свои пристрастия в ахитектуре.
я тоже люблю когда просто. но делать секьюрити через скрывание полей факторизацией это не секьюрити
КЛ>>ну у тебя там есть юзер, у которого явно есть роль или зачем там была написана вся та бесполезная портянка
S>Я вроде три раза объяснил, в четвёртый уже не буду.
я реально не понял, видимо потмоу что мне в голову такое не приходило делать
S>Ну, научите же меня, как всё это правильно делать. А то по моей практике, простые решения — они самые надёжные.
простые — да. но мир сложен. учим вот но ты ни в какую)
КЛ>>это читерство. у тебя одна таблица, а не две. зачем сюда писать какой-то детский сад?
S>Да, у меня одна таблица. Читерство-то в чём? Детский сад — это ваша манера общаться. Я что-то начал от неё уставать.
я тоже, сори
КЛ>>у тебя windows головного мозга
S>Windows тут ни при чём. Row-level security в каком-нибудь Постгрес устроены ровно так же.
S>Пример, который я привёл, про этот сайт — поэтому упомянут Windows и SQL Server.
какой сайт? rsdn? ужас.
Вы писали "Это когда мы заводим для пользователя №44487 виндовый аккаунт, даём этому аккаунту права на SQL базу с табличками forums, topics, replies, и marks, при логине на сайт создаём виндовую сессию, и все запросы в SQL Server выполняем через новое соединение под правами этого виндового аккаунта."
в постгрес так никто делать не будет в здравом уме
КЛ>>да да, а твои проверки row-level секьюрити в контроллере стоят ноль да? и ты поташищь весь резалтсет для всех юзеров из базы да?
S>Вот зачем вы пишете бред. Я же показал вам тремя абзацами выше код запросов — где там "весь резалтсет для всех юзеров из базы"?
а где там фильтрация по юзеру? Это:
IQueryable<OutboundInvoice> InvoicesSentBy(CompanyID currentCompany) =>
from i in db.OutboundInvoices where i.originator = currentCompany select i;
IQueryable<InboundInvoice> InvoicesSentTo(CompanyID currentCompany) =>
from i in db.InboundInvoices where i.destination = currentCompany select i;КЛ>>да ты тут уже нарассказывал
S>Я как-то не рассчитывал встретить в архитектурной дискуссии незнание основ RDBMS. Поэтому надеюсь на то, что я просто вас не так понял. Но, на всякий случай выражаю готовность поделиться всем, что знаю сам.
ты про то, что я написал views вместо materialized views? жестко
КЛ>>ну спроектируй тут, только без хаков с db.OutboundInvoices, db.InboundInvoices — одна таблица, row-level security и тп.
S>Непонятно, что такое "хаки".
разбиение на 2 таблицы, потому что по коду неочевидно, что у тебя одна таблица
КЛ>>я тебе набросал _примерную_ схему, ты
КЛ>>же мне ответил "недостаточно вводных данных".
S>Вы жульничаете. Схему вы набросали про фильтрацию строк, а задачу, про которую я ответил "недостаточно данных" — про какую-то (непонятно какую) обрезку атрибутов.
S>И ни в одном из случаев нет ничего про постановку задачи. Выглядит так, что вы стараетесь сначала придумать решение, а уже потом любой ценой его защитить, вообще не задумываясь, а зачем такое решение нужно.
да я просто рассказываю что я видел в своей практике
КЛ>>какая чушь
S>Не, беру свои слова по поводу "поделиться всем, чем знаю" обратно.
"Вот зачем вы пишете бред." — твои слова выше. Но согласен, я мог бы и помягче, сори