dsmsoftware
Дата: 20.01.2009 22:08:34
Здравствуйте
Возникла такая ситуация
Наши фирма работает в сфере водоснабжения и имеет 15 дочерних организаций В фирме должна быть разработана и внедрена программа, которая будет вести различный учет в этой сфере, программа должна быть написана на VB.NET + MS SQL. Этот же пакет должен быть установлен во всех 15 организациях, каждая из которых будет вести учет ей подконтрольных единиц. Еженедельно информация из этих организаций будет синхронизироваться с главным SQL сервером и обрабатываться.
Теперь суть самой проблемы
В программе есть параметры, которые может менять только и только Админ главного сервера, программно все это регулируется , а вот как можно избежать того чтоб админы дочерних предприятий не смогли бы у себя в обход программы, просто через Enterprise Manager открывать
нужные таблицы изменять данные, производить какие нибудь операции, которые программно выполнить было бы нельзя, а потом возвращать данные на свои места.
К примеру
Программно нельзя заключать новый договор с абонентом, у которого есть долг, т.е програ проверяет в соответствующей таблице поле долга , если там ноль, то можно заключить новый договор , если нет то нет. Так вот админ просто может открыть эту таблицу и ручками подправить значение на ноль, потом программно заключить новый договор и обратно вернуть этому полю прежнее значение.
Не знаю смог ли я внятно обьяснить
Жду любых предложений
С уважением...
Crimean
Дата: 20.01.2009 22:39:25
п.1.в филиалах не должно быть одминов
п.2.если чего непонятно, смотри п.1.
больше способов нет, с одминами бороцо смысла нету
альтернатива - общая система на все филиалы, база одна - в центре, одмин тоже один - там же
Mr Marmelad
Дата: 20.01.2009 22:39:30
dsmsoftware,
The answer is YES it is. it is REAL. Есть несколько решений таких проблем, Коллега. одно из них называется Аудит. Вы можете установить аудит на все уровни своей системы - И логировать в AuditTable все изменения своего главного значения. То есть дублировать процесс. Ессно с указанием времени изменения и личность инициатора изменений.
Другим способом будет криптование значений чтоб нихто кроме админа знающего пороль не смог прочесть или изменить данные.
Есть также инетресный продукт прозрачного шифрования -
BLOCKKK я попробовал - работает.. эти и ещё некоторые методы обычно "успокаивают" ретивых админов от прямого вмешательства в бизнес процесс. Конечно им под подпись надо давать знать что они не имеют права изменять данные без ведома и санкции головного офиса.
HiddenCat
Дата: 21.01.2009 09:55:17
Базу лучше сделать одну на все филиалы и ГО, если есть техническая возможность. Этим решаются все проблемы, как я понимаю