|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Наша организация заказывает программное обеспечение (учетная система). Движение грузов, заявки, накладные, счета, оплаты и т.д. Разработчик предложил следующую модель. База данных и обработчик находятся на сервере, а пользователи получают доступ к ресурсам БД через IE. Т.е. никакого другого программного обеспечения на компах пользователей не будет, все будет подготавливаться на сервере, а мы будем просматривать, вводить и редактировать данные через Internet Explorer. База данных MS SQL 2005, обработчик собираются писать на "Визуал Студия", если это имеет значение. Подскажите пожалуйста: 1. преимущества и недостатки такого подхода. 2. где можно про это почитать 3. как называется такая технология. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2007, 19:00 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Думаю, что для логистической компании тонкий клиент это - самое то :) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2007, 20:29 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
>Ларионов >Наша организация заказывает программное обеспечение ... Есть и другие модели, например см. здесь: http://www.gotdotnet.ru/LearnDotNet/NETFramework/223738.aspx http://www.gotdotnet.ru/Downloads/Examples/401713.aspx - ЦУС http://www.gotdotnet.ru/Downloads/Examples/408575.aspx - Сервер приложений С уважением, Владимир. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2007, 21:05 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
ЛарионовПодскажите пожалуйста: 1. преимущества и недостатки такого подхода.1. Это реализовать сложнее, чем обычное приложение клиент/сервер. 2. Интерфейсные возможности будут ограничены, т.к. подходы к навигации и поиску нужны несколько другие, чем традиционный www-серфинг. 3. Фактически это 3-звенка со всеми вытекающими сложностями.... Оно Вам нада ??? Разработчик будет писать систему с нуля ??????? На это уйдёт 1..2года. При том, что задача весьма стандартна (банальный склад), это мероприятие ждет сомнительный успех. Почему был выбран именно этот путь ? Чем не подошли существующие решения ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2007, 10:55 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSV ЛарионовПодскажите пожалуйста: 1. преимущества и недостатки такого подхода.1. Это реализовать сложнее, чем обычное приложение клиент/сервер. 2. Интерфейсные возможности будут ограничены, т.к. подходы к навигации и поиску нужны несколько другие, чем традиционный www-серфинг. 3. Фактически это 3-звенка со всеми вытекающими сложностями.... Оно Вам нада ??? Позвольте с Вами немножко поспорить. 1. Более трудоёмко (и соответственно подороже) по сравнению с толстым клиентом - да, возможно... но разница не настолько велика, чтобы с ходу отметать концепцию тонкого клиента 2. Для построения интерфейса интранет-системы (т.е. системы, в которой мы можем выдвигать определённые требования и ограничения в адрес аппаратно-программной платформы клиентского рабочего места) можно использовать как старые добрые технологии активного содержимого (типа java applets или, не к ночи будь помянуты, ActiveX), так и всякие новомодные прибамбахи типа ajax и flash. Смею Вас заверить, флэшовый интерфейс ничем не уступает интерфейсу толстого клиента, а валять его на Flex Builder так же просто и быстро, как на дельфах каких-нибудь). 3. А какие такие у 3-звенки особенные сложности, перекрывающие её достоинства? Теперь, наверно, надо бы упомянуть о достоинствах предлагаемой схемы. 1. Отсутствуют накладные расходы по сопровождению клиентских рабочих мест - выложили новую версию софта на сервак, все пользователи автоматически начали с ней работать. Для контор с большим количеством рабочих мест это весьма существенное достоинство. 2. Нет проблем с организацией работы с системой территориально распределённых пользователей - хоть из соседнего здания, хоть с другого конца земного шара. Как выше было уже сказано - это очень ценно для логистической конторы. Выдали экспедитору мобильник и PDA - вот рабочее место и готово, сел на пенёк на опушке - и набивай себе информацию. В общем, если требования разработчика по срокам и деньгам заказчика устраивают - IMHO не надо заморачиваться насчёт архитектуры системы, пусть делают под тонкий клиент. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2007, 11:18 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Особо оговорите меры защиты. Например, возможность работать с любого места где есть IE, порождает опасность что в этом месте останутся ваши ценные данные во временных IE файлах. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2007, 13:20 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
- "время отклика системы" - интерфейс "переоткрытия" страниц наиболее значимые критерии чтобы хорошо подумать. ______________________________________________ Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде! ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2007, 18:16 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Опять, 25... Я Вас умоляю... ГрымзДля построения интерфейса интранет-системы (т.е. системы, в которой мы можем выдвигать определённые требования и ограничения в адрес аппаратно-программной платформы клиентского рабочего места) можно использовать как старые добрые технологии активного содержимого (типа java applets или, не к ночи будь помянуты, ActiveX), так и всякие новомодные прибамбахи типа ajax и flash. Что java applets, что "всякие новомодные прибамбахи" сильно подымают требования "в адрес аппаратно-программной платформы клиентского рабочего места" по сравнению с обычным толстым win32 клиентом. Миф №1... Грымз3. А какие такие у 3-звенки особенные сложности, перекрывающие её достоинства? 3 звена, вместо 2х! Еще сложности нужны?! Миф №2... ГрымзОтсутствуют накладные расходы по сопровождению клиентских рабочих мест - выложили новую версию софта на сервак, все пользователи автоматически начали с ней работать. Для контор с большим количеством рабочих мест это весьма существенное достоинство. Гм... Вот у нас классическая 2у звенка. Выложили новую версию на сервак - и "все пользователи автоматически начали с ней работать". Третье звено, как и пятое колесо, тут совершенно не нужно. Миф №3... ГрымзНет проблем с организацией работы с системой территориально распределённых пользователей - хоть из соседнего здания, хоть с другого конца земного шара. Как выше было уже сказано - это очень ценно для логистической конторы. Выдали экспедитору мобильник и PDA - вот рабочее место и готово, сел на пенёк на опушке - и набивай себе информацию. Да я хоть с Нижней Тегусегальпы могу работать - был бы хоть какой-нибуь канал связи. Миф №4... ГрымзВ общем, если требования разработчика по срокам и деньгам заказчика устраивают - IMHO не надо заморачиваться насчёт архитектуры системы, пусть делают под тонкий клиент Вообщем, я бы тысячу раз подумал. Особенно в контексте "обработчик собираются писать на..." Разработчик, похоже, решил свои скилы потренировать. Как бы это все это боком не вышло. Поинтересуйтесь, есть ли у него за спиной работающие решения в такой архитектуре. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 08:21 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinОпять, 25... Я Вас умоляю... ГрымзДля построения интерфейса интранет-системы (т.е. системы, в которой мы можем выдвигать определённые требования и ограничения в адрес аппаратно-программной платформы клиентского рабочего места) можно использовать как старые добрые технологии активного содержимого (типа java applets или, не к ночи будь помянуты, ActiveX), так и всякие новомодные прибамбахи типа ajax и flash. Что java applets, что "всякие новомодные прибамбахи" сильно подымают требования "в адрес аппаратно-программной платформы клиентского рабочего места" по сравнению с обычным толстым win32 клиентом. Миф №1... Правда? Читаем system requirements для Flash Player 8: Intel Pentium II 450MHz or faster processor (or equivalent) 128MB of RAM Много ли Вы видели за последний год офисных компьютеров, не отвечающих этим требованиям? Кстати - а чем это ActiveX существенно тяжелее толстого win32 клиента с аналогичной функциональностью? pkarklin Грымз3. А какие такие у 3-звенки особенные сложности, перекрывающие её достоинства? 3 звена, вместо 2х! Еще сложности нужны?! Миф №2... А у собаки 4 ноги. А у кенгуру 2. И что - из этого следует, что у собаки в жизни больше сложностей, чем у кенгуру? Трёхзвенка - это отделение бизнес-логики от client view, т.е. (навскидку-первое что в голову приходит): 1. Перенос "тяжёлых" операций с чахлого клиента на мощный сервер 2. Лёгкая миграция данных между различными database backends и предоставление клиенту прозрачного доступа к распределенным хранилищам данных 3. Возможность значительного изменения бизнес-логики без внесения изменений в клиентскую часть 4. Лёгкость создания data marts корпоративной БД для различных структурных подразделений. Да много чего ещё вкусного. Умные люди трёхзвенку ведь не для собственного удовольствия придумали, а для удовлетворения потребностей бизнесов. Какие такие могут быть сложности для мало-мальски опытной команды разработчиков - ума не приложу. Этой архитектуре сто лет в обед, обкатано на огромном количестве проектов самого разного масштаба. pkarklin ГрымзОтсутствуют накладные расходы по сопровождению клиентских рабочих мест - выложили новую версию софта на сервак, все пользователи автоматически начали с ней работать. Для контор с большим количеством рабочих мест это весьма существенное достоинство. Гм... Вот у нас классическая 2у звенка. Выложили новую версию на сервак - и "все пользователи автоматически начали с ней работать". Третье звено, как и пятое колесо, тут совершенно не нужно. Миф №3... Ага. Особенно прикольно это всё выглядит, когда человек 500 с началом рабочего дня практически одновременно пытаются запустить лежащий на серваке набор программулин мегабайта в два-три весом каждая. Наблюдали-с. pkarklin ГрымзНет проблем с организацией работы с системой территориально распределённых пользователей - хоть из соседнего здания, хоть с другого конца земного шара. Как выше было уже сказано - это очень ценно для логистической конторы. Выдали экспедитору мобильник и PDA - вот рабочее место и готово, сел на пенёк на опушке - и набивай себе информацию. Да я хоть с Нижней Тегусегальпы могу работать - был бы хоть какой-нибуь канал связи. Миф №4... Правда чтоль? Не могли бы Вы выложить куда-нибудь демо-версию толстого клиента своей ИС? Очень хочется позапускать её одновременно на PDA под WinCE через GPRS, линуховом компе в интернет-кафе и ноутом под Вистой в вайфайном хот-споте. P.S. Вообще на самом деле спор беспредметен без знания требований заказчика к обеспечению удалённого доступа к системе и характеристик компьютерного парка и линий связи. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 10:44 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
ГрымзПравда? Читаем system requirements для Flash Player 8: Intel Pentium II 450MHz or faster processor (or equivalent) 128MB of RAM Много ли Вы видели за последний год офисных компьютеров, не отвечающих этим требованиям? Уважаемый, я думаю, Вам не надо объяснять, чем отличются minimum system requirements и те requirements, на которых Ваше приложение, использующее "всякие новомодные прибамбахи" будет работать без тормозов, т.е. иметь нормальное время отклика, например, на элементарный скрол по гриду. На приведенной Вами конфигурации толстый клиент, написанный, скажем, на Delphi, будет летать, а вот упомянутые Вами java applets, и "всякие новомодные прибамбахи" буду жутко тормозить. Проверено... ГрымзА у собаки 4 ноги. А у кенгуру 2. И что - из этого следует, что у собаки в жизни больше сложностей, чем у кенгуру? Из этого следует одно - усложение и удорожание общей стоимости проекта, ибо проектировать, разрабатывать, тестировать и т.п. нужно на 1 звено больше, чем в классической двузвенке. ГрымзТрёхзвенка - это отделение бизнес-логики от client view, т.е. (навскидку-первое что в голову приходит): Заменяем в Вашем высказывании одно слово: Двузвенка - это отделение бизнес-логики от client view, т.е. (навскидку-первое что в голову приходит): и пытаемся подставить Ваши же аргументы: Грымз1. Перенос "тяжёлых" операций с чахлого клиента на мощный сервер Да. Только самый недологий разработчик будет делать в классической двузвенке "тяжелые операции" на клиенте. Грымз2. Лёгкая миграция данных между различными database backends и предоставление клиенту прозрачного доступа к распределенным хранилищам данных С миграцией, действительно, не все так гладко. А вот на счет "предоставление клиенту прозрачного доступа к распределенным хранилищам данных" - да. Грымз3. Возможность значительного изменения бизнес-логики без внесения изменений в клиентскую часть Да. Грымз4. Лёгкость создания data marts корпоративной БД для различных структурных подразделений. Да. Если еще, что-то "придет в голову" на предмет плюсов 3х звенки - пишите. Я и многие остальные участники форума (и не только этого его раздела) ждем их уже давным давно. ГрымзДа много чего ещё вкусного. Гы... Читайте Выше... ГрымзУмные люди трёхзвенку ведь не для собственного удовольствия придумали, а для удовлетворения потребностей бизнесов. Вот и надо исходить из "потребностей бизнеса", а не из кажущихся Вам "вкусностей". ГрымзКакие такие могут быть сложности для мало-мальски опытной команды разработчиков - ума не приложу. Этой архитектуре сто лет в обед, обкатано на огромном количестве проектов самого разного масштаба. Этих "сложностей" будет больше, чем "сложностей" для "опытной команды разработчиков классической двузвенки", архитектуре которой 200 лет в обед. ГрымзАга. Особенно прикольно это всё выглядит, когда человек 500 с началом рабочего дня практически одновременно пытаются запустить лежащий на серваке набор программулин мегабайта в два-три весом каждая. Наблюдали-с. Ну, если у тех людей, за которыми Вы наблюдали, приложение в виде одного ехешника - это единственное возможное решение, то их мне жаль. ГрымзПравда чтоль? Не могли бы Вы выложить куда-нибудь демо-версию толстого клиента своей ИС? Очень хочется позапускать её одновременно на PDA под WinCE через GPRS, линуховом компе в интернет-кафе и ноутом под Вистой в вайфайном хот-споте. Все, на чем может работать Win32 будет работать. ГрымзP.S. Вообще на самом деле спор беспредметен без знания требований заказчика к обеспечению удалённого доступа к системе и характеристик компьютерного парка и линий связи. Вот здесь, позволю себе с Вами согласиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 11:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Автор с такой лёгкостью рассуждает про "вкусности" 3-звенки, как будто он их 10штук сам написал. Вот как напишете хоть одну, тогда и поговорим про "вкусности". Кстати большинство этих "вкусностей" либо неактуальны либо ничем не лучше других способов решения. 3-звенки многократно обсуждали в соседней делфийской арии. Почитайте для общего развития. Сложность - самый главный камень предкновения в долгосрочном проекте. Достигнув критического уровня сложности, проект становится просто неуправляемо глюкавым. С 3-звенкой этот критический уровень достигается очень быстро,..... возможно даже до появления первой production-версии. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 11:39 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVАвтор с такой лёгкостью рассуждает про "вкусности" 3-звенки, как будто он их 10штук сам написал. Вот как напишете хоть одну, тогда и поговорим про "вкусности". Кстати большинство этих "вкусностей" либо неактуальны либо ничем не лучше других способов решения. 3-звенки многократно обсуждали в соседней делфийской арии. Почитайте для общего развития. Сложность - самый главный камень предкновения в долгосрочном проекте. Достигнув критического уровня сложности, проект становится просто неуправляемо глюкавым. С 3-звенкой этот критический уровень достигается очень быстро,..... возможно даже до появления первой production-версии. +1 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 12:12 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVСложность - самый главный камень предкновения в долгосрочном проекте. Достигнув критического уровня сложности, проект становится просто неуправляемо глюкавым. С 3-звенкой этот критический уровень достигается очень быстро,..... возможно даже до появления первой production-версии. Ну не надо пугать сложностью. Писал и двузвенки и трехзвенки и не заметил никаких сложностей при написании последних. А если что-нибудь типа OWS использовать, то у той же трехзвенки весь код будет написан на одном языке и храниться в одном месте. Кроме того, учитывая, что для серверов приложений существуют нормальные ООП языки (с чем проблема у серверов БД), то сложность всего проекта при трехзвенке может быть даже ниже. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 12:23 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyКроме того, учитывая, что для серверов приложений существуют нормальные ООП языки (с чем проблема у серверов БД), то сложность всего проекта при трехзвенке может быть даже ниже. На ООП писать "просто", а на SQL - "сложно" и поэтому трехзвенка может быть "проще". Я вас правильно понял ? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 12:51 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Alexey KudinovНа ООП писать "просто", а на SQL - "сложно" и поэтому трехзвенка может быть "проще". Я вас правильно понял ? Нет не правильно. Бизнес-логика не реализуется средствами SQL - необходимо использовать процедурные языки. Процедурные расширения большинства СУБД не являются объектно-ориентированными. А ООП языки - удобнее, особенно в больших проектах и позволяют луше структурировать код и тем самым снизить его сложность (не зря же сейчас практически все СУБД начинают к себе Java или что-то такое привинчивать). Или вы ярый противник ООП программирования? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 13:03 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey Alexey KudinovНа ООП писать "просто", а на SQL - "сложно" и поэтому трехзвенка может быть "проще". Я вас правильно понял ? Нет не правильно. Бизнес-логика не реализуется средствами SQL - необходимо использовать процедурные языки. Процедурные расширения большинства СУБД не являются объектно-ориентированными. А ООП языки - удобнее, особенно в больших проектах и позволяют луше структурировать код и тем самым снизить его сложность (не зря же сейчас практически все СУБД начинают к себе Java или что-то такое привинчивать). Или вы ярый противник ООП программирования? бизнес-логика манипулирования данными реляционной структуры? Нет пока ещё объектных БД, поэтому никто лучше РСУБД ваши данные не обработает. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 13:18 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyБизнес-логика не реализуется средствами SQL - необходимо использовать процедурные языки. О-па... А мужики то и не знают... ((с) Реклама пива). Bogdanov AndreyПроцедурные расширения большинства СУБД не являются объектно-ориентированными. А ООП языки - удобнее, особенно в больших проектах и позволяют луше структурировать код и тем самым снизить его сложность Разрешите заметить, что речь идет о системах, расчитанных на обработку данных. И, уж если, данные храняться в реляционной СУБД, то я не вижу никакой необходимости в каком-либо ООП языке, дополнительном к процедурным расширениям конкртеной СУБД. Быстрее, чем на SQL, обрабатывать реляционные данные на другом языке не получится. Bogdanov Andrey(не зря же сейчас практически все СУБД начинают к себе Java или что-то такое привинчивать). Привинтить можно что угодно. Вопрос в практической применимости и отдачи от того, что привинитили. Bogdanov AndreyИли вы ярый противник ООП программирования? На клиенте - 2мя руками за. На стороне сервера, где реализуется бизнес-логика на SQL "ярый противник". ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 13:19 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Делал как внутрикорпоративные, так и коммерческие коробочные продукты в трехзвенке. Ничего такого, чем тут пугают, замечено не было. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 13:19 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyНет не правильно Похоже, что таки правильно понял. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 13:35 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
NonsensДелал как внутрикорпоративные, так и коммерческие коробочные продукты в трехзвенке. Ничего такого, чем тут пугают, замечено не было. М.б. огласите некоторые из "коробочных"?! ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 13:39 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Разрешите заметить, что речь идет о системах, расчитанных на обработку данных. И, уж если, данные храняться в реляционной СУБД, то я не вижу никакой необходимости в каком-либо ООП языке, дополнительном к процедурным расширениям конкртеной СУБД. Быстрее, чем на SQL, обрабатывать реляционные данные на другом языке не получится. Замечу, что речи о скорости обработки данных не было. Вопрос исключительно о сложности разработки. так что давайте не отступать от темы. pkarklin Bogdanov AndreyИли вы ярый противник ООП программирования? На клиенте - 2мя руками за. На стороне сервера, где реализуется бизнес-логика на SQL "ярый противник". То есть вы признаете, что ООП - позволяет снизить сложность приложений. Но вера (или другие соображения - сейчас мы их не касаемся, так как речь исключительно о сложности) не позволяет вам использовать SQL на стороне сервера. Ну так что ж. Вы вправе усложнять себе жизнь, но не надо пугать этими сложностями других. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 14:01 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyЗамечу, что речи о скорости обработки данных не было. Вопрос исключительно о сложности разработки. так что давайте не отступать от темы. Ок. Давайте обсудим сложность. Берем элементарный пример. Есть на сервере (сервер у нас, надеюсь, все-таки реляционный) табличка "Штатное расписание", которое содержит в качестве одного из аттрибутов поле "Оклад". Задача - иметь в приложении возможность изменять оклад в процентом отношении у существующему. Что понадобиться мне: 1. Одна хп на сервере, которая принимая в качестве параметров id позиции штатного расписания и процент изменения выполняла бы один элементарный UPDATE. 2. Один компонет на клиенте, который бы в нужный момент подставлял параметры и "дергал" бы эту процедуру. Теперь прошу Вас описать как бы это выглядело при Вашем подходе. Bogdanov AndreyТо есть вы признаете, что ООП - позволяет снизить сложность приложений. Я признаю одно -"Кесареву - кесарево". Т.е. инструмент должен применяться к месту, а не использоваться только из догматических соображений. Bogdanov AndreyНо вера (или другие соображения - сейчас мы их не касаемся, так как речь исключительно о сложности) не позволяет вам использовать SQL на стороне сервера. Возможно я Вас не понял, или Вы что-то другое хотели сказать, но на стороне сервера и использую SQL и его процедурные расширения. Bogdanov AndreyНу так что ж. Вы вправе усложнять себе жизнь, но не надо пугать этими сложностями других. Вот когда Вы распишите приведенный Выше пример в своей реализации, можно будет судить о том, справедливо ли я "других пугаю". ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 14:27 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin NonsensДелал как внутрикорпоративные, так и коммерческие коробочные продукты в трехзвенке. Ничего такого, чем тут пугают, замечено не было. М.б. огласите некоторые из "коробочных"?! Удостоверяющий центр ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 14:28 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Nonsens pkarklin NonsensДелал как внутрикорпоративные, так и коммерческие коробочные продукты в трехзвенке. Ничего такого, чем тут пугают, замечено не было. М.б. огласите некоторые из "коробочных"?! Удостоверяющий центр Этот? http://www.infotecs.ru/Soft/uc.htm#2 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 14:33 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Ок. Давайте обсудим сложность. Берем элементарный пример. Есть на сервере (сервер у нас, надеюсь, все-таки реляционный) табличка "Штатное расписание", которое содержит в качестве одного из аттрибутов поле "Оклад". Задача - иметь в приложении возможность изменять оклад в процентом отношении у существующему. Что понадобиться мне: 1. Одна хп на сервере, которая принимая в качестве параметров id позиции штатного расписания и процент изменения выполняла бы один элементарный UPDATE. 2. Один компонет на клиенте, который бы в нужный момент подставлял параметры и "дергал" бы эту процедуру. Теперь прошу Вас описать как бы это выглядело при Вашем подходе. То есть процедурами вы все-таки пользуетесь? А то заливали тут про SQL. Ну а при моем подходе достаточно одной процедуры на сервере (если мы OWS используем, то это будет ХП, если Java-сервлет, то класс на Java). pkarklin Bogdanov Andrey Но вера (или другие соображения - сейчас мы их не касаемся, так как речь исключительно о сложности) не позволяет вам использовать SQL на стороне сервера. Возможно я Вас не понял, или Вы что-то другое хотели сказать, но на стороне сервера и использую SQL и его процедурные расширения. Хорошая у меня опечатка вышла. По Фрейду прямо. В моем предложении вместо SQL должно быть ООП. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 14:44 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyТо есть процедурами вы все-таки пользуетесь? А то заливали тут про SQL. Андрей, ХП еще в стандарте SQL-92 описаны. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 15:17 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Nonsens pkarklin NonsensДелал как внутрикорпоративные, так и коммерческие коробочные продукты в трехзвенке. Ничего такого, чем тут пугают, замечено не было. М.б. огласите некоторые из "коробочных"?! Удостоверяющий центр Этот? http://www.infotecs.ru/Soft/uc.htm#2 Нет ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 15:44 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Nonsens Нет Я понимаю, что краткость - сестра таланта. Но чтобы оценить сложность продукта, неплохо бы иметь о нем хоть какое-нибудь представление. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 16:25 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyТо есть процедурами вы все-таки пользуетесь? А то заливали тут про SQL. А что для Вас тогда процедура в MS SQL Server?! Bogdanov AndreyНу а при моем подходе достаточно одной процедуры на сервере (если мы OWS используем, то это будет ХП, если Java-сервлет, то класс на Java). Стоп, стоп, стоп. Как говориться, давайте определимся, кто на чем стоял. Решь шла о 3х звенке? Так? Распишите, пожалуйста, что быдет у Вас на: 1. Сервере СУБД 2. Апп. Сервере 3. Клиенте. Bogdanov AndreyВ моем предложении вместо SQL должно быть ООП. Меня терзают сомнения. О каком сервере Вы говорите - о сервере СУБД или об апп. сервере? О скольки звенной архитектуре Вы вообще говорите? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 16:30 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Bogdanov AndreyТо есть процедурами вы все-таки пользуетесь? А то заливали тут про SQL. А что для Вас тогда процедура в MS SQL Server?! Это процедура написанная на языке T-SQL. Это не язык SQL. Просто в ответ на мое замечание о том, что "Бизнес-логика не реализуется средствами SQL - необходимо использовать процедурные языки." вы проявили скепсис сделав вид, что процедурными языками не пользуетесь. Ну так вот T-SQL и есть тот самый процедурный язык. SQL таковым не является. Bogdanov AndreyНу а при моем подходе достаточно одной процедуры на сервере (если мы OWS используем, то это будет ХП, если Java-сервлет, то класс на Java). Стоп, стоп, стоп. Как говориться, давайте определимся, кто на чем стоял. Решь шла о 3х звенке? Так? Распишите, пожалуйста, что быдет у Вас на: 1. Сервере СУБД 2. Апп. Сервере 3. Клиенте. [/quot] 1. На сервере СУБД у меня будет таблица (точно такая же как и ваша). 2. На Апп. Сервере будет процедура, которая обрататывает http-запрос с клиента и выполняет соответствующий DML. 3. На Клиенте будет любой Web-браузер, который посылает http запросы. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 16:42 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyЭто процедура написанная на языке T-SQL. Это не язык SQL. ... Ну так вот T-SQL и есть тот самый процедурный язык. SQL таковым не является. Как, мне кажеться, про стандарт Вам уже намекнули. А T-SQL или что-то другое - это всего на всего реализация SQL с определенным уровнем удовлетворения требований стандарта. Сравним: Bogdanov Andrey1. На сервере СУБД у меня будет таблица (точно такая же как и ваша). 2. На Апп. Сервере будет процедура, которая обрататывает http-запрос с клиента и выполняет соответствующий DML. 3. На Клиенте будет любой Web-браузер, который посылает http запросы. и pkarklin1. Одна хп на сервере, которая принимая в качестве параметров id позиции штатного расписания и процент изменения выполняла бы один элементарный UPDATE. 2. Один компонет на клиенте, который бы в нужный момент подставлял параметры и "дергал" бы эту процедуру. Вы считаете что первое со вторым одинаково по сложности?! ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 16:58 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Как, мне кажеться, про стандарт Вам уже намекнули. А T-SQL или что-то другое - это всего на всего реализация SQL с определенным уровнем удовлетворения требований стандарта. Буду рад ссылочке на стандарт с указанием места где описано процедурное расширение. У меня под рукой есть только список зарезервированных слов из SQL-92. так вот таких слов, как if, loop, begin, end и т.п. там нет. pkarklin Bogdanov Andrey1. На сервере СУБД у меня будет таблица (точно такая же как и ваша). 2. На Апп. Сервере будет процедура, которая обрататывает http-запрос с клиента и выполняет соответствующий DML. 3. На Клиенте будет любой Web-браузер, который посылает http запросы. и pkarklin1. Одна хп на сервере, которая принимая в качестве параметров id позиции штатного расписания и процент изменения выполняла бы один элементарный UPDATE. 2. Один компонет на клиенте, который бы в нужный момент подставлял параметры и "дергал" бы эту процедуру. Вы считаете что первое со вторым одинаково по сложности?! Нет. На мой взгляд первое проще. Там требуется разработка только одного объекта, а в вашем случае - двух. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 17:15 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyБуду рад ссылочке на стандарт с указанием места где описано процедурное расширение. У меня под рукой есть только список зарезервированных слов из SQL-92. так вот таких слов, как if, loop, begin, end и т.п. там нет. http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt пп. 4.17 Procedures ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 17:36 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Alexey Kudinov http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt пп. 4.17 Procedures За ссылку большое спасибо. Но вы зря сделали стойку на слово "procedure". То что описано в этом стандарте не содержит команд управления ходом выполнения и не является процедурным языком. К T-SQL или к PL/SQL это не имеет ни какого отношения. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 18:04 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyТо что описано в этом стандарте не содержит команд управления ходом выполнения и не является процедурным языком. К T-SQL или к PL/SQL это не имеет ни какого отношения. ну что же, вам конечно виднее чем составителям стандарта, что является процедурой, а что нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 18:19 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Alexey Kudinovну что же, вам конечно виднее чем составителям стандарта, что является процедурой, а что нет. Очень не хочется грубить вам, но вы бы все таки читали то что вам пишут. Я не писал, что приведенное в стандарте определение не является определением процедуры. Стандарт не содержит (по крайней мере я их там не заметил - буду рад если вы мне покажете) конструкций для организации ветвления и циклов, которые являются необходимым условием для стуктурного программирования. Я уверен, что уважаемый pkarklin в свих ХП очень активно использует эти конструкции. И именно это я утверждал, когда писал, что бизнес-логика на SQL не реализуется. Но мне кажется, что мы отвлеклись от темы. Обсуждалась сравнительная сложность реализации двухзвенки и трехзвенки. Если есть желание пообсуждать стандарты SQL - открывайте топик. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 21:12 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
2автор поставьте 1С ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2007, 21:32 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyСтандарт не содержит (по крайней мере я их там не заметил - буду рад если вы мне покажете) конструкций для организации ветвления и циклов, которые являются необходимым условием для стуктурного программирования. Я уверен, что уважаемый pkarklin в свих ХП очень активно использует эти конструкции. И именно это я утверждал, когда писал, что бизнес-логика на SQL не реализуется. Да Вы педант, однако. Естестенно, что без применения, например, control-of-flow language тяжело реализовывать бизнес-логику на стороне сервера. Но я настолько свыкся с мыслью о ее пристутствии в T-SQL, что мне, честно говоря, и в голову не пришло, что Вы говоря о "SQL" не имели в виду ту или иную его реализацию в конкретной СУБД. IMHO, писать на "голом SQL" при строгом соблюдении стандарта, т.е. не используя специфику конкретных его реализаций (читай процедурных расширений), можно (а лучше не надо) только в случаи, когда требуется поддержка более чем одной СУБД. Но в этом случаи мы теряем главное - мощь специфичности реализации SQL в конкретной СУБД. Bogdanov AndreyОбсуждалась сравнительная сложность реализации двухзвенки и трехзвенки. Продолжим... Bogdanov AndreyНа мой взгляд первое проще. Там требуется разработка только одного объекта, а в вашем случае - двух. :) Что считать объектами. Давайте, тогда посмотрим на объем кода, который потребуется написать. В случаи с двухзвенкой: На сервере: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
На клиенте (Учитывая, что компонент, например, ADOStoredProc мы положили на форму (модуль данных) и у него настроено свойство ProcedureName): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Теперь, что будет у Вас? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 08:55 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin except on E: Exception do ShowMessage(E.Message) end; :(( ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 09:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarer pkarklin except on E: Exception do ShowMessage(E.Message) end; :(( Ну, я же пример привел... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 09:31 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Что считать объектами. Давайте, тогда посмотрим на объем кода, который потребуется написать. В случаи с двухзвенкой: /.. skipped ../ Теперь, что будет у Вас? Именно в такой постановке вопроса (вы не привели кода, который формирует саму форму) у меня будет ровно такая же процедура на сервере, как и у вас. Ну а если нарисовать действительно "работающий" пример, то у меня минуты за 3 получилось так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42.
Прогнав это на сервере (и больше не делая ничего) я увидел у себя на клиенте элементарнейшую формочку, позволяющую изменять оклады. Заметьте, что последняя процедура ничем не отличается от вашей. Вы можете построить настолько же короткий пример работающего ПО в клиент-серверной архитектуре? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:15 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Перед копированием в буфер забыл переключиться на русскую раскладку, поэтому вместо русских буковок - крякозябры. Надеюсь это не помешает пониманию. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:18 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Alexey KudinovВы можете построить настолько же короткий пример работающего ПО в клиент-серверной архитектуре? Безусловно. Alexey Kudinovвы не привели кода, который формирует саму форму Вы знаете, и кода никакого не будет. Простейщий проект клиентского приложения на Delphi вообще не будет содержать ни одной строчки кода. Все будет сделано с помощью "мышенчных" усилий. Я серьезно. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:22 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey Прогнав это на сервере (и больше не делая ничего) я увидел у себя на клиенте элементарнейшую формочку, позволяющую изменять оклады. надо заметить, что для более-менее серьёзных форм, реализующих сложный событийный функционал (и время отклика) именно Ваша технология будет проигрывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:27 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Petro123 надо заметить, что для более-менее серьёзных форм, реализующих сложный событийный функционал (и время отклика) именно Ваша технология будет проигрывать. 2 Bogdanov Andrey Кстати, да. Как при используемом Вами подходе реализуется "сложный событийный функционал"? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 10:39 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinВы знаете, и кода никакого не будет. Простейщий проект клиентского приложения на Delphi вообще не будет содержать ни одной строчки кода. Все будет сделано с помощью "мышенчных" усилий. Я серьезно. Код будет. То что он у вас формируется путем тыканья мышкой не так важно. Честно скажу, что я как раз ненавижу средс тва программирования в которых кто-то пытается спрятать от меня программный код. На мой взгляд такие средства существенно замедляют процесс разработки для опытных программистов, хотя несомненно удобны для начинающих (правда обилие таких средств привело к тому, что вокруг я вижу кучу людей, называбщих себя программистами, но при этом не знающих что такое цикл - но это отдельная тема). Заметьте, что в итоге вам еще нужно будет собрать exe-файл. Перенести его на клиентскую машину (а к нему скорее всего и набор библиотек - или какой-то installer запускать) и т.п. pkarklinКстати, да. Как при используемом Вами подходе реализуется "сложный событийный функционал"? Не знаю, что вы называете "сложным событийным функционалом". Но с целью повышения эргономики интерфейса естественно могут потребоваться клиентские обработчики. Они легко реализуется, например, на Java-script. Для любителей визуальных изысков можно использовать уже упоминавшиеся апплеты, флэш и т.п (честно скажу, мне это пока ни разу не требовалось), а для особых любителей написать специализированный клиентский модуль (кстати, при желании на том же Delphi). В любом случае сложность разработки не превышает сложность разработки клиент-серверных приложений (я кстати сам 8 лет работал в клиент-серверной архитектуре и тоже "боялся" сложностей трехзвенки). Сложность можно увидеть в необходимости администрирования двух серверов (хотя физически они могут находиьтся и на одной машине). Может быть. Мне администраторы не жаловались, а сам я все-таки занимался разработкой и в администрирование не влезал. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:01 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
ЛарионовНаша организация заказывает программное обеспечение (учетная система). Движение грузов, заявки, накладные, счета, оплаты и т.д. Каков порядок количества наименований и количества документов(за месяц например) Если наименований больше 1000 я бы не стал использовать ИЕ ЛарионовРазработчик предложил следующую модель. База данных и обработчик находятся на сервере, а пользователи получают доступ к ресурсам БД через IE. Т.е. никакого другого программного обеспечения на компах пользователей не будет, все будет подготавливаться на сервере, а мы будем просматривать, вводить и редактировать данные через Internet Explorer. ЛарионовБаза данных MS SQL 2005, обработчик собираются писать на "Визуал Студия", если это имеет значение. А где будет находиться сервер? у вас на фирме или его предложили ил на площадки у хостера? ЛарионовПодскажите пожалуйста: 1. преимущества и недостатки такого подхода. Недостатки: 1. При большом объеме данных сильная зависимость от ширины канала, т.к. по этому каналу будет бегать не только полезная информация но и весь "интерфейс" (надеюсь исполнитель будет использовать https и как следствие кеша не будет), кроме того необходимо понять, что если сервер будет стоять у вас в фирме то там должен быть хороший канал, так что бы мог держат всех ваших клиентов сразу, пусть исполнитель оценит нужную вам ширину канала, а также ширину канала для ваших пользователей. Маленький пример: номенклатура товаров 1500 наименований средняя длинна 80 символов ~ 120 КБ только размер этого списка который будет грузиться КАЖЫЙ раз когда вы открываете страницу с таким списком. 2. Завязка на IE. Если вы готовы слушать ответ "Это сделать не возможно" то это точно ваш путь. Далеко не все можно сделать в Веб среде что можно сделать в собственном клиенте. Кроме в дальнейшем для сопровождения такой системы вам понадобиться человек с знанием верстки HTML видимо со знанием ASP, это точно не уменьшит затраты. На рисование веб страниц уходит больше времени чем на рисование форм в той же дельфе. В принципе реализовать можно все но все это вы будите оплачивать из своего кармана. По поводу ActiveX, flash и т.д. это уже фактически написание клиента. Кроме того завязка на IE должна предусмотреть диапазон версий в который данная система будет работать и кто будет решать проблемы с последующими версия IE которые выйдут в будущем, это надо прописать в контракте. 3. Не очень понятен смысл такого выбора, или это была раньше веб студия, или таким образом хотят обойти лицензионные ограничения на количество MS SQL 2005. Попросите обоснование такого выбора, было бы интересно узнать чем это мотивируется. И еще пара советов 1. Пусть исполнитель использует или стандартные компоненты или бесплатные компонеты с исходным кодом, пропишите это в контракт 2. Пусть по окончании проекта предоставит все исходные коды и самого проекта и компонент в нем используемых(в том числе и графических элементов) В при невыполнении этого модификация сторонними фирмами данной системы будет не возможно и вам придеться писать систему заново, это на тот случай если исполнитель откажется чтоли делать или запросит много денег ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:20 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyКод будет. То что он у вас формируется путем тыканья мышкой не так важно. В случаи серьезного клиентского приложения на Delphi код безусловно, тоже будет. Bogdanov AndreyЧестно скажу, что я как раз ненавижу средс тва программирования в которых кто-то пытается спрятать от меня программный код. На мой взгляд такие средства существенно замедляют процесс разработки для опытных программистов, хотя несомненно удобны для начинающих (правда обилие таких средств привело к тому, что вокруг я вижу кучу людей, называбщих себя программистами, но при этом не знающих что такое цикл - но это отдельная тема). Хм... Видимо у нас разные взгляды на RAD средства, их использование и как они влияют на "процесс разработки". Bogdanov AndreyЗаметьте, что в итоге вам еще нужно будет собрать exe-файл. Перенести его на клиентскую машину (а к нему скорее всего и набор библиотек - или какой-то installer запускать) и т.п. Заметьте, что этот процесс автоматизирован! С дискеткой к клиенту, будь он хоть за три девять земель никто не бегает\по почте не посылает. Bogdanov AndreyНе знаю, что вы называете "сложным событийным функционалом". Надеюсь то же самое, что и все остальные: Event-driven programming is a computer programming paradigm in which the flow of the program is determined by user actions (mouse clicks, key presses) or messages from other programs. In contrast, in batch programming the flow is determined by the programmer. Batch programming is the style taught in beginning programming classes while event driven programming is what is needed in any interactive program. Т.е. когда из одного грида одной формы перетащили запись на поле ввода другой формы и "что-то произошло". Bogdanov AndreyОни легко реализуется, например, на Java-script. Для любителей визуальных изысков можно использовать уже упоминавшиеся апплеты, флэш и т.п (честно скажу, мне это пока ни разу не требовалось), а для особых любителей написать специализированный клиентский модуль (кстати, при желании на том же Delphi). Как-то все, что Вы перечислили, в моем сознании мало коррелируется с: Bogdanov AndreyВ любом случае сложность разработки не превышает сложность разработки клиент-серверных приложений Bogdanov AndreyСложность можно увидеть в необходимости администрирования двух серверов Заметьте, не я об этом упомянул. ;) И это "отдельная песня". ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:28 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
2 Bogdanov Andrey Не просвятите, во что выльется при используемом Вами подходе реализация классического MDI интерфейса? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:39 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Bogdanov AndreyНе знаю, что вы называете "сложным событийным функционалом". Надеюсь то же самое, что и все остальные: Event-driven programming is a computer programming paradigm in which the flow of the program is determined by user actions (mouse clicks, key presses) or messages from other programs. In contrast, in batch programming the flow is determined by the programmer. Batch programming is the style taught in beginning programming classes while event driven programming is what is needed in any interactive program. Про "событийный" - понятно. Но вот слово "сложный" меня смутило. pkarklin Bogdanov AndreyОни легко реализуется, например, на Java-script. Для любителей визуальных изысков можно использовать уже упоминавшиеся апплеты, флэш и т.п (честно скажу, мне это пока ни разу не требовалось), а для особых любителей написать специализированный клиентский модуль (кстати, при желании на том же Delphi). Как-то все, что Вы перечислили, в моем сознании мало коррелируется с: Bogdanov AndreyВ любом случае сложность разработки не превышает сложность разработки клиент-серверных приложений Код собственно обработчика событий на Java-script по сложности аналогичен тому, что вы напишете на Delphi. Механизм "привязки" обработчика к событию тоже никаких сложностей не вызывает (OnClick="MakeClickProcessing()"). Может быть список событий, формируемых Web-браузером узок? Не знаю, мне пока хватало. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:40 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyКод собственно обработчика событий на Java-script по сложности аналогичен тому, что вы напишете на Delphi. Механизм "привязки" обработчика к событию тоже никаких сложностей не вызывает (OnClick="MakeClickProcessing()"). Я, конечно, дико извиняюсь, но если Вы действительно писали когда-нибудь на Delphi, то Вы бы вряд ли были в восторге от разработки пользовательского интерфейса с помощью Java(VB) скрипта. IMHO. Bogdanov AndreyМожет быть список событий, формируемых Web-браузером узок? Не знаю, мне пока хватало. IMHO, опять же. Более убогого интерфейса, чем веб интерфейса, трудно поискать. А когда предпринимаются попытки с помощью сторонних библиотек реализовать в нем, например, некоторое подобие MDI, то от работы таких систем у меня просто волосы дыбом встают. Да и сложность увеличивется. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 11:49 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinЯ, конечно, дико извиняюсь, но если Вы действительно писали когда-нибудь на Delphi, то Вы бы вряд ли были в восторге от разработки пользовательского интерфейса с помощью Java(VB) скрипта. IMHO. Именно на Delphi я писал довольно мало. Больше пользовался Oracle Forms или Centura. И честно скажу "визуальное" программирование меня раздражает. Я с гораздо большим удовольствием (и с большей эффективностью) открываю текстовый файл с исходником на C# и редактирую его. Правда в последнее время я клиентскими интерфейсами мало занимаюсь. В основном на стороне сервера сижу. pkarklin IMHO, опять же. Более убогого интерфейса, чем веб интерфейса, трудно поискать. А когда предпринимаются попытки с помощью сторонних библиотек реализовать в нем, например, некоторое подобие MDI, то от работы таких систем у меня просто волосы дыбом встают. Да и сложность увеличивется. Ну так, как говорится о вкусах не спорят. Конечно, html-интерфейс по изысканнсти проигрывает. Но для пользователя важна не изысканность, а функциональность и эргономика. И даже средствами html получаются весьма эргономичные экраны (не любите кошек - да вы просто не умеете их готовить :) ). К тому же, как я уже отметил, для любителей визуальных изысков клиента в трехзвенке можно вполне и на Delphi написать. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 12:02 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
авторПравда в последнее время я клиентскими интерфейсами мало занимаюсь. В основном на стороне сервера сижу. в этом всё и дело. ПрикладнИк, это совсем другая область и образ мЫшления IMHO. Она ближе к пользователю и продаваемости программы IMHO ______________________________________________ Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 12:08 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Petro123 авторПравда в последнее время я клиентскими интерфейсами мало занимаюсь. В основном на стороне сервера сижу. в этом всё и дело. ПрикладнИк, это совсем другая область и образ мЫшления IMHO. Она ближе к пользователю и продаваемости программы IMHO Вы немного спутали кодировщика интерфейса с прикладником. Сейчас я занимаюсь разработкой прикладных программ, но по должности я системный архитектор и проектировщик БД. Посему кодированием собственно интерфейсов не занимаюсь, а вот серверные процедуры иногда пишу. И могу вас заверить, что я как раз гораздо ближе к пользователю, чем кодировщик интерфейсов. Кодировщик - тот пользователя и не видел-то никогда, а вот мне с пользователем приходится общаться регулярно. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 12:41 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
ваши функциональные обязанности согласно схеме IMHO правильной http://beskov.livejournal.com/14493.html ______________________________________________ Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 12:47 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Petro123ваши функциональные обязанности согласно схеме IMHO правильной http://beskov.livejournal.com/14493.html Не понял вашего утверждения. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 12:57 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey Petro123ваши функциональные обязанности согласно схеме IMHO правильной http://beskov.livejournal.com/14493.html Не понял вашего утверждения. IMHO у вас сумбур из обязанностей и терминов. Можно продолжать разговор, если отталкиваться от каких-либо стандартов и документов. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 13:33 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andreyчем кодировщик интерфейсов. Кодировщик - тот пользователя и не видел-то никогда, а вот мне с пользователем приходится общаться регулярно. нет понятия "кодировщик интерфейсов", как нет понятия слесарь-гинеколог ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 13:35 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Petro123 IMHO у вас сумбур из обязанностей и терминов. Можно продолжать разговор, если отталкиваться от каких-либо стандартов и документов. Если разговор в таком ключе, то у вас сложности с русским языком. По крайней мере фраза "ваши функциональные обязанности согласно схеме IMHO правильной" требует перевода на русский. Если вы изложите ее нормальным языком или найдете переводчика, то можно будет продолжить разговор. Но в отдельной теме, так как мои должностные обязанности не имеют никакого отношения к обсуждению трехзвенной архитектуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 13:42 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Petro123 нет понятия "кодировщик интерфейсов", как нет понятия слесарь-гинеколог Во, вот это уже по-русски (только заглавной буквы и точки недостает). Отмечу, что вы встрели в разговор с фразой про некоего "прикладнИка". Вы хотите сказать, что есть такое понятие? Или сначала с собственным сумбуром разберетесь? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 13:50 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyКонечно, html-интерфейс по изысканнсти проигрывает. Но для пользователя важна не изысканность, а функциональность и эргономика. И даже средствами html получаются весьма эргономичные экраны В том то и дело, что html-интерфейс проигрывает именно в функциональности. :( ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 14:00 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinВ том то и дело, что html-интерфейс проигрывает именно в функциональности. :( Почему так категорично? Функциональность определяется количеством "рычагов" за которые может дергать пользователь. Никто не мешает в html-интерфейсе сделать те же самые рычаги, что и в любом другом интерфейсе. И я пока не вижу особой сложности с реализацией этих рычагов. Хотя, конечно чем больше рычагов, тем сложнее (но это опять же касается любого интерфейса). А вообще мне кажется, что предмет спора понемногу испарился. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 14:05 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyА вообще мне кажется, что предмет спора понемногу испарился. Мне кажется, что каждый все-таки остался при своей точке зрения. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 14:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
главное знать плюсы и минусы технологии и оговаривать их при выборе решения. ЗЫ. Не замалчивать. ЗЫ. Было же в сказках: "Не пей Иванушка...." Удачи аффтару. ______________________________________________ Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 14:12 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinМне кажется, что каждый все-таки остался при своей точке зрения. Видимо, да. Ну а читатели может быть получили удовольствие читая нашу перебранку. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2007, 14:12 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Спасибо всем за проявленный интерес, будем думать. LSV Разработчик будет писать систему с нуля ??????? На это уйдёт 1..2года. При том, что задача весьма стандартна (банальный склад), это мероприятие ждет сомнительный успех. Почему был выбран именно этот путь ? Чем не подошли существующие решения ? Я с большим удовольствием купил-бы готовую систему, но поиски такой системы не увенчались успехом. За четыре месяца я сумел найти только одно более или менее подходящее решение, стоимостью за три рабочих места от 25 000 евро. (не слишком-ли круто???). http://www.elforsoft.ru/ В двух словах, что я хочу получить. Наше предприятие занимается перевозкой грузов в смешанном сообщении (ЖД - РЕКА - АВТО). 1. Регистрация обращения клиента, расчет стоимости перевозки и отправление предложения. 2. Заключение договора, прием заявки от клиента. 3. Оформление ЖД документов, предоставление контейнера и его погрузка. 4. Отправка на станцию перевалки (с ЖД на СУДНО), собственно погрузка на судно и отправка по воде. Здесь возможна перетарка в другой контейнер. 5. Выгрузка с СУДНА и помещение контейнера на склад в порту. Здесь также возможна перетарка. 6. Автодоставка контейнера сухопутным транспортом в город клиента. 7. Возврат порожнего контейнера. Это наши бизнес-операции которые требуют регистрации в каждом пункте, плюс еще небольшая бухгалтерия, т.е. выставление счетов, контроль оплаты и конечно расходы. Вот в принципе и все. Если кто занимался подобным, или видел как решают такие задачи другие компании, подскажите, буду благодарен. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 10:02 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Ларионов Я с большим удовольствием купил-бы готовую систему, но поиски такой системы не увенчались успехом. За четыре месяца я сумел найти только одно более или менее подходящее решение, стоимостью за три рабочих места от 25 000 евро. (не слишком-ли круто???). http://www.elforsoft.ru/ У них реализован несколько более широкий функционал, чем вам надо. Посему и стоимость такая. Но даже в вашем функционале трудоемкость можно оценить где-то в полгода для группы из трех разработчиков. Теперь умножте зарплату разработчика на 20 и увидите во что вам обойдется собственная разработка. Ну а про плюсы/минусы собственных разработок в сравнении с готовми решениями можно рассуждать веками :). ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 10:17 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
А зачем ее умножать на 20. Это что, сопутствующие расходы? Т.е. если мы договоримся на 1 000 руб. (условно) за проект, то эту сумму нужно умножить на 20, почему. Поясните. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 10:29 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
ЛарионовА зачем ее умножать на 20. Это что, сопутствующие расходы? Т.е. если мы договоримся на 1 000 руб. (условно) за проект, то эту сумму нужно умножить на 20, почему. Поясните. потому что, если операцию по удалению аппендецита поручить студенту, то это сопутствующие расходы :) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 10:50 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
ЛарионовА зачем ее умножать на 20. Это что, сопутствующие расходы? Т.е. если мы договоримся на 1 000 руб. (условно) за проект, то эту сумму нужно умножить на 20, почему. Поясните. Я написал 6 месяцев для 3 разработчиков. Итого 18 месяцев. Округляем до 20. Это расходы в случае, если вы ведете собственную разработку, то есть нанимаете на работу группу программистов. Ну а если вы с некоей организацией договор заключите на разработку, то умножать не надо - они сами умножат (только с повышающим коэффициентом :) ) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 11:09 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Ларионов Если кто занимался подобным, или видел как решают такие задачи другие компании, подскажите, буду благодарен. Не сочтите за рекламу, но раз человеку надо то: Вот эти ребята занимаются http://www.bpro.ru/solutions/logistics/ Вроде как ваша тема. У них на репликация обмен между филиалами построен. Посмотрите, может подойдет. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 12:08 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Ларионов Вот в принципе и все. Если кто занимался подобным, или видел как решают такие задачи другие компании, подскажите, буду благодарен. Отправил письмо на Ваш электронный адрес, указанный в профиле. Вкратце: мы занимались этим, лицензируем не отдельные рабочие места, а систему в целом, отзывы можем предоставить. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 12:24 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
ЛарионовСпасибо всем за проявленный интерес, будем думать. В двух словах, что я хочу получить. Наше предприятие занимается перевозкой грузов в смешанном сообщении (ЖД - РЕКА - АВТО). 1. Регистрация обращения клиента, расчет стоимости перевозки и отправление предложения. 2. Заключение договора, прием заявки от клиента. 3. Оформление ЖД документов, предоставление контейнера и его погрузка. 4. Отправка на станцию перевалки (с ЖД на СУДНО), собственно погрузка на судно и отправка по воде. Здесь возможна перетарка в другой контейнер. 5. Выгрузка с СУДНА и помещение контейнера на склад в порту. Здесь также возможна перетарка. 6. Автодоставка контейнера сухопутным транспортом в город клиента. 7. Возврат порожнего контейнера. Это наши бизнес-операции которые требуют регистрации в каждом пункте, плюс еще небольшая бухгалтерия, т.е. выставление счетов, контроль оплаты и конечно расходы. Не совсем торговый и месьма специфичный ф-л. Очень мало компаний, которые знают, что именно нужно лепить внутрь таких задач (требования к документам: внеш.вид, содержание). Готовое вряд-ли удастся найти. ВАМ НУЖЕН НЕКИЙ ФРЕЙМВОРК, КОТОРЫЙ ПРЕДНАЗНАЧЕН ДЛЯ СОЗДАНИЯ ПРОИЗВОЛЬНЫХ ИНФ.СИСТЕМ. А точнее, нужно качественное ТЗ и команда с хорошим опытом и собс.наработками. ЗЫ: У меня есть подобный универсальный фреймворк, но над ним надо ещё 2-3мес. поработать. :( Суперкратко: Delphi+MSSQL, FastReport, FastScript, дизайнер форм, произвольный код/логика на скл-сервере, часть логики на клиенте (запросы, безопасность, внешн.вид). Суть создания прикл. ф-ла: SQL-запросы, ХП, views, Tables, создание/редактирование форм и отчетов, txt-теги настроек. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 12:33 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSV ВАМ НУЖЕН НЕКИЙ ФРЕЙМВОРК, КОТОРЫЙ ПРЕДНАЗНАЧЕН ДЛЯ СОЗДАНИЯ ПРОИЗВОЛЬНЫХ ИНФ.СИСТЕМ. А точнее, нужно качественное ТЗ и команда с хорошим опытом и собс.наработками. Очень показательное уточнение - "нужен фрймворк, а точнее команда" :). Некий "фреймоворк" есть почти у любой сформировавшейся команды разработчиков, но проблема в том, что без самих разработчиков он практически бесполезен. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 12:45 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey LSV ВАМ НУЖЕН НЕКИЙ ФРЕЙМВОРК, КОТОРЫЙ ПРЕДНАЗНАЧЕН ДЛЯ СОЗДАНИЯ ПРОИЗВОЛЬНЫХ ИНФ.СИСТЕМ. А точнее, нужно качественное ТЗ и команда с хорошим опытом и собс.наработками. Очень показательное уточнение - "нужен фрймворк, а точнее команда" :). Некий "фреймоворк" есть почти у любой сформировавшейся команды разработчиков, но проблема в том, что без самих разработчиков он практически бесполезен. IMHO +1 я бы добавил, требует знания предметной области этого фрейм... (вместо или дополнительно к предметной области построения ИС) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 15:58 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyНекий "фреймоворк" есть почти у любой сформировавшейся команды разработчиков, но проблема в том, что без самих разработчиков он практически бесполезен.Ну...отчасти да, отчасти нет. Если он несложный и позволяет без особых усилий производить доработки, то зависимость от разработчиков резко снижается (при условии, что в Ф/В нет критичных глюков). Сложность многих систем существенно выше всяких разумных пределов. Именно это создало миф, что системы масштаба предприятия, это нечто сложнейшее, требующее десятков чел/лет труда при внедрении. Не даром появилась очень удачная фраза: "Сов. ERP-системы напоминают престарелых спортсменов, принимающих стероиды" (с) Для сабжевой задачи нужен только фреймворк, т.е. нечто открытое для модификации и доработок не только авторами этого ф/в . Стандартные системы (типа 1С) могут не подойти, т.к. заточены не совсем под сабж. Писать конфу с нуля - будет самописка на 1С. По сабжу экономически реальные варианты такие: 1С, ACCESS, VB, DELPHI, С# ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 17:02 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Столько гона про 3-звенку. Любой сайт в нете работающей с БД является "мегасложной" 3-х звекой с кучей клиентов. С появлением аякса все уже переходит к вебинтерфейсу, да к тому же флекс, плюс четкое разграничение специальностей. вот кстати по поводу ограничений интерфейса: http://www.fauxto.com/ что бы вопросов больше не осталось. проблема с безопасностью - да. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 17:46 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Die Fuhrer, die проблема с безопасностью - да. Подробнее можно? У меня другое мнение - как раз на трехзвенке можно добиться куда более грамотной и управляемой системы безопасности. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 17:48 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
NonsensПодробнее можно? IE может общаться только по http и https. традиционные проблемы для веб - можно тырить ид сессий, DDOS, тот же сниф, хотя https эту проблему снимает. Некоторые АБС подразумевают на стороне клиента отдельный процесс (чаще ввиде COM объекта) который подобные вещи предотвращает. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 18:08 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
[quot LSV]Ну...отчасти да, отчасти нет. Если он несложный и позволяет без особых усилий производить доработки, то зависимость от разработчиков резко снижается (при условии, что в Ф/В нет критичных глюков). [quot] Есть "фреймворки" широкого назначения - Delphi, VB, Oracle Forms и т.п. В этом месте небольшой группе энтузиастов вряд ли удастся обойти по качеcтву брэнды. Но и разработка на таком "фреймворке" требует достаточного времени. Но я под "фреймворком" понимаю более узкоспециализированные инструментарии, основанные уже на "фреймворке" широкого назначения. Например, может быть "складской фреймворк", имеющий готовые средства для учета остатков и местонахождения товаров. Или "банковский фреймворк", который имеет механизмы ведения лицевых счетов и проводок. Такой "фреймворк" может существенно сократить время разработки (так как многие вещи в нем уже сделаны), но для качественного использования такого "фреймворка" уже требуются достаточно глубокие его знания. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2007, 19:30 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Но я под "фреймворком" понимаю более узкоспециализированные инструментарии...А я понимаю как более универсальные, без к-л отраслевого уклона: * Управление справочниками * механизмы создания раличных форм и меню * безопасность * репортинг * импорт/экспорт т.е. кирпичики и блоки, без которых невозможна ниодна инф.система. Не нужно путать это с универсальными IDE/RAD (Delphi, VFP, C#....). Тут уровень абстракции немного другой. Наличие качественно подготовленных вышеперечисленных пунктов позволяет сократить время разработки в разы. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 10:27 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSV Но я под "фреймворком" понимаю более узкоспециализированные инструментарии...А я понимаю как более универсальные, без к-л отраслевого уклона: * Управление справочниками * механизмы создания раличных форм и меню * безопасность * репортинг * импорт/экспорт т.е. кирпичики и блоки, без которых невозможна ниодна инф.система. Не нужно путать это с универсальными IDE/RAD (Delphi, VFP, C#....). Тут уровень абстракции немного другой. Наличие качественно подготовленных вышеперечисленных пунктов позволяет сократить время разработки в разы. Я понял, что вы имеете в виду. Сам разрабатывал два таких "фреймворка", но не согласен с тем, что его наличие ускоряет разработку в разы. Все названые вами кирпичики существуют и без фреймворка - с разработкой справочников и управлением меню превосходно те же RAD справлаются. Безопасность неплохо продумана в любой СУБД. Ну а репортеров (в том числе и интегрированных с RAD) вообще пруд пруди. Ценность фреймворка несколько в другом - он обеспечивает единую культуру разработки. Позволяет членам команды говорить на одном языке. Это не повышает, а скорее снижает скорость начальной разработки (особенно для маленьких проектов). Но обеспечивет управляемость проектом на стандии внедрения и доработок. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 11:06 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyВсе названые вами кирпичики существуют и без фреймворка - с разработкой справочников и управлением меню превосходно те же RAD справлаются. Безопасность неплохо продумана в любой СУБД. Ну а репортеров (в том числе и интегрированных с RAD) вообще пруд пруди.Да ну ! Никакая RAD сама не строит ни справочники ни меню. А вот качественно ними управлять может только код разработчика. Если этот код качественно формализован и документирован, то скорость разработки будет очень высокой. Что касается безопасности, то она нужна не только в СУБД, но и на клиенте, например запрет редактирования/видимости конкретного поля в конкретной записи конкретным пользователем. Bogdanov AndreyЦенность фреймворка несколько в другом - он обеспечивает единую культуру разработки. Позволяет членам команды говорить на одном языке. Это не повышает, а скорее снижает скорость начальной разработки (особенно для маленьких проектов). Но обеспечивет управляемость проектом на стандии внедрения и доработок.Тут согласен. Тем более ф/в позволяет вести разработку не только авторам этого ф/в . Это очень важный момент, обеспечивающий гибкость, а следовательно и жизнеспособность проекта . ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 11:34 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey +1 LSV Что касается безопасности, то она нужна не только в СУБД, но и на клиенте, например запрет редактирования/видимости конкретного поля в конкретной записи конкретным пользователем. Очень спорно. Нужен конретный пример. Кроме того, в клиент-серверных системах доступ к СУБД идёт не только от клиентов ф\в ______________________________________________ Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде! ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 11:57 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVЧто касается безопасности, то она нужна не только в СУБД, но и на клиенте, например запрет редактирования/видимости конкретного поля в конкретной записи конкретным пользователем. Нет. Принципиально неверно. Как только побеждает эта точка зрения, сразу начинаются крики "а вот наши хитрые пользователи ходят в базу мимо интерфейса, через sqlplus, и как нам им помешать?" Безопасность должна быть в базе. Если поле невидимо - оно должно быть невидимо при коннекте этого пользователя к базе. И так далее. Точка. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 12:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVнапример запрет редактирования/видимости конкретного поля в конкретной записи конкретным пользователем. только как дополнение ("визуализация" на клиенте) к разграничению прав в самой бд. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 13:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarerБезопасность должна быть в базе. Если поле невидимо - оно должно быть невидимо при коннекте этого пользователя к базе. И так далее. Точка.В принципе согласен. Однако обеспечить это сложнее, чем в интерфейсе "спрятать/затенить". Тем более в 95% случаев для обеспечения безопасности этого достаточно. Почему тогда никто не кричит, что практически во всех западных системах сделано всё именно в интерфейсе и на сервере ВООБЩЕ НИКАКОЙ ЛОГИКИ НЕТ. ????? Делать всю логику на триггерах, вью и ХП конечно можно, но когда их (ХП и вью) станет 500..1000 то это рискует превратиться в неразгребаемую кучу кода. :) И потом....где я утверждал, что безопасность должна быть только на клиенте ? На клиенте она должна быть в дополнение к СУБД-шной . Что касается sqlplus: а кто позволяет пользователям инсталить и использовать такие вещи ??? Тогда впору обсудить стоит ли давать юзерам нативные логины/пароли ? И какие существуют другие варианты...... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 13:55 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVПочему тогда никто не кричит, что практически во всех западных системах сделано всё именно в интерфейсе и на сервере ВООБЩЕ НИКАКОЙ ЛОГИКИ НЕТ. ????? Вы не совсем правы. Например, в OEBS практически все реализовано именно на сервере. LSVДелать всю логику на триггерах, вью и ХП конечно можно, но когда их (ХП и вью) станет 500..1000 то это рискует превратиться в неразгребаемую кучу кода. :) В упомянутой выше системе их 10ки тысяч. LSVЧто касается sqlplus: а кто позволяет пользователям инсталить и использовать такие вещи ??? Ну, не обязательно это должен быть sqlplus. Это может быть, например, MS Query из состава офиса. Смысл обеспечения безопасности на сервере в том, что эта безопасноть должна существовать вне зависимости от того, каким приложением идетт коннект пользователя. LSVТогда впору обсудить стоит ли давать юзерам нативные логины/пароли ? И какие существуют другие варианты...... Эээ... "нативные" - это значит логины\пароли на доступ к СУБД, а "не нативные" - это нечто созданное разработчиком? Если да, то зачем нужно второе, если есть первое? И, например, при работе c MS SQL используется доменная аутенфикация дабы избавить пользователя от дополнительного ввода имени\пароля. Если я ничего непутаю, то такая же возможность есть и в Oracle. И пусть пользователь хоть из QA коннектиться - сделать он сможет только то, что ему разрешено "в базе". ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 14:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Вечная тема... LSVОднако обеспечить это сложнее, чем в интерфейсе "спрятать/затенить". А я бы сказал, что наоборот, проще. Но сугубо мое мнение разумеется. LSVТем более в 95% случаев для обеспечения безопасности этого достаточно. Пробовали обьяснить это аудиторам ? LSVПочему тогда никто не кричит, что практически во всех западных системах сделано всё именно в интерфейсе и на сервере ВООБЩЕ НИКАКОЙ ЛОГИКИ НЕТ. ????? Хотелось бы посмотреть на статистику. Это раз. Отстутствие логики на сервере БД - скорее следствие требования к портируемуемости. Это два. LSVДелать всю логику на триггерах, вью и ХП конечно можно, но когда их (ХП и вью) станет 500..1000 то это рискует превратиться в неразгребаемую кучу кода. :) А как влияет на "неразгребаемость" кода размещение "логики" там или сям ? LSVЧто касается sqlplus: а кто позволяет пользователям инсталить и использовать такие вещи ???а кто позволяет пользователям инсталить и использовать Excel ? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 14:17 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVВ принципе согласен. Однако обеспечить это сложнее, чем в интерфейсе "спрятать/затенить". Хм. Даже если так, "сложно" - никак не причина делать "плохо". LSVТем более в 95% случаев для обеспечения безопасности этого достаточно. Этого достаточно ровно для того, чтобы поднялись вышеозвученные крики и пошли стоны про "а вот давайте создадим запароленную роль" и прочее в ту же степь. LSVПочему тогда никто не кричит, что практически во всех западных системах сделано всё именно в интерфейсе и на сервере ВООБЩЕ НИКАКОЙ ЛОГИКИ НЕТ. ????? Не готов говорить про западные системы скопом. В OEBS практически все на уровне СУБД; в большинстве, подозреваю, почти все на уровне аппсервера (опять-таки - сервера). LSVДелать всю логику на триггерах, вью и ХП конечно можно, но когда их (ХП и вью) станет 500..1000 то это рискует превратиться в неразгребаемую кучу кода. :) Та же самая логика, разбросанная по самым непотребным местам клиентского кода, куда как менее разгребаема. LSVИ потом....где я утверждал, что безопасность должна быть только на клиенте ? На клиенте она должна быть в дополнение к СУБД-шной . Как только "вся безопасность в СУБД", на клиенте она становится тривиальной "не показывать того, что все равно нет". Это уже не безопасность, а эстетика. LSVЧто касается sqlplus: а кто позволяет пользователям инсталить и использовать такие вещи ??? Вооот, начинается сказка про хитро...ых пользователей :) LSVТогда впору обсудить стоит ли давать юзерам нативные логины/пароли ? И какие существуют другие варианты...... Угу. Обсудить "нафига создавать геморрой на пустом месте". Типа "мы не дадим пользователю пароля, пользователь поставит снифер" и прочая гонка вооружений совершенно на пустом месте. Там, где достаточно нормально сделать систему безопасности - и пусть пользователь притаскивает хоть sqlplus хоть SoftIce. Заодно подумайте, каким образом без нативных паролей будет работать тот пользователь, который например составляет руководству отчеты в каком-нибудь Crystal Reports-е. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 14:42 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinЭээ... "нативные" - это значит логины\пароли на доступ к СУБД, а "не нативные" - это нечто созданное разработчиком? Если да, то зачем нужно второе, если есть первое? Это одна из стандартных идей такой вот "клиентской безопасности". Звучит она примерно так: "а мы настоящий пароль от БД спрячем и никому-никому-никому давать не будем, так что никто не сможет подсоединиться к БД мимо приложения". ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 14:45 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Alexey Kudinov LSVПочему тогда никто не кричит, что практически во всех западных системах сделано всё именно в интерфейсе и на сервере ВООБЩЕ НИКАКОЙ ЛОГИКИ НЕТ. ????? Хотелось бы посмотреть на статистику. Это раз. Отстутствие логики на сервере БД - скорее следствие требования к портируемуемости. Это два.Кроме упомянутого выше OEBS, подавляющее число систем почти не содержат логики на сервере (речь про логику именно в СУБД) : SAP, AXAPTA, NAVISION, JDE, 1C. Причина этого понятна: * Единая среда разработки, не зависящая от СУБД * Портируемость И потом....Чего Вы все так накинулись ???? Любой вор Вам скажет, что откроет большинство замков, кот. стоят в Ваших квартирах.... И что из этой логики следует ? ВООБЩЕ НЕ СТАВИТЬ ЗАМКОВ ???? Или может превращать квартиру в помещение банка с сигнализацией и охраной ?????????? :) Это как раз по теме "СЛОЖНО" и "ПЛОХО"......... При детальном рассмотрении 90% систем, начиная с ОС, имеют серьёзные (и даже подробно описанные) проблемы с безопасностью. Может тогда вообще компьютером не пользоваться....? Может лучше вместо "СЛОЖНО" и "ПЛОХО" обсудим "ЦЕЛЕСООБРАЗНО" ? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 15:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVодавляющее число систем почти не содержат логики на сервере Однако, у них логика и не в клиенте, не в интерфейсе, как Вы писали выше. Соглашусь, мое утверждение формулировалось для двузвенки, для многозвенки надо было бы сказать "на любом сервере, чем раньше, тем лучше". LSVИ потом....Чего Вы все так накинулись ???? Любой вор Вам скажет, что откроет большинство замков, кот. стоят в Ваших квартирах.... И что из этой логики следует ? ВООБЩЕ НЕ СТАВИТЬ ЗАМКОВ ???? В первую очередь из этого следует, что "дворничиха тетя Клава, которой из ее каморки видна дверь подъезда" не является удовлетворительной защитой. LSVМожет лучше вместо "СЛОЖНО" и "ПЛОХО" обсудим "ЦЕЛЕСООБРАЗНО" ? Незачем. Крики типа вышецитированного - про хитрых пользователей - раздаются регулярно. Не просто "иногда", а именно "регулярно". Соответственно, целесообразности в этом решении нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 15:37 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarer pkarklinЭээ... "нативные" - это значит логины\пароли на доступ к СУБД, а "не нативные" - это нечто созданное разработчиком? Если да, то зачем нужно второе, если есть первое? Это одна из стандартных идей такой вот "клиентской безопасности". Звучит она примерно так: "а мы настоящий пароль от БД спрячем и никому-никому-никому давать не будем, так что никто не сможет подсоединиться к БД мимо приложения". Да это понятно. И это "решение" даже поддерживатеся, например, MS SQL - ролями приложений. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 15:38 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Дискуссия превратилась в обсуждение пословицы: "Лучше быть богатым и здоровым, чем бедным и больным". (с) А кто в таком случае назовёт хотя бы пару известных систем (кроме упомянутого OEBS), где вся безопасность лежит в СУБД ??? Причем желательно не в сервере приложений, а именно в СУБД. Просто интересно узнать..... ЗЫ: OEBS в некотором роде уникален, т.к. это редкий случай, что производитель СУБД и прикладной системы - одна фирма. MS не в счет. У нее ERP не свои, а приобретённые. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 17:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSV А кто в таком случае назовёт хотя бы пару известных систем (кроме упомянутого OEBS), где вся безопасность лежит в СУБД ??? Причем желательно не в сервере приложений, а именно в СУБД. Просто интересно узнать..... Ну я в частности, занимался разработкой такой системы. Банковская система "Афина". Строилась она именно по такому принципу - выборки данных только из view (которые фильтруют с учетом прав), модификации только процедурами (которые тоже проверяют права). И (как разработчик) могу сказать, что пользователи действительно не могли сделать ничего лишнего, по сравнению с тем, что положено из интерфейса (кривые руки некоторых разработчиков кое-где нарушали систему, по мере выявления очередных кривых рук это устраняли, но все время находились новые :(). К сожалению, даже это не спасало от softwarerкриков "а вот наши хитрые пользователи ходят в базу мимо интерфейса, через sqlplus, и как нам им помешать?" так как во многих банках безопасники наученные системами с безопасностью на уровне приложения категорически отказываются верить в то, что все защищено на уровне СУБД. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 17:52 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Petro123 Bogdanov Andrey +1 [quot LSV ]Что касается безопасности, то она нужна не только в СУБД, но и на клиенте, например запрет редактирования/видимости конкретного поля в конкретной записи конкретным пользователем. Очень спорно. Нужен конретный пример. Кроме того, в клиент-серверных системах доступ к СУБД идёт не только от клиентов ф\в Конкретный пример: Только менеджер направления может проставлять поле кредитного лимита для конкретного клиента. Причем некоторые сейлзы могут и не видеть этого клиента вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 18:59 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
MGRКонкретный пример: Только менеджер направления может проставлять поле кредитного лимита для конкретного клиента. Причем некоторые сейлзы могут и не видеть этого клиента вообще. Это, я бы сказал, слишком стандартный пример, для ответа даже не нужно привлекать большой арсенал. Могут не видеть - это row-level security. Могут проставлять - это проверка прав в процедуре простановки. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 19:06 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVДискуссия превратилась в обсуждение пословицы: "Лучше быть богатым и здоровым, чем бедным и больным". (с) Это с Вашей точки зрения так. LSVА кто в таком случае назовёт хотя бы пару известных систем (кроме упомянутого OEBS), где вся безопасность лежит в СУБД ??? Вообще странный вопрос. Странный он чем: мы вообще говоря разработчики, в чужих системах копаемся постольку-поскольку, поэтому требование провести на коленке некий глобальный анализ ставит меня в тупик. Лично мне "из известных систем" приходилось ковыряться только в OEBS, да и его я бы с радостью пропустил. LSVПричем желательно не в сервере приложений, а именно в СУБД. А вот это уже вызывает подозрение, что Вам хочется не столько истины, сколько победы в споре. Поскольку я давным-давно упомянул, что формулировал утверждение для двузвенок и для трехзвенок готов его переиначить. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 19:13 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarer Это, я бы сказал, слишком стандартный пример, для ответа даже не нужно привлекать большой арсенал. Могут не видеть - это row-level security. Могут проставлять - это проверка прав в процедуре простановки. Это скорее проверка прав во время загрузки данных. Поле становится недоступным для изменения. Ну и всплывающая подсказка показывает причину. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 19:13 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Хм. Боюсь, не понял, при чем тут загрузка данных. Возможно, из-за незнания особенностей того бизнес-процесса, который Вы имеете в виду. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 19:14 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarerХм. Боюсь, не понял, при чем тут загрузка данных. Возможно, из-за незнания особенностей того бизнес-процесса, который Вы имеете в виду. Да простейший пример. Пользователь отрывает карточку конкретного клиента. В зависимости от его прав: - видны те или иные поля - доступно редактирование тех или иных полей - доступны те или иные действия (удаление, приостановка и пр.) Конечно возможен вариант, когда пользователь выбирает действие "Удалить", вызывается соответствующая процедура, которая возвращает ошибку. Однако гораздо более удобным кажется случай, если пользователь сразу не может нажать соответствующую кнопку или выбрать соответствующий пункт меню. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 19:35 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
MGRДа простейший пример. .... Хм. Насколько я понимаю, этот простейший пример уже никак не связан с загрузкой данных. MGRКонечно возможен вариант, когда пользователь выбирает действие "Удалить", вызывается соответствующая процедура, которая возвращает ошибку. ..... Не вижу смысла комментировать то, на что уже было отвечено: из ранее сказанного softwarerКак только "вся безопасность в СУБД", на клиенте она становится тривиальной "не показывать того, что все равно нет". Это уже не безопасность, а эстетика. pkarklinтолько как дополнение ("визуализация" на клиенте) к разграничению прав в самой бд. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2007, 20:41 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarer Безопасность должна быть в базе. Если поле невидимо - оно должно быть невидимо при коннекте этого пользователя к базе. И так далее. Точка. скажите, каким образом можно разделить в этмо случае права не на уровне полей, а на уровне записей. Ну если одному пользователю разрешено менять в таблице А записи , где поле DIV_ID =100, но никакие другие? мне приходит в голову, только триггеры с проверкой .. но кажется это не лучший вариант ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 04:37 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Mainframeскажите, каким образом можно разделить в этмо случае права не на уровне полей, а на уровне записей. Ну если одному пользователю разрешено менять в таблице А записи , где поле DIV_ID =100, но никакие другие? мне приходит в голову, только триггеры с проверкой .. но кажется это не лучший вариант Некоторые СУБД (например, Oracle) имеют встроенную поддержку row-level security, в других (например, MS SQL) придеться самому строить ту или иную реализацию ACL (access control list). ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 08:17 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Mainframe скажите, каким образом можно разделить в этмо случае права не на уровне полей, а на уровне записей. Ну если одному пользователю разрешено менять в таблице А записи , где поле DIV_ID =100, но никакие другие? мне приходит в голову, только триггеры с проверкой .. но кажется это не лучший вариант У ва же не возникает проблем с реализацией такой проверки на уровне приложения? А что мешает ровно тот же код написать и в хранимой процедуре, которая модификацию делает? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 09:25 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey У ва же не возникает проблем с реализацией такой проверки на уровне приложения? А что мешает ровно тот же код написать и в хранимой процедуре, которая модификацию делает? Да нет .. мы вообще-то пишем трехуровневые приложения .. у нас управления правами по другому принципу ..просто стало интересно. И потмо причем тут ХП ? если приложение 2-х уровневое, то пользователь имеет доступ напрямую к таблице. Он не будет обращаться к ХП (если он злостный товарищ). Его могут остановить триггеры к примеру, ну или что-то другое .. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 09:36 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
MainframeИ потмо причем тут ХП ? если приложение 2-х уровневое, то пользователь имеет доступ напрямую к таблице. Ошибаетесь. В тех БД, в которых нет адекватной поддержки row-level security, пользователь как правило не имеет доступа напрямую к таблице. Вместо этого ему дается доступ к view или ХП, реализующим проверку прав. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 09:43 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
MainframeИ потмо причем тут ХП ? если приложение 2-х уровневое, то пользователь имеет доступ напрямую к таблице. Он не будет обращаться к ХП (если он злостный товарищ). Его могут остановить триггеры к примеру, ну или что-то другое .. Гм... Не должен пользователь иметь никакого доступа к таблицам. Он вообще не должен знать как устроена модель данных. Все взаимодействие идет через хп, вью, функции. Даже если в системе и не требуется поддержка row-level security. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 10:10 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinГм... Не должен пользователь иметь никакого доступа к таблицам. Это уже песня из серии "наши недостатки - самые идеологически правильные недостатки в мире". pkarklinОн вообще не должен знать как устроена модель данных. Все взаимодействие идет через хп, вью, функции. Даже если в системе и не требуется поддержка row-level security. Угу. После чего начинаются вопросы "а вот начальство просит меня состряпать пару отчетов над данными купленной системы...." ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 10:12 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarerЭто уже песня из серии "наши недостатки - самые идеологически правильные недостатки в мире". Ну, если скрытие модели данных для Вас является недостатком - Ваше право так считать. Я противник предоставления доступа непосредственно к таблицам бд. Вне контекста "идеологически правильных недостатков" конкретной СУБД. softwarerУгу. После чего начинаются вопросы "а вот начальство просит меня состряпать пару отчетов над данными купленной системы...." Это как? Начальство, например, финансовый директор, "просит состряпать", например, финансового аналитика отчет "по данным системы"? Это значит финансовый аналитик SELECTы будет писать? Вы меня немного удивляете. Я не сталкивался, за редким исключением, на своем веку с такими пользователями. Готовую выборку в экселе "покрутить" еще куда не шло. Но чтоб стряпать самому отчеты "по данным" купленной (да хоть разработанной) системы... Ну, не знаю, что у Вас за пользователи. Да и потом, я лишь констатировал факт, что закрыт доступ к таблицам (что скрывает модель данных), но существующие view позволяют таким продвинутым пользователям получать информацию, представленную из модели в "удобоваримом виде" в соответствии с имеющимися полномочиями. Например, сущность "Платежное поручение" "состоит" из 3х таблиц (эдакий вариант наследования): Объект->Документ->Платежное поручение. Пользователю доступно представление "Платежное поручение", которое джоинит эти три таблицы и дает полный комплект аттрибутов сущности. Это то, что касается выборки. А есть набор хп для добавления, изменения, удаления. Мне не совсем понятны Ваши высказывани. Точнее вложенный в них смысл. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 10:28 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarerНачальство, например, финансовый директор, "просит состряпать", например, финансового аналитика отчет "по данным системы"? Это значит финансовый аналитик SELECTы будет писать? Вы меня немного удивляете. Я не сталкивался, за редким исключением, на своем веку с такими пользователями. Готовую выборку в экселе "покрутить" еще куда не шло. Но чтоб стряпать самому отчеты "по данным" купленной (да хоть разработанной) системы... Ну, не знаю, что у Вас за пользователи.На сей раз Вы меня удивляете. :) Очень частая практика, что у клиента есть квалифицированный сотрудник, который осуществляет поддержку и ЗАПРОСТО может делать внешние отчеты над покупной системой. Чаще всего это обычный ИТ-шник эникейщик или аналитик. :) Более того ! Над покупной системой рано или поздно всегда нарастает ком из внешних отчетов, процедур, приблуд и т.д. Часто для этого используют ACCESS, т.к. в нем удобный и конструктор и репортер. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 10:44 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
....А вот это уже вызывает подозрение, что Вам хочется не столько истины, сколько победы в споре.Нет. Просто я утверждаю, что в данном вопросе не может быть одной абсолютной истины и этому есть множество доказательств, пусть даже порой спорных. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 10:54 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
а почему все говорят про вью, если вопрос идет о разделение прав на изменения по записям. как поняла, если способ в Оракле. Если пользователь имеет логин и пароль и ему разрешено писать в таблицу, то он ведь может записать в те записи этой таблицы, которые ему не разрешены, если не используется как вариант триггеры для записи, кодирование пароля пользователя системы (что бы он не знал анстоящего пароля) или какие-то дополлнительные средства . вот в MS мне неизвестный средства. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 10:55 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Mainframeа почему все говорят про вью, если вопрос идет о разделение прав на изменения по записям. Потому что вью как раз можно использовать для реализации row-level security. Джоинясь во вью с таблицей (таблицами) ACL, где для пользователя (группы) пользователя прописаны горизонтальные фильтры. MainframeЕсли пользователь имеет логин и пароль и ему разрешено писать в таблицу, то он ведь может записать в те записи этой таблицы, которые ему не разрешены, Кто ж ему даст разрешение "писать в таблицу"?! Запись идет через хп, где опять же проверяются таблицы ACL. Да и без хп можно обойтись, используя опцию WITH CHECK OPTION при создании вью. Тогда модификацию через вью можно произвести только тех данных, которые подпадают под инструкцию SELECT вью. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 11:08 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVОчень частая практика, что у клиента есть квалифицированный сотрудник, который осуществляет поддержку и ЗАПРОСТО может делать внешние отчеты над покупной системой. Чаще всего это обычный ИТ-шник эникейщик или аналитик. :) Все-таки не надо путать разработчика отчетов с пользователем программы. Этот квалифицированый сотрудник уже не является пользователем и было бы странно, если бы в своей работе он ограничивался интерфейсами, которые предназначены пользователям. У него наверняка будет возможность воспользоваться DBA-доступом или чем-то аналогичным и создать необходимые для его отчетов вью. И уж наличие у службы поддержки DBA-доступа никак не оправдывает наличие дыр в безопасности. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 11:23 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinНу, если скрытие модели данных для Вас является недостатком - Ваше право так считать. Я противник предоставления доступа непосредственно к таблицам бд. Вне контекста "идеологически правильных недостатков" конкретной СУБД. Хм. К сожалению, попытка обсудить этот момент обречена вылиться во флейм, тупой и беспощадный. pkarklinЭто как? Начальство, например, финансовый директор, "просит состряпать", например, финансового аналитика отчет "по данным системы"? Это значит финансовый аналитик SELECTы будет писать? Вы меня немного удивляете. Я не сталкивался, за редким исключением, на своем веку с такими пользователями. Готовую выборку в экселе "покрутить" еще куда не шло. Но чтоб стряпать самому отчеты "по данным" купленной (да хоть разработанной) системы... Ну, не знаю, что у Вас за пользователи. Скажу так: за всю свою трудовую практику я не сталкивался с более-менее большой системой, к которой заказчик не приписывал бы дополнительных отчетов. При этом платить вендору за каждый новый отчет и пару месяцев ждать результата заказчика чаще всего не устраивает, поэтому в большинстве случаев отчеты приделываются собственными силами - либо штатными айтишниками, либо грамотными людьми из числа пользователей. Вообще меня удивляет Ваше представление об отчетах как "селекты писать". Скажем, к тому же OEBS есть EUL для Oracle Discoverer-а; у того заказчика, у которого я плотно общался с OEBS-ом, в штате был специальный сотрудник, главной и практически единственной задачей которого было писать дискаверные отчеты над OEBS-ом. pkarklinДа и потом, я лишь констатировал факт, что закрыт доступ к таблицам (что скрывает модель данных), но существующие view позволяют таким продвинутым пользователям получать информацию, представленную из модели в "удобоваримом виде" в соответствии с имеющимися полномочиями. view далеко не всегда позволяют получить информацию в удобоваримом для произвольного отчета виде. В случае, если нет других средств ограничения доступа, конечно, придется действовать именно так; при наличии нормальной RLS работать только через view - все равно что ремонтировать часы руками в перчатках. Сказку про то, что некий гуру способен написать такие view, что они сгодятся для абсолютно любых отчетов, да еще и не будут тормозить, я выслушивать не очень настроен. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 11:25 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
MainframeЕсли пользователь имеет логин и пароль и ему разрешено писать в таблицу, то он ведь может записать в те записи этой таблицы, которые ему не разрешены Как Вам сказать.... это высказывание по уровню продуманности и истинности аналогично примерно следующему: "ну раз пользователь имеет логин и пароль для подключения к базе, он может писать в любые таблицы в этой базе". Mainframeкодирование пароля пользователя системы (что бы он не знал анстоящего пароля) Да забудьте этот бред конца позапрошлого века. Технологии защиты, базирующиеся на "пользователь чего-то не знает" заведомо левы и дырявы, такие системы следует выбрасывать не глядя. Ну кто, черт возьми, помешает мне поставить снифер, или расковырять exe-шник, и поймать Ваш "супернадежноспрятанныйнастоящийпароль"? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 11:36 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarerТехнологии защиты, базирующиеся на "пользователь чего-то не знает" заведомо левы и дырявы, такие системы следует выбрасывать не глядя. Ну все-таки все системы защиты базируются на том, что пользователь не знает паролей сисадмина, дба и иже с ними :) Но прятать от пользователя его собственный пароль, или "запретить" SQL*Plus - занятие бессмысленное. Вот только как бы это офицерам безопасности объяснить, так чтобы они поняли? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 11:45 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarerХм. К сожалению, попытка обсудить этот момент обречена вылиться во флейм, тупой и беспощадный. А м.б. стоит выснить свои точки зрения и на этот вопрос, не сваливаясь на флэйм? softwarerСкажу так: за всю свою трудовую практику я не сталкивался с более-менее большой системой, к которой заказчик не приписывал бы дополнительных отчетов. При этом платить вендору за каждый новый отчет и пару месяцев ждать результата заказчика чаще всего не устраивает, поэтому в большинстве случаев отчеты приделываются собственными силами - либо штатными айтишниками, либо грамотными людьми из числа пользователей. Не спорю, что такой человек (группа) существует в любой организации, использующей то или иное решение. И этот человек (группа) наделен определенными полномочиями в бд, например, имеет право читать из всех таблиц (например, в MS SQL достаточно включить его в роль бд db_datareader ). Но это человек, умеющий это делать и понимающий свою ответственность. Но я не вижу из этого прямого следствия необходимости прямого доступа к таблицам остальных рядовых (читай неграмотных) пользователей. softwarerВообще меня удивляет Ваше представление об отчетах как "селекты писать". Скажем, к тому же OEBS есть EUL для Oracle Discoverer-а; у того заказчика, у которого я плотно общался с OEBS-ом, в штате был специальный сотрудник, главной и практически единственной задачей которого было писать дискаверные отчеты над OEBS-ом. Под "аналитик SELECTы будет писать" понимался необходимый уровень квалификации того самого человека (группы), занимабщегося "добычей данных". А не то, что любой отчет м.б. составлен на основании одного селект. Мне казалось это очевидным. Наличие того или иного средства построения отчетности опять же для меня не предьявляет никаких требований к прямому доступу к таблицам (если этого только (в силу ограничений) не требуют сами средства построения отчетности). Даже получив с сервера резалтсет от обычного SELECTа и использовав Excel можно получить очень "сложный" отчет. Но это уход обсуждения от изначального русла. Хотите обсудить возможности и требования средств порстроения отчетности - с удовольствием поучаствую. softwarerview далеко не всегда позволяют получить информацию в удобоваримом для произвольного отчета виде. М.б. это зависит от уменя строить эти самые вью? Помниться мне во времена работы с OEBS для построения оборотно-сальдовой ведомости мне хватило запроса, а программисты наворотили кучу кода на PL\SQL c курсорами и т.п. softwarerВ случае, если нет других средств ограничения доступа, конечно, придется действовать именно так; при наличии нормальной RLS работать только через view - все равно что ремонтировать часы руками в перчатках. Про "наличие нормальной RLS" никто и не спорит. Но я чуть Выше приводил пример другого использования вью. И Ваше высказывание "ремонтировать часы руками в перчатках" кажеться мне по крайней мере безапеляционным. Зачем мне каждый раз, имея прямой доступ к таблицам джоинить Объкт, Документ и Платежное поручение, если у меня есть готовое вью Платежное поручение? И, кроме получения самих "полных" сущностей вью могут использоваться для получения часто используемых объединений. Мне казалось это очевидным. softwarerСказку про то, что некий гуру способен написать такие view, что они сгодятся для абсолютно любых отчетов, да еще и не будут тормозить, я выслушивать не очень настроен. А я и не планировал Вам ее расказывать. Запрограммировать все сразу на все случаи жизни не получиться, но это опять не кажеться мне аргументом для предоставления прямого доступа пользователей к таблицам. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 11:52 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyНу все-таки все системы защиты базируются на том, что пользователь не знает паролей сисадмина, дба и иже с ними :) По-хорошему - не только на этом, а еще и на том, что пользователь не может проникнуть за консоль, с которой эти пароли будут действовать :) Да, я вполне осознанно сформулировал утверждение "коротко и не совсем точно", но думаю, при минимальном желании понятно, что к чему. Базовый принцип - злоумышленник, даже обладая полной информацией о структуре и реализации защиты, не должен иметь возможность ее легко пройти. В частности, если в exe-шнике зашит пароль к application role, или "шифровалка пароля пользователя", пройти такую защиту - вопрос сугубо технический. Конечно, его можно осложнить, выламывая из компьютера дисководы, usb-порты и так далее, но тем не менее, систему, полагающуюся только на это..... Я люблю вспоминать цитату из Хайнлайна: - Знаешь, как мы называем дамочек, полагающихся на календарный метод? Мы [медсестры] называем их "матерями" Bogdanov AndreyНо прятать от пользователя его собственный пароль, или "запретить" SQL*Plus - занятие бессмысленное. Вот только как бы это офицерам безопасности объяснить, так чтобы они поняли? C точки зрения максимальной безопасности оно не то чтобы полностью бессмысленно, свою лепту оно вносит, особенно в пункте "а что если в вашем хваленом оракле есть дыра в безопасности". ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 12:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
C точки зрения максимальной безопасности компьютеры вообще бессмысленны, т.к. почти везде есть критичные дыры, информацию о которых можно найти в инете за 5минут. ЭТО КАКОЙ-ТО ТУПИК ! ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 12:33 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinА м.б. стоит выснить свои точки зрения и на этот вопрос, не сваливаясь на флэйм? Хм. В обсуждении вдвоем-втроем-вчетвером мы вполне возможно и смогли бы так пройти. Но по опыту предыдущих обсуждений, неизбежен сценарий типа следующего: - приходит собеседник со стороны и выдвигает не очень взвешенное утверждение - кто-нибудь из двоих-троих-четверых отвечает ему коротко и без реверансов - кто-нибудь другой из двоих-троих-четверых забывает учесть контекст, в котором делалось каждое из утверждений, возмущается чем-нибудь типа "ну мы же это сейчас обсуждаем, а вы сказали, словно так и есть и другого не может быть", выдвигает встречное.. яркое утверждение итп. - начинается флейм - когда все устают, смотрим источники и выясняем, что флеймить-то было не о чем. pkarklinНе спорю, что такой человек (группа) существует в любой организации, использующей то или иное решение. И этот человек (группа) наделен определенными полномочиями в бд, например, имеет право читать из всех таблиц (например, в MS SQL достаточно включить его в роль бд db_datareader ). Но это человек, умеющий это делать и понимающий свою ответственность. Но я не вижу из этого прямого следствия необходимости прямого доступа к таблицам остальных рядовых (читай неграмотных) пользователей. То есть Вы предлагаете стрелять из пушки по воробьям. Здесь будет уместна аналогия с камерой хранения. Представьте себе самую обычную камеру хранения; каждый пользователь может подойти, открыть свою ячейку, положить-взять вещи. Это примерно та система, которую полагаю нормальной я. Вы же говорите: не надо давать пользователям прямой доступ к ячейкам. Давайте лучше заведем кладовщика, который будет осознавать свою ответственность и носить вещи в ячейки и обратно. Для этого мы дадим ему универсальную отмычку, подходящую к любой ячейке. Так вот, лично я вижу в этом следующие недостатки: во-первых, рядовым пользователям неудобно, во-вторых, кладовщик является слабым звеном, может и сам спереть вещи, и оказаться уязвимым для любого постороннего. Давайте отойдем от аналогии и посмотрим, во что выливается этот принцип в случае ИС. Во-первых, довольно часто тот, кто разрабатывает отчеты, не должен иметь доступ к "действительно секретной информации". Вы предлагаете наплевать на этот принцип; в результате, чтобы обеспечить это требование, придется извращаться (скажем, делать отдельную базу, выгружать туда часть данных, делать этот отчет там). Во-вторых, после того, как ваш суперпользователь сделает отчет, снова вылезает вопрос безопасности, вылезает вот в каком аспекте. Если у пользователя есть доступ к таблицам, ограниченный RLS, выполнение отчета не требует никаких специфических прав. Я даю ему этот отчет в любом виде (скажем, как селект в экселе) и он получает эти данные, автоматически обрезанные согласно его правам. Если его права меняются - мне ничего не надо делать, отчет автоматом учтет эти изменения. Теперь, допустим, ваш суперпользователь сделал отчет в виде view или хранимки, грантовал этот объект нужным пользователям, точно так же положил на экселевский лист. Что происходит дальше? А происходит постоянный риск неправомерного доступа к данным. Почему: во-первых потому, что в каждом месте, где суперпользователь напрямую обращается к таблицам, он должен будет самостоятельно же резать их сообразно выданным правам. Во-вторых потому, что каждый раз приделывать полную проверку прав - очень большая работа; можно гарантировать, что она либо будет сделана с ошибками, либо, что на самом деле почти наверняка - будет выполнена в урезанном варианте, в духе "этот отчет нужен только для начальников отделов, поэтому права для секретарей начальников отделов проверять не будем". Ну а дальше при каждом изменении это предположение может стать неверным. К чему пришли? К тому, что суперпользователь не является адекватной заменой RLS. pkarklin softwarerВообще меня удивляет Ваше представление об отчетах как "селекты писать". Скажем, к тому же OEBS есть EUL для Oracle Discoverer-а; у того заказчика, у которого я плотно общался с OEBS-ом, в штате был специальный сотрудник, главной и практически единственной задачей которого было писать дискаверные отчеты над OEBS-ом. Под "аналитик SELECTы будет писать" понимался необходимый уровень квалификации того самого человека (группы), занимабщегося "добычей данных". А не то, что любой отчет м.б. составлен на основании одного селект. Мне казалось это очевидным. Хм. Судя по последнему ответу, Вы совершенно не поняли сказанного и отвечаете невесть на что. Oracle Discoverer - это инструмент, позиционирующийся как средство для аналитиков, позволяющее не писать селекты. Попросту говоря, визуальный конструктор отчетов. Какая "необходимая квалификация" для этого необходима? pkarklinНаличие того или иного средства построения отчетности опять же для меня не предьявляет никаких требований к прямому доступу к таблицам .... Но это уход обсуждения от изначального русла Хм. Если Вы посмотрите, на какой Ваш тезис отвечает упоминание дискаверера, обнаружите, что обоснованием "требований к прямому доступу" оно не позиционировалось, и не надо представлять его так. Уход в сторону сделали Вы, сказав про "аналитики будут писать селекты", я отвечаю именно на это, если теперь Вам этот уход не нравится - давайте закроем направление. Далее, по поводу "обоснования требований прямого доступа". Простите, но я заранее уверен, что беседовать с Вами на эту тему бесполезно, просто потому, что Вы давным-давно заняли неконструктивную позицию и вряд ли с нее сдвинетесь. Аналогия здесь примерно следующая: Вы привыкли пользоваться амбарным замком, и будете вешать его даже на дверь с электронным, говоря при этом "обоснования требования открывания двери кнопкой с брелка мне так и не предоставили". Так вот, истина в том, что обоснования необходимости нет, действительно, можно продолжать пользоваться амбарным замком. Вопрос исключительно в удобстве и качестве результата, но это количественная категория, и на нее можно сколь угодно долго отвечать "а амбарный тоже запирает дверь, так что он ничем не хуже". pkarklin softwarerview далеко не всегда позволяют получить информацию в удобоваримом для произвольного отчета виде. М.б. это зависит от уменя строить эти самые вью? Несколькими строками ниже Вы пообещали не рассказывать сказок.... нет, вру, сказали, что "не планировали рассказывать". pkarklin softwarerВ случае, если нет других средств ограничения доступа, конечно, придется действовать именно так; при наличии нормальной RLS работать только через view - все равно что ремонтировать часы руками в перчатках. Про "наличие нормальной RLS" никто и не спорит. Но я чуть Выше приводил пример другого использования вью. И Ваше высказывание "ремонтировать часы руками в перчатках" кажеться мне по крайней мере безапеляционным. Зачем мне каждый раз, имея прямой доступ к таблицам джоинить Объкт, Документ и Платежное поручение, если у меня есть готовое вью Платежное поручение? Скажите пожалуйста, Павел, Вы по-русски читать умеете? Слово "только" в квоте видите? Как Вы думаете, оно там для красоты или все же с каким-то смыслом? Вы в очередной раз в наших спорах упираетесь в какой-то махровый максимализм, не видите разницы между "существуют случаи", "иногда", "часто" и "всегда". И при этом рассматриваете мое утверждение как "безапелляционное" :) Объясняю еще раз, максимально доступно: я нигде не говорил, что следует отказаться от view там, где они удобны. Я утверждаю, что работа только через view не позволит оптимально решить все задачи. Приведенный Вами пример доказывает только то, что существуют некоторые задачи, для которых view удобны, чего я никогда не оспаривал. К тому, что обосновываю я - этот пример никакого отношения не имеет; он не способен ни подтвердить, ни опровергнуть мой тезис. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 13:04 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
При обсуждении методов безопасности при работе с АИС оперируйте согласованными понятиями 1. От кого защищаетесь 1.1 Уровень знаний 1.2 Уровень полномочий внутри АИС 1.3 Уровень обеспечения и полномочий внутри организации 2. От чего защищаетесь 2.1 Уровень оснащенности 2.2 Уровень доступа по временни 2.3 Уровень доступа по территориальности ps: ответьте на вопросы возможность пожара относиться к безопасности? возможность маскишоу относиться к безопасности? возможность засланного-админа относиться к безопасности? LSVт.к. почти везде есть критичные дыры, информацию о которых можно найти в инете за 5минут. бред ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 13:22 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarer Во-вторых, после того, как ваш суперпользователь сделает отчет, снова вылезает вопрос безопасности, вылезает вот в каком аспекте. Если у пользователя есть доступ к таблицам, ограниченный RLS, выполнение отчета не требует никаких специфических прав. Я даю ему этот отчет в любом виде (скажем, как селект в экселе) и он получает эти данные, автоматически обрезанные согласно его правам. Если его права меняются - мне ничего не надо делать, отчет автоматом учтет эти изменения. Теперь, допустим, ваш суперпользователь сделал отчет в виде view или хранимки, грантовал этот объект нужным пользователям, точно так же положил на экселевский лист. Что происходит дальше? А происходит постоянный риск неправомерного доступа к данным. Почему: во-первых потому, что в каждом месте, где суперпользователь напрямую обращается к таблицам, он должен будет самостоятельно же резать их сообразно выданным правам. Во-вторых потому, что каждый раз приделывать полную проверку прав - очень большая работа; можно гарантировать, что она либо будет сделана с ошибками, либо, что на самом деле почти наверняка - будет выполнена в урезанном варианте, в духе "этот отчет нужен только для начальников отделов, поэтому права для секретарей начальников отделов проверять не будем". Ну а дальше при каждом изменении это предположение может стать неверным. К чему пришли? К тому, что суперпользователь не является адекватной заменой RLS. Ну на эту же ситуацию можно взглянуть и по другому. Например, ни одному бухгалтеру в банке не нужно (и не можно) знать информацию об остатках по всем счетам. Отлично, мы настроим RLS требуемым образом. Потом, захочется получить баланс банка (который делается одним довольно простым select), и что каждый бухгалтер будет свой собственный баланс получать? По счетам, которые ему доступны. Должен отметить, что именно такие ситуации постоянно встречаются - для аналитической отчетности почти всегда требуется аггрегаты по более широкому спектру данных, чем доступные для непосредственной работы. А вот для оперативной отчетности (когда надо "напечатать" один живущий в СУБД "объект") почти всегда достаточно тех самых стандартных вью, о которых говорит pkarklin. В любом случае, человек, который разработывает отчеты (не знаю, почему его обозвали суперпользователем, если это обычный разработчик) должен задуматься о том, каким образом должна сказываться система безопасности на данных, которые его отчет представляет. И никакая RLS здесь не поможет. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 13:36 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
KGP LSVт.к. почти везде есть критичные дыры, информацию о которых можно найти в инете за 5минут. бред Неужели !? Немалое кол-во дыр есть в ОС, СУБД, приложениях. Многие из дыр хорошо описаны на хакерских сайтах. Там же встречаются методики, коды, эксплойты по проникновению в эту "дыру". Даже страшно читать..... :) Именно поэтому возникла аксиома, что неломаемых программ нет. А смешно то, что систем, удовлетворяющих вышеописанным требованиям - раз два и обчелся. Никто ниодной так и не упомянул. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 14:05 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
LSVА смешно то, что систем, удовлетворяющих вышеописанным требованиям - раз два и обчелся. Никто ниодной так и не упомянул. Это вы про какие требования? Про вот эти: LSVпару известных систем (кроме упомянутого OEBS), где вся безопасность лежит в СУБД ???? Я например, просто не знаю какие системы вы считаете известными. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 14:10 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyНу на эту же ситуацию можно взглянуть и по другому. Можно. Правда, не знаю, зачем каждому бухгалтеру общий баланс банка, но готов принять как условный пример. Но! Одно дело - контролируемое предоставление доступа к дополнительным полномочиям ("плюс общий баланс банка"), другое дело - тонкое место, которое будет регулярно рваться. Bogdanov AndreyДолжен отметить, что именно такие ситуации постоянно встречаются - для аналитической отчетности почти всегда требуется аггрегаты по более широкому спектру данных, чем доступные для непосредственной работы. Скажу так: те два года, что я работал именно с аналитикой и аналитической отчетностью, постоянно вставала именно задача ограничения доступа ("... и чтоб ни чучелом, ни тушкой не увидел цифр по другому департаменту...") Bogdanov AndreyА вот для оперативной отчетности (когда надо "напечатать" один живущий в СУБД "объект") почти всегда достаточно тех самых стандартных вью, о которых говорит pkarklin. Это да. Но такие отчеты как правило есть в базовой поставке. Bogdanov AndreyВ любом случае, человек, который разработывает отчеты (не знаю, почему его обозвали суперпользователем, если это обычный разработчик) Потому что pkarklin предложил дать этому разработчику привилегию SELECT ANY TABLE (точнее, ее mssql-ный аналог). А это уже никак не "обычный разработчик", если конечно "обычный разработчик" != "дба". Bogdanov Andreyдолжен задуматься о том, каким образом должна сказываться система безопасности на данных, которые его отчет представляет. И никакая RLS здесь не поможет. Вы смотрите с точки зрения разработчика, а посмотрите еще и с точки зрения безопасника. RLS поможет в чем: в том, что для того, чтобы увидеть "недоступные в оперативной работе данные" придется прилагать специальные усилия. То есть действует принцип "запрещено все, что не разрешено". В то же время ее отсутствие приведет к тому, что каждый прямой доступ к объекту будет тонким местом в безопасности. Ну а использование только доступа через вьюхи, при адекватной безопасности будет плохо с точки зрения удобства-скорости. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 14:14 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarerТо есть Вы предлагаете стрелять из пушки по воробьям. Извините, я ничего не предлагал... Я всего лишь указал возможное решение предоставления доступа к физичесим таблицам бд, если система спроектирована без оного: pkarklinнапример, имеет право читать из всех таблиц (например, в MS SQL достаточно включить его в роль бд db_datareader). softwarerПредставьте себе самую обычную камеру хранения; каждый пользователь может подойти, открыть свою ячейку, положить-взять вещи. Это примерно та система, которую полагаю нормальной я. Вы же говорите: не надо давать пользователям прямой доступ к ячейкам. И у меня такая же нормальная камера хранения. Только без прямого доступа к таблицам. Пользователя оперируют другими типами объектов. Физическая модель данных им не доступна. softwarerДавайте лучше заведем кладовщика, который будет осознавать свою ответственность и носить вещи в ячейки и обратно. Для этого мы дадим ему универсальную отмычку, подходящую к любой ячейке. Так вот, лично я вижу в этом следующие недостатки: во-первых, рядовым пользователям неудобно, во-вторых, кладовщик является слабым звеном, может и сам спереть вещи, и оказаться уязвимым для любого постороннего. Я вижу здесь те же недостатки и ни в одной из моих систем, к которых у пользователя нет доступа к таблицам, нет такого кладовщика. И рядовые пользователи могут в пределах своих полномочий пользоваться объектами бд (не таблицами) и я не вижу здесь никаких неудобств. softwarerВо-первых, довольно часто тот, кто разрабатывает отчеты, не должен иметь доступ к "действительно секретной информации". Вы предлагаете наплевать на этот принцип; в результате, чтобы обеспечить это требование, придется извращаться (скажем, делать отдельную базу, выгружать туда часть данных, делать этот отчет там). Повторюсь, я ничего не предлагал. Вы опять додумываете в нужную Вам сторону. softwarerВо-вторых, после того, как ваш суперпользователь сделает отчет, снова вылезает вопрос безопасности, вылезает вот в каком аспекте. Если у пользователя есть доступ к таблицам, ограниченный RLS, выполнение отчета не требует никаких специфических прав. Мне не совсем понятно почему Вы коррелируете суперпользователя с RLS?! Беру Вашу фразу и чуть меняю: Если у пользователя есть доступ к представлениям, в которых реализовано RLS, выполнение отчета не требует никаких специфических прав. Т.о. наличие этого пользователя совсем необязательно. То, что Oracle RLS встроено в ядро - это его заслуга. Но, Вы упорно хотите свести все к одному: pkarklin использует представления только потому, что работает с MS SQL, которые не имеет поддержки RLS на уровне ядра. Я писАл, что использую не только представления при отстутствии прямого доступа пользователя к таблицам. И основная цель это как раз облегчение работы пользователей которым совсем не обязательно знать, что физически сущность платежное поручение лежит в трех таблицах. softwarerТеперь, допустим, ваш суперпользователь сделал отчет в виде view или хранимки, грантовал этот объект нужным пользователям, точно так же положил на экселевский лист. Что происходит дальше... К чему пришли? К тому, что суперпользователь не является адекватной заменой RLS. Простите я где-то утверждал, что "суперпользователь является адекватной заменой RLS"?! Вы опять, почему-то, трактуете мои слова так, как Вам того хочется. Делая Выводы и оспраивая то, что я даже не произносил. softwarerХм. Судя по последнему ответу, Вы совершенно не поняли сказанного и отвечаете невесть на что. Ну, понеслось... Я все прекрасно понял... softwarerOracle Discoverer - это инструмент, позиционирующийся как средство для аналитиков, позволяющее не писать селекты. Попросту говоря, визуальный конструктор отчетов. Какая "необходимая квалификация" для этого необходима? Спасибо, я в курсе. softwarerДалее, по поводу "обоснования требований прямого доступа". Простите, но я заранее уверен, что беседовать с Вами на эту тему бесполезно, просто потому, что Вы давным-давно заняли неконструктивную позицию и вряд ли с нее сдвинетесь. Аналогия здесь примерно следующая: Вы привыкли пользоваться амбарным замком... Ну, как Вам будет угодно. Но аналогия с амбарным замком мало тянет на конструктивизм. softwarerОбъясняю еще раз, максимально доступно: я нигде не говорил, что следует отказаться от view там, где они удобны. Я утверждаю, что работа только через view не позволит оптимально решить все задачи. Гм... Можно подумать, что утверждал где-то обратное?! ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 14:21 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklinИзвините, я ничего не предлагал... Я всего лишь указал возможное решение предоставления доступа к физичесим таблицам бд, если система спроектирована без оного: И у меня такая же нормальная камера хранения. Я вижу здесь те же недостатки и ни в одной из моих систем, к которых у пользователя нет доступа к таблицам, нет такого кладовщика. Повторюсь, я ничего не предлагал. Вы опять додумываете в нужную Вам сторону. Павел, слова про "дать db_datareader" принадлежат именно Вам, никто Вас за язык не тянул и никто вместо Вас его не додумывал. Пока Вы не сказали, я не знал, что это такое, когда сказали - посмотрел в msdn и соответственно отвечал. Если теперь Вы говорите, что на самом деле этого не предлагали - ok, давайте отмотаем разговор назад и начнем с той же точки, где Вы ответили этим db_datareader-ом. pkarklinМне не совсем понятно почему Вы коррелируете суперпользователя с RLS?! Хм. Потому что он является Вашим ответом Чемберлену. Проследите скелет нашей дискуссии, там есть и примерно такая ветвь: я: RLS позволяет объединить безопасность и преимущества прямого доступа: вы: а можно сделать суперпользователя и обойтись без раздачи прямого доступа всем подряд То есть Вы противопоставили это решение решению с RLS. Соответственно, в этой ветви я доказываю, что такая замена неадекватна. pkarklinБеру Вашу фразу и чуть меняю: Если у пользователя есть доступ к представлениям, в которых реализовано RLS, выполнение отчета не требует никаких специфических прав. Т.о. наличие этого пользователя совсем необязательно. Абсолютно верная мысль, но она относится к другой ветке, про "что если пользоваться только вьюхами". См. http://softwarer.ru/about.html#Topic pkarklinТо, что Oracle RLS встроено в ядро - это его заслуга. Но, Вы упорно хотите свести все к одному: pkarklin использует представления только потому, что работает с MS SQL, которые не имеет поддержки RLS на уровне ядра. Думаю, Вы не сможете подтвердить свое утверждение цитатами. Что я "хочу свести" я уже сказал: по моим представлениям, Вы выработали свои принципы давно и применительно к конкретной обстановке, однако, судя по нашему предыдущему опыту, склонны абсолютизировать их. pkarklinЯ писАл, что использую не только представления при отстутствии прямого доступа пользователя к таблицам. И основная цель это как раз облегчение работы пользователей которым совсем не обязательно знать, что физически сущность платежное поручение лежит в трех таблицах. Павел, простите, но Вы писали довольно много того, что не укладывается в схему логического обсуждения основной темы. Я это не комментирую. pkarklinПростите я где-то утверждал, что "суперпользователь является адекватной заменой RLS"?! См. выше - мой ответ на "коррелируете". pkarklinНу, понеслось... Я все прекрасно понял... Поняли? Тогда Вас не затруднит ответить, какая именно квалификация в написании селектов необходима для пользования дискаверером (подчеркну - "необходима", а не "может пригодиться"). Но Вы почему-то предпочли прямо проигнорировать этот вопрос, что процитирую ниже. pkarklin softwarerКакая "необходимая квалификация" для этого необходима? Спасибо, я в курсе. Собственно цитирую. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 14:56 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarerМожно. Правда, не знаю, зачем каждому бухгалтеру общий баланс банка, но готов принять как условный пример. Понятно, что условный. Бухгалтеру, контролирующему кредиты нужна сводная отчетность по кредитным договорам, ведущему депозиты - по депозитным. Смысл как раз в том, что вся эта сводная отчетность - полный аналог баланса (кстати баланс любого банка вообще говоря общедоступен) - не имея доступа к конкретным записям в таблицах получать некие аггрегированные величины. softwarerНо! Одно дело - контролируемое предоставление доступа к дополнительным полномочиям ("плюс общий баланс банка"), другое дело - тонкое место, которое будет регулярно рваться. В том то и дело, что для каждого вида сводной отчетности нужны свои дополнительные полномочия. То есть что при использовании RLS, что при ограничении доступа через вью потребуется создание специализированных методов доступа для каждого такого отчета. Bogdanov AndreyСкажу так: те два года, что я работал именно с аналитикой и аналитической отчетностью, постоянно вставала именно задача ограничения доступа ("... и чтоб ни чучелом, ни тушкой не увидел цифр по другому департаменту...") Забавно. Значит мы сталкивались с какой-то разной аналитикой. У меня как раз все-время были задачи - отчет должен строится по всему массиву данных, но вот конкретные договора соседнего отдела видеть - ни-ни. softwarer Bogdanov AndreyВ любом случае, человек, который разработывает отчеты (не знаю, почему его обозвали суперпользователем, если это обычный разработчик) Потому что pkarklin предложил дать этому разработчику привилегию SELECT ANY TABLE (точнее, ее mssql-ный аналог). А это уже никак не "обычный разработчик", если конечно "обычный разработчик" != "дба". Не знаю, что именно имел ввиду pkarklin, я же имею ввиду то, что разработчику доступна возможность изменять структуру СУБД (в части разработки новых вью и процедур и, естественно, эти вью создаются с использование прав "владельца схемы" - то есть практически дба). softwarer Bogdanov Andreyдолжен задуматься о том, каким образом должна сказываться система безопасности на данных, которые его отчет представляет. И никакая RLS здесь не поможет. Вы смотрите с точки зрения разработчика, а посмотрите еще и с точки зрения безопасника. RLS поможет в чем: в том, что для того, чтобы увидеть "недоступные в оперативной работе данные" придется прилагать специальные усилия. То есть действует принцип "запрещено все, что не разрешено". В то же время ее отсутствие приведет к тому, что каждый прямой доступ к объекту будет тонким местом в безопасности. Ну а использование только доступа через вьюхи, при адекватной безопасности будет плохо с точки зрения удобства-скорости. Я никогда и не предлагал давать прямой досутп. То есть тонкого места - нет. Я сравниваю два варианта - вью и RLS. С точки зрения проектировния Oracle-овая RLS (с другими не знаком) ничем от вью не отличается. И в том и в том случае для приложений доступны некоторые реляционные структуры (вью от таблиц приложение все равно не отличит), состав данных в которых меняется в зависимости от присоединившегося пользователя. Для специализированных (сводных) запросов и в том и в том случае потребуются специальные вью, которые работают в "обход" ограничений на просмотр строк. Насколько вью буду медленне, чем RLS - сказать не могу (RLS в реальной жизни попользовать не пришлось - а баловство в домашних условиях не в счет). И кстати, не знаю можно ли вьюшками "обойти" ограничения RLS. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 15:12 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov AndreyДолжен отметить, что именно такие ситуации постоянно встречаются - для аналитической отчетности почти всегда требуется аггрегаты по более широкому спектру данных, чем доступные для непосредственной работы. А вот для оперативной отчетности (когда надо "напечатать" один живущий в СУБД "объект") почти всегда достаточно тех самых стандартных вью, о которых говорит pkarklin. именно так. Скажу больше. Недавно у нас был относительно большой спор о правах доступа, суть которого состояла в следующем: кредитному эксперту при анализе необходима информация о кредитах связаных лиц анализируемого клиента. При этом возможна ситуация, что у него по правам нет к ним доступа. Было принято решение эту информацию ему предоставить невзирая на права. Подчеркну, что речь идет не об отчете. Условно говоря, при поиске кредитов формочка показывает один список, но из него можно перейти на другую формочку, где список уже другой. С точки зрения "безопасника" - это не дыра, а широко открытая дверь. С точки зрения бизнеса - все нормально. Они согласны, все риски понимают. Им так надо. Замечу еще, что окончательные решения принимают отнюдь не безопасники. Их мнение учитывают, но и только. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 15:13 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
softwarerПавел, слова про "дать db_datareader" принадлежат именно Вам, никто Вас за язык не тянул и никто вместо Вас его не додумывал. Пока Вы не сказали, я не знал, что это такое, когда сказали - посмотрел в msdn и соответственно отвечал. Александр, Вы же сами всегда настаиваете на том, чтобы Ваш собеседник учитывал контекст сказанных слов. Открутим назад и вспомним, как развевалась наша беседа: pkarklinГм... Не должен пользователь иметь никакого доступа к таблицам. Он вообще не должен знать как устроена модель данных. Все взаимодействие идет через хп, вью, функции. Даже если в системе и не требуется поддержка row-level security. softwarer Угу. После чего начинаются вопросы "а вот начальство просит меня состряпать пару отчетов над данными купленной системы...." pkarklinя лишь констатировал факт, что закрыт доступ к таблицам (что скрывает модель данных), но существующие view позволяют таким продвинутым пользователям получать информацию, представленную из модели в "удобоваримом виде" в соответствии с имеющимися полномочиями. Например, сущность "Платежное поручение" "состоит" из 3х таблиц (эдакий вариант наследования): Объект->Документ->Платежное поручение. Пользователю доступно представление "Платежное поручение", которое джоинит эти три таблицы и дает полный комплект аттрибутов сущности. Это то, что касается выборки. А есть набор хп для добавления, изменения, удаления. softwarerСкажу так: за всю свою трудовую практику я не сталкивался с более-менее большой системой, к которой заказчик не приписывал бы дополнительных отчетов. При этом платить вендору за каждый новый отчет и пару месяцев ждать результата заказчика чаще всего не устраивает, поэтому в большинстве случаев отчеты приделываются собственными силами - либо штатными айтишниками, либо грамотными людьми из числа пользователей. pkarklinНе спорю, что такой человек (группа) существует в любой организации, использующей то или иное решение. И этот человек (группа) наделен определенными полномочиями в бд, например, имеет право читать из всех таблиц (например, в MS SQL достаточно включить его в роль бд db_datareader). Но это человек, умеющий это делать и понимающий свою ответственность. Но я не вижу из этого прямого следствия необходимости прямого доступа к таблицам остальных рядовых (читай неграмотных) пользователей. И после этого Вы в результат неких своих умозаключений делаете вывод: softwarerК чему пришли? К тому, что суперпользователь не является адекватной заменой RLS. pkarklinМне не совсем понятно почему Вы коррелируете суперпользователя с RLS?! softwarerХм. Потому что он является Вашим ответом Чемберлену. Проследите скелет нашей дискуссии, там есть и примерно такая ветвь: я: RLS позволяет объединить безопасность и преимущества прямого доступа: вы: а можно сделать суперпользователя и обойтись без раздачи прямого доступа всем подряд Обратите внимание, что Вы исходите из постулата, что основной целью, которую я приследую, закрывая доступ к таблицам бд - это поддержка RLS. С чего Вы это взяли, ума неприложу. Видимо у нас и на "скелет беседы" разные взгляды. М.б. тогда разделим и четко определим 2 темы: 1. Реализация RLS в конкртеной СУБД (на примере Oracle и MS SQL). 2. Цели, приемущества и недестатки от закрытия прямого доступа к таблицам. М.б. тогда "селет беседы" у нас будет более стройным. softwarerПавел, простите, но Вы писали довольно много того, что не укладывается в схему логического обсуждения основной темы. Я это не комментирую. Ок. Спрошу прямо. Что Вы считаете "основной темой", которую мы обсуждаем? авторТогда Вас не затруднит ответить, какая именно квалификация в написании селектов необходима для пользования дискаверером (подчеркну - "необходима", а не "может пригодиться"). В Вашем примере с дискаверером высокая квалификация не является необходимой, ибо описание метаданных или создается разработчиком или генериться по метаданным хранилища. Я опять же не вижу почему это должны быть именно таблицы, а не представления. Т.е. почему нужно иметь именно доступ к таблицам бд? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 15:34 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Что касаемо варианта реализации RLS в MS SQL. Рассмотрим пример, когда определенным менеджерам надо давать права на работу только с определенными счетами. Скрипты объектов (без констрэйнтов): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39.
Заполняем данные, исходя из условий, что пользователи proba1 и proba2 существуют в бд. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Выдаем права: Код: plaintext
Заходим под proba1 и и пробуем: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
И под proba2: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34.
softwarerRLS поможет в чем: в том, что для того, чтобы увидеть "недоступные в оперативной работе данные" придется прилагать специальные усилия. То есть действует принцип "запрещено все, что не разрешено". В то же время ее отсутствие приведет к тому, что каждый прямой доступ к объекту будет тонким местом в безопасности. Ну а использование только доступа через вьюхи, при адекватной безопасности будет плохо с точки зрения удобства-скорости. Как повашему, в чем будет отличие в поведении вышеприведенного кода от реализации такого же функционала в Oracle? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 17:01 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
--т.е. даем 'Манагер1' "права" на счет с ID = 1, а 'Манагер2' и на 1 и на 1 читать как --т.е. даем 'Манагер1' "права" на счет с ID = 1, а 'Манагер2' и на 1 и на 2 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 17:01 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin--т.е. даем 'Манагер1' "права" на счет с ID = 1, а 'Манагер2' и на 1 и на 1 читать как --т.е. даем 'Манагер1' "права" на счет с ID = 1, а 'Манагер2' и на 1 и на 2 Дело в том, что данный метод действителен только для преопределенных прав (условие WHERE M.colUserName = USER_NAME() в вашем примере) Предположим, что Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Как вы предлагаете в данном контексте работать? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 18:43 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
и уточните речь идёт о web-системах в том числе или только клиент-сервер? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2007, 18:52 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
KGPДело в том, что данный метод действителен только для преопределенных прав (условие WHERE M.colUserName = USER_NAME() в вашем примере) Любая реализация RLS исходит из предопределенных прав. Это может быть привязка к имени пользователя (как в моем примере), членства пользователя в группе (WHERE IS_MEMBER('SomeRole' = 1)) т.е. к неким "системным идентификаторам контекста". Такой подход применим в случае, когда каждый пользователь имперсонализирован в системе с помощью какого-либо "системного идентификатора контекста". Но, совсем не обязательно, чтобы идентификатор контекста был именно системным. Это может быть любой другой идентификатор, который бы определял контекст выполнения запроса. KGPПредположим, что ... Как вы предлагаете в данном контексте работать? В этом контексте - никак. Ибо в приведенном Вами примере нехватает основного - как идентифицировать контекст выполнения запроса. Т.е. к какому ManagerID принадлежит контекст текущего выполняемого запроса. KGPи уточните речь идёт о web-системах в том числе или только клиент-сервер? В не зависимости от типа системы для реализации RLS должно выполняться требование - наличие возможности идентифицировать контекст выполнения запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 08:45 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Джентльмены и особенно Павел - прошу прощения, к сожалению, я уже почти сутки не могу выделить время для достаточно обстоятельного ответа. Как только смогу - отвечу, если конечно к тому моменту тема еще будет актуальной. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 14:40 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin В этом контексте - никак. Ибо в приведенном Вами примере нехватает основного - как идентифицировать контекст выполнения запроса. Т.е. к какому ManagerID принадлежит контекст текущего выполняемого запроса. Применение хранимок снимает данные ограничения, возможностью передачи контекста как параметра вызова Вопрос: Создать view с WITH CHECK OPTION можно с использованием, например ... getdate() Есть ли методы передачи некоего контекста при исполнении команды (например через временную переменную) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 15:01 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
KGPСоздать view с WITH CHECK OPTION можно с использованием, например ... getdate() Вы имеете ввиду использование GETDATE() в WHERE? Это же не функция. Во вью нет таких ограничений. Вот только что в результате получиться? KGPЕсть ли методы передачи некоего контекста при исполнении команды (например через временную переменную) Можно использовать: SET CONTEXT_INFO Associates up to 128 bytes of binary information with the current session or connection. Syntax SET CONTEXT_INFO { binary | @binary_var } И затем при необходимости читать его: Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 15:18 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
KGPПрименение хранимок снимает данные ограничения, возможностью передачи контекста как параметра вызова только плохонькая безопасность получится. KGPЕсть ли методы передачи некоего контекста при исполнении команды (например через временную переменную) Это больше для ГФ вопрос. Почитайте про SET CONTEXT INFO, может это то, что вам нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 15:19 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin 1. Вы имеете ввиду использование GETDATE() в WHERE? 2. Это же не функция. 3. SET CONTEXT_INFO 1. Не конкретно GETDATE , а нечто в принципе 2. Что не функция, где кто о чем говорил, что надо функция? 3. Верное направлени; binary - преобразование необходимо и join лишний к master..., надо попробовать на кошечках to Alexey Kudinov : 1. В чем плоханькая? передал тикет, по нему получил контекст для проверки 2. Что есть ГФ ? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 15:42 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
KGPПрименение хранимок снимает данные ограничения, возможностью передачи контекста как параметра вызова А в чем тогда безопасность заключается? Этак любой товарищ вызовет процедурку передав на вход контекст другого пользователя. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 15:46 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey KGPПрименение хранимок снимает данные ограничения, возможностью передачи контекста как параметра вызова А в чем тогда безопасность заключается? Этак любой товарищ вызовет процедурку передав на вход контекст другого пользователя. Под контестом я понимаю некие данные, а вы, вероятно, UserID ? можно использовать Ticket uniqueidentifier, создавая запись о сессии работы пользователя в АИС to pkarklin : зззжальтесь, что есть ГФ? ... сам форум MSSQL? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 15:55 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
KGPзззжальтесь, что есть ГФ? ... сам форум MSSQL? Я не знаю, откуда это пошло, но ГФ (Главным форумом) считается форум по MS SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 16:00 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
KGPПод контестом я понимаю некие данные, а вы, вероятно, UserID ? И что помешает злоумышленнику передать эти некие данные? Сложность их извлечения? Любая СУБД как раз и обеспечивает то, что при logon один раз передаются "некие данные" (называемые паролем), а потом уже ничего передавать не надо. А передавать такие данные каждый раз - серьезная брешь в безопасности. И напомню, что речь шла о двузвенной архитектуре. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 16:02 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey KGPПод контестом я понимаю некие данные, а вы, вероятно, UserID ? 1. И что помешает злоумышленнику передать эти некие данные? 2. Любая СУБД как раз и обеспечивает то, что при logon один раз передаются "некие данные" (называемые паролем), а потом уже ничего передавать не надо. 3. А передавать такие данные каждый раз - серьезная брешь в безопасности. 4. И напомню, что речь шла о двузвенной архитектуре. 1. Отсутствие знаний об этих данных 2. ничего - сказано имхо неверно, данные передаются КАЖДЫЙ раз по протоколу ниже уровнем 3. имхо - они и так передаются, только средствами операционки 4. уточнял, не факт. (дайте ссылку) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 16:24 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
почитал, врубиться не смог, стыдно... но так люблю тонких клиентов, что не могу молчать. ASP.NET, application server & database server - это лучшее, что придумано в IT для автоматизации складов. Альтернатива - только терминальные решения. Но тонкий клиент через эксплорер все-таки лучше. Единственный недостаток - надо будет сократить несколько ставок в ай-ти сопровождении за ненадобностью. Правда, баркод-ридеры у нас все еще работают в традиционным клиентом - специфический экран ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 17:38 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
tortoise Правда, баркод-ридеры у нас все еще работают в традиционным клиентом - специфический экран А у меня сканеры штрихкодов работали через браузер. Правда это была не складская система, но не суть. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 17:47 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
tortoiseно так люблю тонких клиентов, что не могу молчать. ASP.NET, application server & database server - это лучшее, что придумано в IT для автоматизации складов. Альтернатива - только терминальные решения. Но тонкий клиент через эксплорер все-таки лучше. Ну вот, пришел лесник и всех разогнал. М.б. раскажите нам почему "это - лучшее"? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 17:50 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
tortoiseПравда, баркод-ридеры у нас все еще работают в традиционным клиентом - специфический экран А зачем нам специфический экран? Все производители сканеров предлагают библиотеки, для управления этим сканером И подключить эти библиотеки можно практически к любому клиенту. К Explorer придется написать какой-нибудь ActiveX, но проблемы не вижу. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 17:51 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey[quot tortoise]К Explorer придется написать какой-нибудь ActiveX, но проблемы не вижу. Никаких там ActiveX не надо. Во всяком случае, те сканеры, с которыми я имел дело, включались в разрыв клавиатуры. А дальше - волшебный клиентский скриптик, перехватывающий нажатия клавиш. Клиент - тоньше не бывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 17:58 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
KGP 2. ничего - сказано имхо неверно, данные передаются КАЖДЫЙ раз по протоколу ниже уровнем 3. имхо - они и так передаются, только средствами операционки ну все-таки не средствами операционки, а того протокола, которым пользуется СУБД. Вы предлагаете организовать свой собственный механизм, определения конотекста соединения, который поностью дублирует уже имеющиеся. И каков смысл? Может быть вы надеетесь разработать что-то более защищенное, чем решения от известных брэндов? В это можно поверить, хотя и с трудом. Но не знаю в каком случае будет оправдана такая разработка. KGP4. уточнял, не факт. (дайте ссылку) Ну, например, вот: LSV А кто в таком случае назовёт хотя бы пару известных систем (кроме упомянутого OEBS), где вся безопасность лежит в СУБД ??? Причем желательно не в сервере приложений, а именно в СУБД. То есть обсуждается именно вопрос реализации доступа средствами СУБД (естественно при наличии у пользователей возможности присоединиться именно к СУБД). Если вы предлагаете решения для трехзвенки, то это можно обсудить отдельно. Там нет особого смысла делать разграничение доступа именно на уровне СУБД. Можно и сервером приложений обойтись. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 18:01 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey То есть обсуждается именно вопрос реализации доступа средствами СУБД (естественно при наличии у пользователей возможности присоединиться именно к СУБД). Если вы предлагаете решения для трехзвенки, то это можно обсудить отдельно. Там нет особого смысла делать разграничение доступа именно на уровне СУБД. Можно и сервером приложений обойтись. Согласен, для трехзвенки лучший на мой взгляд паттерн - это trusted subsystem (когда СУБД полностью доверяет серверу приложений, а тот уж рулит полномочиями). P.S. Читает сейчас автор темы нашу и дискуссию и недоумевает. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 18:07 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey 1. ну все-таки не средствами операционки, а того протокола, которым пользуется СУБД. 2. Вы предлагаете организовать свой собственный механизм, определения конотекста соединения, который поностью дублирует уже имеющиеся. 3. LSV А кто в таком случае назовёт хотя бы пару известных систем (кроме упомянутого OEBS), где вся безопасность лежит в СУБД ??? Причем желательно не в сервере приложений, а именно в СУБД. 1. а каким она пользуется? я точно не знаю, а вы уверены, что MS SQL Server не пользуется средствами криптования операционки при передаче данных? 2. уверен, что многие реализуют ... самое простое в начале запросить тикет, потом пользоваться им в работе ... можно применить и подпись сертификата MS SQL Server, для защиты от снифера сетевого ... вы определитесь от кого защищаетесь! 3. Ссылка на дальний пост, я исходил из постов pkarklin (собственно и уточнял ) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 18:31 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
KGP 2. уверен, что многие реализуют ... самое простое в начале запросить тикет, потом пользоваться им в работе ... можно применить и подпись сертификата MS SQL Server, для защиты от снифера сетевого ... вы определитесь от кого защищаетесь!KGP, а что вы собственно хотите доказать ? Что можно измыслить собственный навороченый механизм передачи контекста на сервер БД ? Ну можно. А зачем ? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 18:46 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Alexey Kudinov KGP, а что вы собственно хотите доказать ? Alexey Kudinov, кому доказать, вам? ничего ... что я хотел для себя уточнить - уточнил ps: собственный, навороченный, затратный ... надо или не надо и т.п. каждый решит по ситуации сам. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2007, 19:08 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
Bogdanov Andrey tortoiseПравда, баркод-ридеры у нас все еще работают в традиционным клиентом - специфический экран А зачем нам специфический экран? Все производители сканеров предлагают библиотеки, для управления этим сканером И подключить эти библиотеки можно практически к любому клиенту. К Explorer придется написать какой-нибудь ActiveX, но проблемы не вижу. Здесь используются покет-ПС с Windows CE, которые оборудованы беспроводным сетевым коннектом, ручкой, клавишами, баркодсканером и тач-скрином. Т.е. броузер стартовать можно, но интерфейс должен быть как-то очень хорошо продуман, чтобы мужики, которые бегают по складу с этими штуками не заморачивались ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2007, 13:19 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin tortoiseно так люблю тонких клиентов, что не могу молчать. ASP.NET, application server & database server - это лучшее, что придумано в IT для автоматизации складов. Альтернатива - только терминальные решения. Но тонкий клиент через эксплорер все-таки лучше. Ну вот, пришел лесник и всех разогнал. М.б. раскажите нам почему "это - лучшее"? 1000 раз сорри, сугубо персональные эмоциональные оценки. Еще в 2002 году ставил JDE и везде старался поставить "жирного клиента", потому что боялся чего-то. А счас я понимаю, что сильно себе усложнял жизнь. И счас получаю удовольствие от работы с тонкими клиентами. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2007, 13:23 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
tortoiseЕще в 2002 году ставил JDE и везде старался поставить "жирного клиента", потому что боялся чего-то. А счас я понимаю, что сильно себе усложнял жизнь. И счас получаю удовольствие от работы с тонкими клиентами. и tortoiseно так люблю тонких клиентов, что не могу молчать. ASP.NET, application server & database server - это лучшее, что придумано в IT для автоматизации складов. Простите, Ваша любовь касается работы с JDE или, все-таки, разработки многозвенок на указанной выше связке? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2007, 13:42 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Простите, Ваша любовь касается работы с JDE или, все-таки, разработки многозвенок на указанной выше связке? Озадачили... Осадили... :-) но самая большая и светлая любовь имеет место быть к администрированию многозвенок (трехзвенок, если быть точным) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2007, 14:21 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin Простите, Ваша любовь касается работы с JDE или, все-таки, разработки многозвенок на указанной выше связке? Внезапно задумался, что нас привлекает в каких-то программх средствах и технологиях. (Что если любовь, другими словами). Я больше люблю, например, MS SQL Server, чем DB2 (хотя тоже продукт очень достойный) в первую очередь за наличие удобных средств администрирования, что на порядки сокращает мое время при решении задач, за которые, собственно , я получаю зарплату. Таким образом, я люблю те технологии и продукты, которые экономят мое время и силы. Трехзвенки, ИМХО, приблизительно равны двухзвенкам по трудозатратам в разработке для оффисных приложений. За исключением тех случаев, когда они существенно выигрывают при наличии различных ОС на клиентах. И они очень удобны для администрирования. Такая вот любовь. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2007, 14:50 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
tortoiseТрехзвенки, ИМХО, приблизительно равны двухзвенкам по трудозатратам в разработке для оффисных приложений. У Вас богатый опыт разработки систем в обеих архитектурах? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2007, 14:59 |
|
БД MSSQL 2005 и IE
|
|||
---|---|---|---|
#18+
pkarklin tortoiseТрехзвенки, ИМХО, приблизительно равны двухзвенкам по трудозатратам в разработке для оффисных приложений. У Вас богатый опыт разработки систем в обеих архитектурах? Нет, 1 самостоятельно работающая 3-звенка, некоторый опыт внедрения и работы с тонкими JDE и Siebel 7 и пару приложений клиент-сервер. Все приложения для внутреннего использования, не тиражируемые ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2007, 15:03 |
|
|
start [/forum/topic.php?all=1&fid=33&tid=1549145]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
114ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
237ms |
get tp. blocked users: |
2ms |
others: | 9ms |
total: | 405ms |
0 / 0 |