|
|
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
L_argoКак не надо таскать ? А как с БД зачитать набор только разрешенных записей ? Все равно для этого придется этот ID куда-то передать: в запрос, ХП, ф-цию. Чушь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 11:14 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
L_argoапп-сервермарку Сестра!!! Какой именно? Или у вас врач универсал и роды примет и зуб запломбирует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 11:18 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
L_argoКак не надо таскать ? А как с БД зачитать набор только разрешенных записей ? Все равно для этого придется этот ID куда-то передать: в запрос, ХП, ф-цию. если есть (к примеру) таблица, в которой есть записи доступные определённым юзерам, которые прописаны в определённом поле данной таблице , то передать id юзера в хранимку для использования в where нет проблем. если называется "тасканием" и вызывает проблемы - надо сменить професссию L_argoВообще-то про апп-сервер, кот. обращается к БД.вообще-то именно про трёхзвенку, потому как апп-сервер это часть трёхзвенки. серверное приложение однозначно знает от какого юзера пришло сообщение и может без проблем сопоставить этому сообщению id юзера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 11:23 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Я вам не Димон.Egoр, ладно, посмеялись и будет. Ваши варианты решения?Для начала. Учетка, под которой будут запросы на сервер отправляться, будет использована для пула сессий, распределяемых между всеми пользовательскими сессиями. Или одна сессия пользователя - одна сессия БД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 12:21 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
то передать id юзера в хранимку для использования в where нет проблем. если называется "тасканием" и вызывает проблемы - надо сменить професссиюЭто не вызывает никакой проблемы. "Таскание" это термин ТСа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 12:22 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Я вам не Димон., ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 12:26 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Я вам не Димон.я об этом и писал, что придётся таскать ID_USER при каждом вызове функции. Просто я думал, что есть какие-то другие методы, более правильные В большинстве СУБД тем или иным способом есть контекстные переменные куда имя текущего (для сессии) пользователя можно записать при вызове процедуры аутентификации. А потом использовать во всех функциях, через которые "Веб-сервер общается с БД". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 13:46 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Вы его счас направите на трехзенку с нестандартной ориентацией. А он не видев и не писав веб проектов будет бэк прогеру руки выкручивать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 14:17 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Я вам не Димон.я думал, что есть какие-то другие методы, более правильные, а тут начали троллить. Правильность зависит от контекста и Димон этого не понимает, поэтому его не то что бы троллят, но немного пинают. И это называется - учёба. Если Димон сумеет понять, почему возникают пинки, тогда он научился. Но обычно димоны предпочитают сказать - да ну вас троллей таких... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 14:18 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Я вам не Димон.Поясняю. Юзер вводит логин и пароль - например vasya и 12345. Веб сервер вызывает функцию f_check_user('vasya','12345') и она возвращает допустим =0 то есть такой пользователь с таким паролем найден в таблице T_USER нашей БД. во1, "найден" это 1 (true). 0 = false. во2, пароль не шлётся в БД, а БД по логину отдаёт пароль юзера и вы его сравниваете с введённым в3, костыль на костыле костыль погоняет. сожгите свой офис. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 17:59 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Я вам не Димон.вадясерверное приложение разруливает правами кто и что может выполнять в базе. Поясняю. Юзер вводит логин и пароль - например vasya и 12345. Веб сервер вызывает функцию f_check_user('vasya','12345') и она возвращает допустим =0 то есть такой пользователь с таким паролем найден в таблице T_USER нашей БД. Далее веб-сервер должен вызывать другие функции этой БД, но в контексте пользователя vasya. Как это реализовать, если пользователь vasya - это не пользователь СУБД, а просто запись в таблице T_USER ? Вы сами себе ответили: "в контексте пользователя vasya". Должен быть некий объект Context (ApplicationContext, ExecutionContext, SecurityContext), что содержит информацию о текущем пользователе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 18:06 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
А вбить в поиске: Context Design Pattern, - уже не проблема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 18:16 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Я вам не Димон.Я отвечаю за разработку БД. Веб-сервер общается с БД только посредством функций. В такой ситуации только мозно зад на клочья изорвать, но адекватную безопасность тут не сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 18:37 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
ViPRosЯ вам не Димон., ЭТО ПОЛНЫЙ ТРЕШ, я не позавидую пользователям вот таких систем безопасности. Сидеть и как дятел галочки натыкивать, от оно результат гения мысли ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 18:39 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
добавить/удалить/изменять продукцию - у каждого действия своё разрешение ну так то выглядит логично, просто непривычно много всего, что вполне допустимо в большой системе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 19:34 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
tip78добавить/удалить/изменять продукцию - у каждого действия своё разрешение ну так то выглядит логично, просто непривычно много всего, что вполне допустимо в большой системе Угу. Логично. Только для однобитного бизнеса, не совместимого с нашими реалиями. Как на этих смешных галочках можно реализовать следующее: 1. Группа учёта определённой подсистемы может вносить изменения только в последние 3 дня месяца, до этого только ридонили, на уровне безопасности. 2. Выдать права на определённые действия (любые на выбор), на определённый срок определённым людям, при чём любые изменения должны идти с маркером выданных разрешений (кто, когда, и на каком основании разрешил). 3. Возможность делегировать полномочия старших сотрудников младшим сотрудникам на определённые действия, на определённый срок. 4. Одноразовые и N-разовые разрешения. 5. Возможность замещения (ушёл в отпуск, заместители получили права). 6. Определённые действия могут быть совершены только после других действий. + дофига подобных правил, порой совершенно не логичных с точки зрения здорового человека. И это всё именно безопасность, оно должно управляться в одном месте, это подвергается аудиту, строятся отчёты, что когда кому можно было, почему, кто разрешил в такие-то дни. Строятся отчёты по срезам объектов и действиям, выясняется почему такое-то действие было выполнено, на каком основании. Как подобное на этих галочках решать, от вида которых уже становится плохо, понятия не имею. Да и зачем делать это ТАК сложно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 21:10 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
ну да, типа для ваших пунктов есть простой способ )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 21:26 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
tip78ну да, типа для ваших пунктов есть простой способ )) ABAC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 21:27 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
hVostttip78ну да, типа для ваших пунктов есть простой способ )) ABAC Точнее так, в реализации он конечно сложнее вот этого примитивного трешака с галочками, при чём существенно. Но в результате колоссальный профит. Как по гибкости, по контролю, прозрачности, так и по удобству. Но сделать и прикрутить полноценный ABAC довольно сложно, поэтому и не популярно. Поддержки в виде готовых библиотек, толстых разношёрстных мануалов и прочего привычного стаффа вы не найдёте. Нужно поработать головой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 21:30 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
hVostt, ты блабла то заканчивай кроме галочек там есть правила Порядок таков 1. Умолчание (ничего не надо настраивать) 2. Настройка галочками 3. Настройка правил (код любой сложности в заданном контексте) 4. Клонирование с перенастройкой Права действуют с по Юзер может быть в разных ролях Вход по конкретной роли или группы ролей или все АБАС полный улет фантазии и потеря контекста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 21:52 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Роли можно импорт/экспорт, сливать несколько ролей и т.д. Да воще моя фигня, куда надо туда и разовю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 21:54 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
Я вам не Димон.Здравствуйте! Поставили такую задачу - разработать веб-приложение с БД на PostgreSQL (на самом деле неважно, какая СУБД). Я отвечаю за разработку БД. Веб-сервер общается с БД только посредством функций. Руководитель сказал сделать такой вариант подсистемы безопасности, что все пользователи - "виртуальные" - т.е. это просто записи в таблице T_USER, а вовсе не реальные пользователи СУБД. Также существует таблица прав для каждого пользователя, т.е. пользователи и права - это на уровне приложения, а не на уровне СУБД. Веб-сервер будет общаться с СУБД от имени одной фиксированной учётки, а функции уже будут разруливать от имени какого пользователя работает приложение - вот это и есть тот вопрос, который мне не понятен. Как функция узнает, от имени какого "виртуального" пользователя она выполняется - это что, в каждую функцию передавать ID_USER ? это классическая реализация для трехзвенки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 22:13 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
ViPRos2. Настройка галочками Ну и много ты настроишь с системе галочками, где больше 1000 различных типов и до сотни тысяч атрибутов? Я конечно понимаю, на паре другой десятке ещё куда ни шло, матрица получается не такая зверская, но ты посчитай, там тупо пронажимать всё как надо, лучше просто убиться об стену. ViPRos3. Настройка правил (код любой сложности в заданном контексте) Код логики где-то там. В одном единственном месте можно ВСЕ правила описывать? Вот где ты галочки свои расставляешь? А то так-то можно и код в обработчиках кнопок называть «правилами безопасности», да? )) ViPRos4. Клонирование с перенастройкой Укрощение галочек? )) ViPRosПрава действуют с по В конкретные дни могут действовать? При конкретных условиях? Периодически? ViPRosАБАС полный улет фантазии и потеря контекста У нас в полный рост. И да, я могу сравнить, так как предыдущую систему делали вот 100% как у тебя, на матрицах галочек, и заипались все, и разрабы и аналитики, и аудиторы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 22:41 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
ViPRosРоли можно импорт/экспорт, сливать несколько ролей и т.д. Да воще моя фигня, куда надо туда и разовю :) А чё-т ещё кроме ролей есть? Роли можно параметризовать? Как пересечь правила, роли, принадлежность пользователя отделам, и его какой-нибудь показатель (например, КПУ)? И по этим пересечениям разрешать безопасность? Опять же, всё в одном месте должно быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2018, 22:43 |
|
||
|
Своя подсистема безопасности для трёхзвенки
|
|||
|---|---|---|---|
|
#18+
hVostthVosttпропущено... ABAC Точнее так, в реализации он конечно сложнее вот этого примитивного трешака с галочками, при чём существенно. Но в результате колоссальный профит. Как по гибкости, по контролю, прозрачности, так и по удобству. Но сделать и прикрутить полноценный ABAC довольно сложно, поэтому и не популярно. Поддержки в виде готовых библиотек, толстых разношёрстных мануалов и прочего привычного стаффа вы не найдёте. Нужно поработать головой. Gartner Predicts в марте 2014 ляпнул, что к 2020 70% ентерпрайза будет сидеть на ABAC )) ну ну Я думаю, читая вот это , ентерпрайз будет юзать роли ещё лет 300 авторИ это всё именно безопасность, оно должно управляться в одном месте, это подвергается аудиту, строятся отчёты, что когда кому можно было, почему, кто разрешил в такие-то дни. Строятся отчёты по срезам объектов и действиям, выясняется почему такое-то действие было выполнено, на каком основании. так логи есть ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2018, 00:12 |
|
||
|
|

start [/forum/topic.php?fid=33&msg=39629716&tid=1547236]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
156ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
74ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 288ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...