Почему 1С не пускает в базу или к данным и что с этим делать
Содержание
Отказ в 1С почти никогда не бывает «просто глюком». Платформа отказывает на одном из пяти рубежей: подключение к базе, проверка пользователя, лицензия, права на объект или блокировка. По тексту сообщения почти всегда видно, какой рубеж сработал, и от этого зависит, кого звать: системного администратора, администратора 1С или ответственного за права.
Частое заблуждение — «раз у меня полные права, мне всё доступно». Это не так. Полные права не спасают от занятой монопольно базы, от запрета начала сеансов, от нехватки лицензий и от чужой транзакции, которая держит блокировку на нужной записи. Механизм отказов в 1С многоуровневый, и каждый уровень проверяется отдельно.
Как устроен доступ к базе: пять рубежей проверки
Когда пользователь нажимает «1С:Предприятие» в окне запуска, платформа проходит цепочку проверок. Отказ на любом шаге останавливает вход.
- Подключение. Для файловой базы — доступ к каталогу с файлом
1Cv8.1CD. Для клиент-серверной — связь с агентом сервера (порт 1540), менеджером кластера (1541) и рабочими процессами (диапазон портов задаётся в свойствах рабочего сервера, по умолчанию 1560–1591). - Блокировка начала сеансов. Если администратор запретил вход, пустят только с кодом разрешения.
- Аутентификация. Платформа ищет пользователя в списке пользователей базы и проверяет пароль, учётную запись Windows или OpenID.
- Лицензия. Сеансу нужна свободная клиентская лицензия. Без неё база не запустится — режима «поработать без лицензии» нет, исключение только учебная версия.
- Права и блокировки данных. Уже внутри сеанса каждое действие проверяется по ролям пользователя, ограничениям на уровне записей и блокировкам, которые держат другие транзакции.
| Рубеж | Кто решает | Типичный признак отказа |
|---|---|---|
| Подключение | Системный администратор | Сервер или файл базы не найден |
| Блокировка сеансов | Администратор 1С | Начало сеансов запрещено |
| Аутентификация | Администратор 1С | Идентификация пользователя не выполнена |
| Лицензия | Системный администратор | Не найдена свободная лицензия |
| Права и блокировки | Администратор 1С / разработчик | Нарушение прав доступа, конфликт блокировок |
Пустой список пользователей в Конфигураторе означает, что проверки пароля нет вовсе: в базу входит любой, кто до неё добрался, с полными правами. Как только вы создаёте первого пользователя, аутентификация включается для всех.
Какие бывают отказы при подключении и входе
Ниже — сообщения, которые встречаются чаще всего, сгруппированные по рубежам. Формулировки могут слегка отличаться в разных версиях платформы, но ключевые слова совпадают.
Отказы на уровне подключения
- 🔌
Не удается установить соединение с сервером 1С:Предприятия— клиент не достучался до агента. Причины: служба не запущена, порты закрыты файрволом, в адресе базы опечатка в имени сервера. - 📁
Информационная база не обнаружена— в клиент-серверном варианте имя базы в списке не совпадает с именем в кластере; в файловом — путь ведёт не туда. - 🔒
Ошибка доступа к файлуилиНарушение совместного доступадля1Cv8.1CD— у пользователя Windows нет прав на запись в каталог базы или файл держит другой процесс (антивирус, резервное копирование ).
Отказы на уровне входа
- 👤
Идентификация пользователя не выполнена— неверное имя или пароль, либо пользователь не найден в списке. - 🪟 При аутентификации Windows — учётная запись домена не привязана к пользователю 1С или привязана к другому домену.
- ⛔
Начало сеансов с информационной базой запрещено— включена блокировка сеансов. Рядом обычно выводится текст, который ввёл администратор. - 🎫 Сообщения о том, что не найдена или не обнаружена лицензия, — все лицензии заняты или ключ недоступен.
- 🖥️ Отказ на конкретный клиент — у пользователя нет права на запуск тонкого, толстого или веб-клиента.
Отказы внутри сеанса
- 🚫
Нарушение прав доступа— роль не даёт права на объект или действие. - 📊 Пустой отчёт или список при наличии данных — сработало ограничение на уровне записей (RLS), а не ошибка.
- ⏳
Конфликт блокировок при выполнении транзакции: Превышено максимальное время ожидания предоставления блокировки— нужные записи заняты чужой транзакцией. - 🔐
Ошибка установки монопольного режима— в базе есть другие сеансы.
Права, роли и группы доступа: как настроить, чтобы не было лишних отказов
Права в 1С строятся из ролей. Роль — набор разрешений на объекты конфигурации: читать, добавлять, изменять, удалять, проводить, просматривать. Пользователь получает сумму прав всех своих ролей. Запретов нет: если хотя бы одна роль даёт право, оно есть.
Права уровня всей базы
Кроме прав на справочники и документы, у корня конфигурации есть права, которые решают, пустят ли пользователя вообще:
- 🖥️
ТонкийКлиент,ТолстыйКлиент,ВебКлиент— с каким клиентом можно входить; - 🔗
ВнешнееСоединениеиAutomation— доступ из внешних программ, обменов, скриптов; - 🛠️
АдминистрированиеиАдминистрированиеДанных— управление пользователями и обслуживанием; - 🔐
МонопольныйРежим— право установить монопольный доступ; - 📂
ИнтерактивноеОткрытиеВнешнихОбработокиИнтерактивноеОткрытиеВнешнихОтчетов— открытие внешних файлов.epfи.erf.
Если сотрудник жалуется, что не может открыть внешнюю обработку от поставщика, а обычная работа идёт, дело почти наверняка в последних двух правах.
Настройка в типовых конфигурациях
В БП 3.0, ЗУП 3.1 и УТ 11 роли напрямую пользователям не назначают. Работает схема «профиль → группа доступа → пользователь»:
| Что сделать | Путь |
|---|---|
| Список пользователей | Администрирование → Настройки пользователей и прав → Пользователи |
| Группы доступа | Администрирование → Настройки пользователей и прав → Группы доступа |
| Профили (наборы ролей) | Администрирование → Настройки пользователей и прав → Профили групп доступа |
| Включить RLS | флаг Ограничивать доступ на уровне записей в настройках пользователей и прав |
Порядок действий при отказе «нет прав» у конкретного сотрудника:
- Откройте карточку пользователя и перейдите к его правам доступа — там видно, в каких группах он состоит.
- Найдите группу, которая должна давать нужное право, и проверьте её профиль.
- Если право нужно только одному человеку, создайте отдельную группу на основе подходящего профиля, а не расширяйте общий.
- Пользователю нужно перезапустить 1С — права перечитываются при входе.
Не правьте поставляемые профили. При обновлении конфигурации они вернутся к исходному виду, и ваши изменения пропадут. Копируйте профиль и меняйте копию.
Ограничение на уровне записей
RLS не выдаёт сообщение об отказе. Пользователь просто не видит записи по чужим организациям или складам. Поэтому жалоба «отчёт пустой, а у бухгалтера всё есть» — повод в первую очередь проверить ограничения в группе доступа, а не данные. Если же RLS запрещает запись, которая нужна для проведения, пользователь получит Нарушение прав доступа с упоминанием таблицы.
Защита от опасных действий
Отдельный вид отказа — предупреждение при открытии внешней обработки или загрузке расширения. В карточке пользователя в Конфигураторе есть флаг Защита от опасных действий. Платформа не запрещает действие, а просит подтвердить его. Снимать флаг стоит только тем, кто сам разрабатывает и проверяет обработки.
Монопольный режим и блокировка работы пользователей
Монопольный режим — это сеанс, при котором никто другой не может работать в базе. Он нужен не всегда, а только для операций, меняющих базу целиком:
- 🔄 обновление структуры базы данных при изменении конфигурации (кроме динамического обновления);
- 📥 загрузка информационной базы из файла
.dt; - 🧪 тестирование и исправление информационной базы.
Обычная работа в Конфигураторе, просмотр конфигурации и даже её редактирование монопольного режима не требуют.
Как освободить базу для обслуживания
- Посмотрите, кто работает: в типовой конфигурации —
Администрирование → Обслуживание → Активные пользователи, в клиент-серверном варианте также консоль кластера, ветка сеансов нужной базы. - Предупредите пользователей о времени работ.
- Включите блокировку:
Администрирование → Обслуживание → Блокировка работы пользователей. Укажите время начала, текст сообщения и код разрешения. - В клиент-серверной базе то же самое делается в консоли кластера: в свойствах информационной базы ставят флаг блокировки начала сеансов, пишут сообщение и код разрешения. Там же можно заблокировать регламентные задания.
- Сами войдите с параметром запуска
/UC<код>и выполните работы. - Снимите блокировку. Забытая блокировка — частая причина утреннего «никто не может войти».
Принудительное завершение сеансов из консоли кластера обрывает работу пользователей без сохранения. Несохранённые документы потеряются, транзакция откатится. Делайте это вне рабочего времени или после предупреждения.
Блокировки данных — не то же самое
Монопольный режим блокирует базу целиком. Блокировки данных работают на уровне записей и живут, пока идёт транзакция. При управляемом режиме блокировок платформа ждёт освобождения записи по умолчанию 20 секунд, затем выдаёт конфликт блокировок. Если две транзакции ждут друг друга, возникает взаимоблокировка, и одна из них откатывается.
Типичные источники:
- 📦 закрытие месяца или перепроведение за период, запущенное днём;
- 🔁 обмен данными, который проводит пакет документов;
- ⏰ регламентное задание, совпавшее с пиком работы.
Решение здесь организационное: перенести тяжёлые операции на вечер, разнести регламентные задания по времени. Если конфликт возникает в доработанном коде — это задача разработчику: длинные транзакции и лишние блокировки в модулях проведения.
Диагностика отказов: журнал регистрации, консоль кластера, технологический журнал
Журнал регистрации
Первое место, куда смотреть. Открывается в типовой конфигурации через Администрирование → Обслуживание → Журнал регистрации, в Конфигураторе — через меню Администрирование.
- Установите отбор по интервалу: от 10 минут до и после жалобы.
- Отберите по пользователю.
- Ищите события группы «Сеанс» с уровнем «Ошибка» — там отказы аутентификации — и события с текстом ошибки на нужном объекте.
Журнал покажет, с какого компьютера пытались войти и под каким именем. Серия неудачных попыток входа ночью под именем Администратор — повод поменять пароль и проверить, кто имеет доступ к серверу.
Консоль кластера и rac
В клиент-серверном варианте консоль кластера показывает сеансы, соединения и текущие блокировки по каждой базе. Из командной строки то же доступно через утилиту rac и службу ras:
rac cluster list
rac session list --cluster=<uuid кластера> --licenses
Вторая команда показывает, кто занял лицензии. Остальные подкоманды смотрите в rac help.
Технологический журнал
Если журнал регистрации молчит, включают технологический журнал. Он настраивается файлом logcfg.xml в каталоге conf платформы. Для разбора отказов полезны события:
| Событие | Что фиксирует |
|---|---|
EXCP | исключения, в том числе ошибки входа и прав |
CONN | установку и разрыв соединений |
TLOCK | управляемые блокировки |
TTIMEOUT | превышение времени ожидания блокировки |
TDEADLOCK | взаимоблокировки |
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="C:\techlog" history="24">
<event>
<eq property="name" value="EXCP"/>
</event>
<event>
<eq property="name" value="TTIMEOUT"/>
</event>
<property name="all"/>
</log>
</config>
Технологический журнал с отбором property name="all" быстро растёт на нагруженном сервере. Включайте его на время разбора и ограничивайте параметр history (в часах).
Профилактика: как сделать так, чтобы отказов было меньше
- 🧑💼 Отдельный администратор. Учётную запись с полными правами не используют для ежедневной работы. Бухгалтер работает под своей учёткой с нужным профилем.
- 🪪 Аутентификация Windows для доменной сети. Пользователи не забывают пароли, а увольнение сотрудника в домене сразу закрывает ему вход.
- 📅 Окно обслуживания. Обновления, закрытие месяца, тестирование — в фиксированное время, о котором знают все.
- 🎫 Учёт лицензий. Раз в квартал сверяйте число одновременных сеансов в пиковые часы с числом лицензий. Зависшие сеансы тоже занимают лицензию.
- 📂 Права на каталог файловой базы. Всем пользователям — чтение и запись в каталог, исключение каталога базы из проверки антивирусом на лету.
- 🧾 Журнал регистрации не выключайте и храните хотя бы несколько месяцев — иначе отказ задним числом не разобрать.