Главная » 1С Предприятие » ЗАЩИТА ДАННЫХ

0

8.2.3.    ПОСТАНОВКА  ЗАДАЧИ

Защита данных  это  также  многогранная задача, включающая  такие  подзадачи, как физическое сохранение данных, обеспечение  их целостности и непротиворечивости, верификация данных, ограничение прав доступа и др.

В целом  в  1С достаточно средств для защиты данных.  Однако в ряде случаев для упрочнения  защиты требуется  вмешательство программиста.

Остановимся  на проблеме ограничения прав доступа.  (Иные проблемы либо частично затрагивались по мере  изложения материала, либо находятся за пределами настоящего пособия.)

Изначально пользователю  можно  присвоить имя, назначить интерфейс, пароль  и снабдить определенными правами доступа  (разд.  1.2, 1.3).

Наборы прав задаются на закладке Права окна  Конфигурация (рис. 8.2).

Рис. 8.2. Задание набора прав выполняется на этой закладке

Для  заданного набора  прав, если  по  строке  с  именем  набора  дважды  ударить  мышью, откроется редактор прав (рис. 8.3).

Рис. 8.3. Редактор пользовательских прав

В этом  редакторе для  выбранного   набора  прав  (в  нашем случае  Ученик)  можно  определить  права  Ученика  в  отношении  каждого   класса   объектов  в  целом  (рис.  8.4) и отдельных представителей  классов  (рис. 8.5).

Рис. 8.4. Задание прав доступа Ученика ко всем справочникам системы

Рис. 8.5. Детализация прав Ученика в отношении справочника Сотрудники_2

Напоследок надо  не  забыть  задать  права  по  управлению  конфигурацией  системы (рис. 8.6).

Рис. 8.6. Задание прав по управлению системой

Далее    встает   проблема   ограничения    прав    доступа    в     пределах    справочника Сотрудники_2,   журнала   Зарплата_2  и  других журналов.   Суть  проблемы  в  том,  что начисление      зарплаты     осуществляется     несколькими      расчетчиками,    которые, разумеются,  используют  один  и  тот  же  справочник  сотрудников,  журнал  расчетов  и одинаковые   журналы  документов.   И   в   отношении   к  имеющимся  в   этих  объектах  данным  расчетчики   обладают   равными   правами.   Более    того,   они,   как   правило, пользуются единым по своему содержанию  интерфейсом.

Положим, что  на нашем предприятии  зарплатой  занимаются 3 расчетчика,  обслуживающие соответственно  цехи  1, 2 и  3.  Тогда  полезно ввести  дополнительные ограничения, запретив расчетчику цеха  1 доступ  к данным расчетчиков цехов 2 и 3. Аналогичные ограничения распространим и на других расчетчиков.

Реализация  этих ограничений  проста. Создается справочник  ПраваРасчетчика; в нем для  каждого расчетчика  указываются подразделения, к  которым он  имеет  доступ.  Далее эта информация используется  при работе со справочниками и журналами 1С.

Используется следующим  образом. В  модуль  формы списка  справочника  Сотрудники_2 мы  добавим две предопределенные процедуры  ПриВыбореРодителя и ПриСменеИерархии.  В  первой  мы  разрешим  каждому  расчетчику  открывать  только   доступные   ему  в   соответствии  со  справочником  ПраваРасчетчика  группы   (подразделе-

ния),  а  во  второй запретим всем расчетчикам переходить в  режим просмотра  всего справочника.  При   открытии   справочника мы  зададим режим  отображения  данных справочника с учетом имеющейся иерархии (см. рис. 5.1).

В  модуль  формы списка  журнала   Зарплата_2 добавляется   предопределенная  процедура  ПриУстановкеОтбора,  позволяющую  расчетчику  работать   только   с  подразделениями, назначенными ему справочником ПраваРасчетчика.

В  модуле   формы  списка   журнала   Зарплата_2  придется   также   модифицировать процедуру ПриОткрытии,  которая  теперь,  если  ЖЗ  открывает расчетчик, будет подбирать  для  работы  соответствующие ему  подразделения.

Замечание.  Рассматриваемые  мероприятия  по   ограничению доступа   к   данным не являются  исчерпывающими, но раскрывают  механизм решения этой проблемы.

Источник: Бартеньев О. В. 1С:Предприятие:  программирование для  всех.  Базовые объекты и расчеты на одной дискете. М.: Диалог-МИФИ, 2005. 464 с.

По теме:

  • Комментарии