Пришло время поговорить о разграничение прав в 1С. Так как наша конфигурация немного выросла целесообразно разграничить права. Для начала хотя бы добавить Администратора.
Для примера я буду использовать базу, которую мы создавали на протяжение предыдущих статей. Нужно добавить в нее роль Администратора. Так как на данный момент в неё может зайти любой пользователе. Нам нужно завести нового пользователя и новую роль.
Добавляем роль в 1С
Как я уже говорил сначала нужно создать новую роль. Для этого заходим в конфигурацию ищем ветку роль кликаем правой кнопкой и выбираем добавить. Пишем имя в свойствах роли Администратор. Далее нужно указать права. В окне Роль Администратор в поле Роль отмечаем все галочки.
Теперь нужно установить права на объекты конфигурации (Просмотр, редактирование). Так как мы создаем роль Администратора нам нужно отметить все объекты конфигурации. Для этого кликаем на пункт Действия и выбираем Установить все права.
В дальнейшем мы будем добавлять различные объекты и для того чтобы каждый раз при создании новый справочников документов отчетов и т.д не редактировать роль снизу нужно поставить галочку Установить права для новых объектов.
Вот мы и создали роль Администратора. Таким же образом создаются и роли Пользователей только в этом случае нужно будет указать права для каждого элемента.
Добавляем пользователя в 1С
После того как роль создана нужно добавить пользователя. Для этого переходим на вкладку Администрирование и выбираем Пользователи.
В окне список пользователей кликаем добавить.
В окне Пользователь пишем имя Администратор ставим галочку на против Аутентификация 1С Предприятие. Так же не забываем про пункт Показывать в списке выбора. Это нужно для того чтобы каждый раз не вводим имя пользователя и так же вводим пароль.
Переходим на вкладку Прочее и отмечаем роль Администратор снизу указываем язык и кликаем ОК.
Перезапускаем 1С и смотрим что получилось. Если вы все сделали правильно то 1С должна спросить Логин и пароль.
Ну вот и все мы сделали новую роль и завели нового пользователя.
Скриншоты, опубликованные в данной статье, являются цитатами и иллюстрациями программного продукта «1C:Предприятие», авторское право на который принадлежит ЗАО 1С.
Создание новой роли для пользователя в программе "1С: Бухгалтерия 8" ред. 2.0
Эта статья является логическим продолжением предыдущей статьи и рассказывает, как самостоятельно создать и настроить новую роль для пользователя в программе "1С: Бухгалтерия 8" ред. 2.0. В этой программе присутствует целый ряд бухгалтерских отчетов, таких как "Оборотно-сальдовая ведомость по счету", "Анализ субконто", "Анализ счета", "Обороты счета" и т. д. Весь список можно посмотреть в меню "Отчеты", в верхней части меню (далее по тексту Стандартные отчеты). Эта группа Стандартных отчетов позволяет всем пользователям просматривать любые счета и получать доступ ко всей информации, в том числе к конфиденциальной информации (например, такой как сведения о начислениях заработной платы). А внешний отчет (о котором идет речь в предыдущей статье) позволяет ограничить права пользователей и запретить им доступ к нежелательной информации.
Ссылаясь на предыдущую статью мы рассматриваем конкретную задачу, в качестве примера: нам необходимо создать роль для пользователя, в которой Стандартные отчеты были бы недоступны. В той статье мы рассматривали пример, где имя пользователя было Бухгалтер материального стола. Назовем эту новую роль для него БухгалтерБезСтандартныхОтчетов, т.к. пользователь и роль для него это разные вещи, имеет место и различие в их названиях.
Внимание! Перед тем как начинать какие-то изменения рекомендуется сохранить копию Вашей конфигурации. Для этого в подменю "Конфигурация" нужно выбрать пункт "Сохранить конфигурацию в файл". Рекомендуется сохранять в одну папку с информационной базой, чтобы в случае надобности было несложно найти. Далее, если у Вас что-то пойдет не так, будет возможность вернуться к начальному варианту.
Читайте о наших услугах по обновлению типовых и нетиповых конфигураций фирмы 1С.
Открытие конфигурации для редактирования.
Запускаем программу "1С: Бухгалтерия 8" ред. 2.0 в режиме "Конфигуратор", используя для этого пользователя с "Полными правами" (в примере это Администратор). В меню выбираем раздел "Конфигурация" и жмем на пункт "Открыть конфигурацию" (см. рис.1). В левой части экрана появляется окно со всеми элементами конфигурации.
Рис.1. Открытие конфигурации.
По умолчанию типовая конфигурация программы "1С: Бухгалтерия 8" ред. 2.0 (как и любой другой программы 1С) поставляется без возможности редактирования. Т.е. существует определенный набор элементов конфигурации который разработчики определили как достаточный для работы программы. Но, в случае если конкретный пользователь хочет добавить в типовую конфигурацию новые элементы, включается предусмотренная заранее возможность изменения конфигурации. В нашем случае как раз происходит дополнение типовой конфигурации новой ролью с ограничением прав и нам эту возможность изменения нужно включить. Для этого вновь открываем раздел "Конфигурация", далее "Поддержка" и выбираем пункт "Настройка поддержки" как показано на рис.2.
Рис.2. Открытие "Настройки поддержки".
В открывшемся окне мы видим основные характеристики программы: конфигурация называется БухгалтерияПредприятия, поставщик Фирма "1С" и версия программы (в примере 2.0.14.5). А в верхней части окна, справа, присутствует кнопка "Включить возможность изменения". Важным является то, что программа наша находится на поддержке. Это значит что поставщик (Фирма "1С") предоставляет нам возможность обновления программы, а мы, т.к. находимся на поддержке, эту возможность используем. Ни в коем случае нельзя снимать программу с поддержки! Но нам этого и не требуется. Просто нужно быть внимательным, чтобы случайно не отключить нужные настройки.
Возможность получения поддержки доступна как без редактирования, так и с возможностью редактирования конфигурации. Поэтому жмем кнопку "Включить возможность изменения" (см. рис.3).
Рис.3. Включение возможности изменения конфигурации(1).
Далее появляется предупреждение о том, что включив возможность изменения конфигурации, мы не сможем выполнять полностью автоматическое обновление. Это значит, что ранее используемый способ обновления изменится. Если раньше для обновления конфигурации программы "1С: Бухгалтерия 8" ред. 2.0 достаточно было указать каталог, где расположены данные для обновления и все обновление проходило автоматически. То теперь, нужно будет указывать каталог с данными для обновления и парой дополнительных действий указывать что обновлять следует, а что нужно оставить неизменным. Ничего сложного, просто потребуется чуть большее участие со стороны человека.
В конце статьи приведен пример — каким образом будет происходить обновление конфигурации (см. рис.11).
Итак, на вопрос в предупреждении отвечаем "Да" (см. рис.4). После принятия изменений наша конфигурация станет доступной для редактирования.
Рис.4. Включение возможности изменения конфигурации (2).
Создание новой роли БухгалтерБезСтандартныхОтчетов.
Создать новую роль можно двумя способами. Первый способ это создание роли "с нуля" т.е. просто новой роли в которой отсутствовали бы любые настройки. Для этого в окне "Конфигурация", открываем список "Общие", находим там "Роли" и правой кнопкой мыши кликаем на этом пункте. Появится окошко в котором есть пункт "Добавить". Такая роль создается без многих стандартных настроек, тонкости которых описывать в данной статье не нужно. Хотя бы потому, что нам подходит второй способ.
Второй способ это создание новой роли на основании существующей. Т.к. наша цель — создание роли для бухгалтера у которого не было бы Стандартных отчетов, нужно для новой роли взять уже существующую роль Бухгалтер и внести некоторые изменения. Для этого просто скопируем роль Бухгалтер как показано на рис.5.
Рис.5. Копируем существующую роль Бухгалтера.
Она получает имя Бухгалтер1 и остается выделенной синим цветом. Имя сейчас значения не имеет, поэтому оставим его таким как есть. Делаем двойной клик на новой роли и открываем окно по настройке ее прав. Теперь нам нужно закрыть доступность всех отчетов которые мы классифицировали как Стандартные отчеты. На рис.6 показан пример как это делается (галочки "Использование" и "Просмотр" должны быть сняты). А вот полный список отчетов который нужно закрыть подобным образом: ОборотноСальдоваяВедомость, ШахматнаяВедомостьХозрасчетный, ОборотноСальдоваяВедомостьПоСчету, ОборотыСчета, АнализСчета, КарточкаСчета, АнализСубконто, ОборотыМеждуСубконто, КарточкаСубконто, СводныеПроводки, ОтчетПоПроводкам, ГлавнаяКнигаХозрасчетный и ДиаграммаХозрасчетный. Вся группа этих отчетов присутствует в раскрытом списке "Отчеты".
Рис.6. Редактирование прав новой роли.
Теперь, когда основные настройки новой роли выполнены, нужно изменить ее незатейливое имя Бухгалтер1, на БухгалтерБезСтандартныхОтчетов. Для этого открываем свойства новой роли и редактируем поля "Имя" и "Синоним" (см. рис.7). Рекомендуется изменить оба этих поля и сделать их одинаковыми.
Рис.7. Изменение имени новой роли.
Обновление конфигурации базы данных.
После того как новая роль создана и отредактирована нужно сохранить нашу конфигурацию в ее новом виде. Для этого нажимаем соответствующую кнопочку как показано на рис.8 или клавишу F7 на клавиатуре. Процесс обновления конфигурации базы данных может оказаться достаточно долгим (в зависимости от производительности Вашего компьютера). Долгий процесс объясняется тем, что это первое обновление конфигурации базы данных с момента открытия ее на редактирование, а это вносит некоторую специфику.
Рис.8. Обновление конфигурации базы данных.
Назначение пользователю Бухгалтер материального стола новой роли.
Дождавшись завершения обновления конфигурации, выполним последние настройки. Пользователю Бухгалтер материального стола нужно назначить новую роль, которую мы только что создали. В программе 1С: Бухгалтерия 8" ред. 2.0 (как и в любой другой программы 1С) список пользователей доступен в подменю "Администрирование", в пункте "Пользователи" (см. рис.9). Откроем этот список.
Перед нашими глазами появляется Список пользователей, в моем случае их всего три. Дважды нажимаем на нужного нам пользователя, в примере это Бухгалтер материального стола, затем открывается окно для его редактирования. Нажимаем на закладку "Прочие" и видим здесь все присутствующие в нашей конфигурации роли. Назначаем пользователю новую роль, в примере это БухгалтерБезСтандартныхОтчетов, а так же назначаем роль Дополнительное право открытия внешних отчетов и обработок и жмем "ОК" (см. рис.10). Кстати, стандартные роли "Бухгалтер" и "Полные права" должны быть неактивны для данного пользователя и если ранее использовались, то теперь их нужно убрать.
Рис.10. Назначение новой роли.
Обновление конфигурации новым способом.
Читайте о наших услугах по обновлению типовых и нетиповых конфигураций фирмы 1С.
Для тех кто подробно читал статью остался открытым один вопрос, а именно: каким образом обновлять конфигурацию, с учетом, что она стала доступной для редактирования? Как уже говорилось ранее полностью автоматическое обновление стало невозможно. Как Вы понимаете, этот раздел выполнять сразу после добавления новой роли не нужно. Но, рано или поздно выйдет новый релиз программы 1С и нам потребуется обновить конфигурацию. Как и раньше, открываем раздел "Конфигурация", далее "Поддержка" и выбираем пункт "Обновить конфигурацию". Указываем на файл обновления. Далее появляется такое окно "Обновление Основная конфигурация — Новая конфигурация поставщика". В нем мы видим, что у нас изменился общий модуль "Управление пользователями" (отмечено голубовато-зеленым цветом). Но, нам не нужно менять весь общий модуль, поэтому в строке "Модуль", в колонке "Режим объединения" два раза щелкаем мышью и далее руководствуемся рис.11. Как видите, нужно оставить одну лишь процедуру, а именно — снять галочку в соответствующей строке. В частном случае измененных процедур в общем модуле может быть несколько, но, нам нужно снять галочку только с одной процедуры, с названием "ПроверитьВозможностьРаботыПользователя". Далее жмем "ОК" и в предыдущем окне "Выполнить". На этом обновление закончится. Нашей целью было сохранить нужную процедуру в общем модуле "Управление пользователями" неизменной (см. рис.5.1 и рис.5.2 в этой статье ).
Рис.11. Обновление конфигурации новым способом.
Теперь наша задача может считаться выполненной. Мы создали новую роль и назначили ее пользователю. Этот пользователь, работая в программе 1С: Бухгалтерия 8" ред. 2.0, не сможет пользоваться Стандартными отчетами, но успешно может пользоваться внешним отчетом о котором идет речь в этой статье. Внешний отчет позволит настраивать список доступных пользователю счетов и мы получим ограничение прав на просмотр конфиденциальной информации.
В этой статье речь пойдет о настройке прав доступа пользователей к объектам системы 1С.
В 1С 8для управления доступа пользователей используется отдельный объект метаданных, который называется Роли.
Далее мы рассмотрим, как использовать и настраивать роли в 1С предприятие 8.3.
Обратите внимание! Эта статья написана в помощь программистам. Настройка прав в пользовательском режиме на примере 1С Бухгалтерия рассмотрена в данной статье.
Роль определяет набор прав пользователя, которые он имеет. Механизм ролей очень похож на механизмы прав Windows Active Directory. Для каждого из объектов (справочники, документы) разработчик устанавливает свой набор прав — чтение/запись/добавление/изменение/…
Набор доступных прав — совокупность всех разрешений в ролях пользователя.
Ниже мы рассмотрим подробно каждый атрибут метаданных при настройке роли пользователя 1С 8.3.
Общие настройки роли 1С
Если открыть объект метаданных Роль, мы можем увидеть следующую картину:
У объекта есть две закладки — Права и Шаблоны ограничений. Права — основная закладка, Шаблоны — вкладка для настройки прав на уровне записи в 1С (RLS). Это очень важная тема, её я постараюсь описать в будущих статьях.
Будем рассматривать только вкладку Права.
- Объекты — список метаданных, на которые будут устанавливаться права.
- Права — список возможных для установки настроек прав.
- Ограничение доступа к данным — поля роли для настройки РЛС (настроек прав на уровне записей)
Следует обратить внимание на галочки в нижней части:
- Устанавливать права для новых объектов — если флаг установлен у роли, на новые объекты метаданных будут автоматически установлены разрешающие права. Рекомендую установить, если Вы часто забываете установить права на новые объекты.
- Устанавливать права для реквизитов и табличных частей по умолчанию — флаг, при установке которого реквизиты и табличные части будут наследовать права владельца(справочника, документа и т.д.)
- Независимые права подчиненных объектов — если флаг установлен, то система при определении права на объект конфигурации учтёт права на родительский объект
Настройки прав на всю конфигурацию
Если открыть Роль и кликнуть на корень конфигурации, мы увидим следующие настройки:
Подробнее о каждом из прав на всю конфигурацию:
Получите 267 видеоуроков по 1С бесплатно:
- Бесплатный видео самоучитель по 1С Бухгалтерии 8.3 и 8.2;
- Самоучитель по новой версии 1С ЗУП 3.0;
- Хороший курс по 1С Управление торговлей 11.
- Администрирование — администрирование информационной базы (требуется наличие права «Администрирование данных»)
- Администрирование данных — право на административные действия над данными
- Обновление конфигурации базы данных — право на обновление конфигурации базы данных
- Монопольный режим — использование монопольного режима
- Активные пользователи — просмотр списка активных пользователей
- Журнал регистрации — журнал регистрации
- Тонкий клиент — право запуска тонкого клиента
- Веб клиент — право запуска веб-клиента
- Толстый клиент — право роли запуска толстого клиента
- Внешнее соединение — право запуска внешнего соединения
- Automation — право на использование automation
- Режим «Все функции» — доступ к пункту меню «Все функции» в режиме управляемого приложения
- Сохранение данных пользователя — разрешение или запрет на сохранение данных пользователя (настроек, избранного, истории). Особенно актуально для 1С управляемых форм.
- Интерактивное открытие внешних обработок — открытие внешних обработок
- Интерактивное открытие внешних отчетов — открытие внешних отчетов
- Вывод — вывод на печать, запись и копирование в буфер обмена
Настройка прав 1С 8.2 на другие объекты метаданных
Для остальных основных объектов (справочники, константы, документы, регистры…), набор прав у роли достаточно стандартен:
- Чтение — чтение (программное)
- Добавление — добавление (программное)
- Изменение — изменение (программное)
- Удаление — удаление (программное)
- Просмотр — просмотр
- Интерактивное добавление — интерактивное добавление
- Редактирование — редактирование
- Интерактивная пометка удаления — интерактивная пометка на удаление
- Интерактивное снятие пометки удаления — снятие пометки на удаление
- Интерактивное удаление помеченных— удаление помеченных объектов
- Ввод по строке — использование режима ввода по строке
- Интерактивное удаление — непосредственное удаление (shift +del)
Права только для документов:
- Интерактивное проведение — проведение
- Отмена проведения — отмена проведения документов
- Интерактивное проведение неоперативное — проведение (стандартными командами форм) документа в неоперативном режиме
- Интерактивная отмена проведения — интерактивная отмена проведения
- Интерактивное изменение проведенных — редактирование проведенного документа. Если право у роли не установлено, то пользователь не может удалить проведенный документ, установить пометку удаления, перепровести или сделать непроведенным. Форма такого документа открывается в режиме просмотра
Только для регистров накопления и бухгалтерии
- УправлениеИтогами — управление итогами регистра бухгалтерии и регистра накопления (установка периода, по который рассчитаны итоги, и пересчет итогов)
Только для обработок и отчетов:
- Использование — использование
Привилегированный режим 1С
Если Вы не хотите давать роли права на какие-либо действия, но эти метаданные нужно использовать в какой-то момент, можно воспользоваться методом «УстановитьПривилегированныйРежим()» (или использовать привилегированный режим общего модуля).
Все, что внутри, будет выполняться без проверки прав пользователя.
Доступна ли роль 1С пользователю?
Чтобы узнать, нужно выполнить функцию РольДоступна(), передав туда название роли строкой.
Например:
Нарушение прав доступа
Такую ошибку можно увидеть, если недостаточно прав на чтение/редактирование/удаление данных. Система выдаёт вот такую ошибку:
Чтобы исправить «нарушение прав доступа», необходимо понять, на какой объект пользователю не хватает прав, и добавить ему либо новую роль, либо в существующую роль добавить больше прав.
Объект не найден…
Ошибка, когда в полях отображается некое ( … ):
Как правило, специалисты думают, что это просто так называемая «битая ссылка». Но это не всегда так. Такая ошибка бывает и при неправильно настроенном механизме прав RLS. Это связано с тем, что у пользователя не хватает прав, чтобы получить представление ссылки.
Для того чтобы понять, битая ссылка или нет, просто зайдите в базу под пользователем с полными правами.
Для массового поиска таких ошибок подойдет статья как найти битые ссылки в базе 1С.
P.S. Если у Вас все же не получилось разобраться в ролях пользователей, Вы можете заказать услуги 1С программиста.
Видео с примером настройки прав в 1С бухгалтерии 3.0:
Другие статьи по 1С:
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.