При работе с крупными информационными базами 1С:Предприятие часто возникает необходимость вынести хранение присоединенных файлов (сканов, документов, медиа-данных) за пределы основной базы данных SQL на внешние сетевые ресурсы. Однако при попытке добавить новый путь в справочник ТомаХраненияФайлов администраторы часто сталкиваются с ошибкой: "Путь к тому некорректен. Возможно, учетная запись, от лица которой работает сервер 1С:Предприятия, не имеет прав доступа". Рассмотрим подробно, почему это происходит и как правильно настроить инфраструктуру для стабильной работы.
По умолчанию при установке сервера 1С создается локальная учетная запись USR1CV8. Она обладает правами только на том компьютере, где установлена служба ragent. Когда сервер 1С пытается обратиться к сетевому пути вида \\file-server\share, удаленный компьютер (файловый сервер) отклоняет запрос, так как он "не знает" локального пользователя другого сервера.
Многие пытаются решить это созданием на файловом сервере локального пользователя с таким же именем и паролем. Это может сработать в простых сетях, но с точки зрения администрирования Active Directory такой подход считается технически неграмотным и небезопасным. Проанализируем правильный алгоритм действий.
Для того чтобы сервер 1С мог беспрепятственно работать в доменной среде, нам необходимо запустить службу "Агент сервера 1С:Предприятия" от имени специально созданного доменного пользователя. Разберем этот процесс по шагам:
SRV-1C-Service. Установим для нее сложный пароль и снимем флаг "Требовать смену пароля при следующем входе".secpol.msc):
C:\Program Files\1cv8\srvinfo).SRV-1C-Service и предоставим ему права "Изменение" и "Чтение".Если ваша инфраструктура работает на базе Windows Server 2012 и выше, наиболее современным и безопасным способом является использование Group Managed Service Accounts (gMSA). Выясним преимущества этого подхода: операционная система сама управляет паролем учетной записи, автоматически меняет его и синхронизирует между серверами кластера 1С.
Для настройки gMSA выполним следующие действия в PowerShell:
# Создание ключа KDS (если не создавался ранее)
Add-KdsRootKey -EffectiveTime ((Get-Date).AddHours(-10))
# Создание управляемой учетной записи
New-ADServiceAccount -Name gmsa1cv8 -DNSHostName gmsa1cv8.domain.local -PrincipalsAllowedToRetrieveManagedPassword "SERVER-1C$"
# Установка на сервере 1С
Install-ADServiceAccount -Identity gmsa1cv8
После установки этой учетной записи, ее можно указать в качестве владельца службы 1С, оставив поле пароля пустым. Это исключает проблемы с блокировкой учетки из-за просроченного пароля и обеспечивает прозрачный доступ к сетевым ресурсам.
Иногда даже при использовании доменной учетной записи 1С выдает ошибку 161(0x000000A1). Разберем, на что стоит обратить внимание при возникновении подобных коллизий:
gpedit.msc по пути: Конфигурация компьютера — Конфигурация Windows — Параметры безопасности — Локальные политики — Назначение прав пользователя. Убедитесь, что ваша учетная запись службы НЕ указана в пункте "Отказ в доступе к этому компьютеру из сети".C:\Program Files\1cv8\srvinfo, сервер не сможет инициализировать сеансы, и ошибка доступа к сети будет лишь следствием общей неработоспособности.\\ServerName\ShareName. Попытка использовать подключенные сетевые диски (например, Z:\Files) внутри 1С приведет к ошибке, так как сетевые диски подключаются в контексте сеанса пользователя, а служба работает в изолированной сессии "0".Проанализируем ситуацию, когда СХД (сетевое хранилище) не может быть включено в домен. В этом случае на СХД должен существовать пользователь с идентичным именем и паролем, что и пользователь, под которым работает сервер 1С.
Важно: если на сервере 1С пароль пользователя пустой, то и на СХД он должен быть пустым, однако многие современные системы безопасности блокируют доступ по сети с пустыми паролями. Поэтому рекомендуется всегда назначать пароль для сервисных учетных записей.
В завершение отметим, что правильная настройка прав доступа — это не только вопрос работоспособности 1С, но и вопрос безопасности ваших данных. Использование групп в Active Directory для управления доступом к томам хранения файлов позволит вам в будущем легко масштабировать систему, просто добавляя новые серверы 1С в соответствующую группу доступа.