Слово «разрешенные» в 1С: где встречается и что с ним делать
Содержание
В 1С 8.3 «разрешенные» почти всегда означает одно: пользователь видит и меняет только те данные, к которым ему открыт доступ, а остальное программа молча скрывает. Чаще всего это слово встречается в трёх местах: в тексте запроса (ВЫБРАТЬ РАЗРЕШЕННЫЕ), в настройках прав доступа (роли, группы доступа, «разрешенные значения» по организациям и складам) и в технических настройках безопасности (профили безопасности кластера, безопасный режим расширений).
Если отчёт показывает меньше документов, чем есть в базе, или документ падает с ошибкой Нарушение прав доступа!, причина почти наверняка в одной из этих настроек. Каждое из этих мест настраивается отдельно, и проверять их удобнее по очереди.
Как 1С выдаёт права: роли только разрешают
Права в 1С 8.3 строятся на ролях. Роль — это набор флажков по объектам конфигурации: «Чтение», «Добавление», «Изменение», «Удаление», «Проведение», «Просмотр», «Интерактивное удаление» и другие.
Главное правило ролевой модели:
- ✅ Роль может только разрешать. Запрещающих ролей в платформе нет.
- ➕ Права суммируются. Если у пользователя две роли и в одной есть «Изменение» справочника, а в другой нет — изменение разрешено.
- 🚫 Нет флажка — нет права. Всё, что не разрешено ни одной ролью, недоступно.
Отсюда практический вывод. Чтобы «запретить» что-то конкретному сотруднику, нельзя добавить ему роль-запрет. Нужно убрать роль, которая это разрешает, или сделать отдельную, более узкую роль.
Уровни ограничений
| Уровень | Что ограничивает | Где настраивается |
|---|---|---|
| Право на объект | Можно ли вообще открыть справочник, документ, отчёт | Роли в Конфигураторе, профили групп доступа в БСП |
| Ограничение на уровне записей (RLS) | Какие именно строки видны: документы только своей организации, склада | Условия в ролях, виды доступа в группах доступа |
| Ограничение на уровне полей | Видны ли отдельные реквизиты | Ограничение доступа к полям в роли |
| Даты запрета | Можно ли менять документы прошлых периодов | Отдельная настройка в типовых конфигурациях |
В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) роли напрямую пользователю обычно не назначают. Роли собраны в профили групп доступа, а пользователя включают в группу доступа. Путь в БП 3.0: Администрирование → Настройки пользователей и прав → Группы доступа.
Изменения ролей вступают в силу при следующем входе. Если поменяли права, а пользователь «ничего не видит нового», пусть закроет 1С и зайдёт заново.
РАЗРЕШЕННЫЕ в тексте запроса
Это самое частое значение слова для тех, кто пишет отчёты и обработки. Ключевое слово РАЗРЕШЕННЫЕ (англ. ALLOWED) ставится сразу после ВЫБРАТЬ:
ВЫБРАТЬ РАЗРЕШЕННЫЕ
Реализация.Ссылка КАК Документ,
Реализация.Организация,
Реализация.СуммаДокумента
ИЗ
Документ.РеализацияТоваровУслуг КАК Реализация
ГДЕ
Реализация.Дата МЕЖДУ &НачалоПериода И &КонецПериода
Что меняет это слово
Разница проявляется только там, где включено ограничение на уровне записей:
- 🔴 Без РАЗРЕШЕННЫЕ. Если в выборку попадает хотя бы одна запись, которую пользователю читать нельзя, весь запрос завершается ошибкой. Пользователь получает сообщение о нарушении прав и не видит ничего.
- 🟢 С РАЗРЕШЕННЫЕ. Недоступные записи просто не попадают в результат. Запрос выполняется, пользователь видит свою часть данных.
Если RLS в базе не настроено, слово ни на что не влияет — запрос вернёт всё, что разрешено ролями.
Где ставить и где нет
- В запросе с
ОБЪЕДИНИТЬслово пишут только в первой части. Оно действует на весь запрос-объединение. - В пакете запросов каждый запрос самостоятельный. Если временную таблицу собирает запрос без РАЗРЕШЕННЫЕ, а итог — запрос с ним, ошибка всё равно возникнет на первом шаге.
- В запросах для отчётов на СКД слово пишут в тексте запроса набора данных. В конструкторе запроса это флажок «Разрешенные» на вкладке «Дополнительно».
- В динамическом списке с произвольным запросом тоже пишите РАЗРЕШЕННЫЕ в тексте — иначе у пользователя с ограничением на уровне записей список может выдать ошибку прав вместо данных.
Итоги по запросу с РАЗРЕШЕННЫЕ считаются только по видимым записям. Бухгалтер с доступом к одной организации увидит в отчёте выручку только этой организации и не получит никакого предупреждения. Если отчёт должен показывать сводные цифры, его выполняют в привилегированном режиме на сервере, а не убирают ограничения у пользователя.
Привилегированный режим
Код, выполняемый в привилегированном режиме, не проверяет права и RLS. Это общий модуль с флажком «Привилегированный» или вызов УстановитьПривилегированныйРежим(Истина) на сервере. Так типовые конфигурации делают служебные расчёты, которые должны видеть все данные. Не используйте этот приём, чтобы обойти ограничения для пользователя, — именно так в базах появляются утечки данных между организациями.
Разрешенные значения в группах доступа
В программах на БСП ограничения на уровне записей настраиваются без программиста — через виды доступа. Типичные виды доступа: организации, контрагенты, склады, физические лица, группы номенклатуры. Набор зависит от конфигурации.
Сначала ограничение нужно включить. В БП 3.0 это флажок «Ограничивать доступ на уровне записей» в разделе Администрирование → Настройки пользователей и прав. Без этого флажка списки «разрешенных значений» не действуют.
Как настроить разрешенные организации или склады
- Откройте
Администрирование → Настройки пользователей и прав → Группы доступа. - Откройте группу, в которую входит пользователь, или создайте новую на основе нужного профиля.
- Перейдите на вкладку ограничений доступа. Там перечислены виды доступа, которые поддерживает профиль.
- Для вида доступа (например, «Организации») выберите режим: все разрешены или все запрещены.
- Заполните список значений — это исключения из выбранного режима.
- Запишите группу и попросите пользователя перезайти.
Как читать режимы:
| Режим | Что видит пользователь |
|---|---|
| Все разрешены, список — исключения | Всё, кроме перечисленных значений |
| Все запрещены, список — исключения | Только перечисленные значения — это и есть «разрешенные» |
Для бухгалтера одной организации из холдинга удобнее режим «Все запрещены» с одной организацией в списке. Когда в базу добавят новую фирму, она не станет видна ему автоматически.
Режим по виду доступа можно зафиксировать в профиле — тогда во всех группах этого профиля он одинаковый. Если в группе нет вкладки с ограничениями или вид доступа нельзя изменить, значит, так задано в профиле, а сам профиль поставляемый и не редактируется. Скопируйте профиль и настройте копию.
Если пользователь входит в несколько групп доступа, разрешенные значения складываются. Состоит в группе с организацией «Альфа» и в группе с организацией «Бета» — увидит обе.
Разрешенный период: даты запрета изменения
Второе частое значение — «разрешенный период», то есть с какой даты пользователю можно менять документы. Это не права в смысле ролей, а отдельный механизм типовых конфигураций — даты запрета изменения.
Как это работает:
- 📅 Задаётся дата, по которую данные закрыты. Документы с датой не позже неё нельзя записать, провести или пометить на удаление.
- 👥 Дату задают для всех пользователей сразу или для конкретного пользователя и группы.
- 🏢 Можно задать отдельную дату по каждой организации.
- 🔓 Пользователю-исключению указывают свою, более раннюю дату — у него разрешенный период шире.
В БП 3.0 механизм включается в разделе Администрирование → Проведение документов: флажок «Даты запрета изменения» и ссылка на настройку дат. Там же выбирают способ указания — общая дата или по организациям и пользователям.
Типичная схема для бухгалтерии после сдачи квартальной отчётности:
- Всем пользователям — дата запрета по последний день сданного квартала.
- Главному бухгалтеру — дата на квартал раньше, чтобы он мог внести исправления.
- После сдачи следующего периода даты сдвигают вперёд.
Сдвигать дату запрета назад ради правки закрытого периода стоит только после согласования с главным бухгалтером. Перепроведение документов в сданном периоде меняет обороты, по которым уже подана отчётность.
Разрешенные внешние ресурсы: профили безопасности и безопасный режим
Третье значение — техническое. Здесь «разрешенные» — это белый список того, к чему код 1С может обращаться за пределами базы.
Профили безопасности кластера
В клиент-серверной базе администратор кластера может назначить информационной базе профиль безопасности. В нём перечисляются разрешенные:
- 📁 виртуальные каталоги на диске сервера;
- 🧩 COM-классы и внешние компоненты;
- ⚙️ приложения, которые можно запускать с сервера;
- 🌐 интернет-ресурсы (адреса и порты).
Профили создаются в консоли администрирования серверов 1С в ветке кластера. Если профиль назначен, а обработка обращается к ресурсу, которого нет в списке, она падает с ошибкой безопасного режима. Типовые конфигурации на БСП умеют сами формировать запрос на разрешения: при подключении внешней обработки появляется окно с перечнем ресурсов, которые нужно разрешить, и его подтверждает администратор.
Расширения и внешние обработки
У расширения конфигурации
есть свойство «Безопасный режим». Расширение в безопасном режиме не может писать файлы, запускать программы и вызывать COM-объекты без разрешений профиля безопасности. Его видно в списке расширений: Администрирование → Печатные формы, отчеты и обработки → Расширения.
Внешние отчёты и обработки, подключённые через «Дополнительные отчеты и обработки», в БСП тоже по умолчанию работают в безопасном режиме. Открыть внешний файл .epf или .erf через меню «Файл» может только пользователь с правом интерактивного открытия внешних обработок. Обычному пользователю это право давать не нужно.
Ещё одна связанная настройка — «Защита от опасных действий» в свойствах пользователя. Пока флажок стоит, платформа предупреждает при открытии внешних обработок и расширений, полученных не из базы. Снимать его стоит только администратору.
Разрешенные процессы на уровне Windows
Иногда «разрешенные» означает список исключений антивируса или правила AppLocker. Если корпоративная политика пропускает только разрешенные программы, в белый список добавляют:
1cv8.exe,1cv8c.exe,1cv8s.exe— клиентские исполняемые файлы;ragent.exe,rmngr.exe,rphost.exe— процессы сервера 1С;ras.exe— сервер администрирования, если используетсяrac.
В брандмауэре сервера открывают порт агента 1540, менеджера кластера 1541 и диапазон рабочих процессов (по умолчанию 1560–1591, задаётся в свойствах рабочего сервера).
Как найти, что ограничивает пользователя
Когда у одного сотрудника всё работает, а у другого нет, проверяйте по порядку — от простого к сложному.
- Повторите действие под администратором. Работает — проблема в правах, не в данных и не в программе.
- Проверьте состав групп доступа. В карточке пользователя (
Администрирование → Настройки пользователей и прав → Пользователи) откройте его права доступа . В БСП там же есть отчёт о правах: какие роли получены и через какие группы. - Проверьте разрешенные значения. Если документ не виден в списке, сравните его организацию и склад со списком значений в группе доступа.
- Проверьте дату запрета. Документ виден, но не проводится — посмотрите, не попадает ли его дата в закрытый период для этого пользователя.
- Посмотрите журнал регистрации. Отказы в доступе пишутся в журнал регистрации как события доступа. Отберите события по пользователю и времени ошибки — в комментарии будет объект, на котором сработал запрет.
- Для доработок — проверьте текст запроса. Если ошибка возникает в нетиповом отчёте у ограниченного пользователя, в запросе почти всегда не хватает РАЗРЕШЕННЫЕ.