Администрирование · 10 мин
Как отключить OpenID в 1С
Как отключить OpenID-аутентификацию в 1С:Предприятии: настройка в конфигураторе, правка файлов default.vrd и web-сервера, проверка результата и типичные ошибки.
OpenID-аутентификация в 1С:Предприятии используется для единого входа пользователей в несколько информационные базы без повторного ввода пароля. Однако на практике администраторы часто сталкиваются с необходимостью её отключить: механизм включается автоматически при определённых настройках публикации, вызывает ошибки «Ошибка аутентификации OpenID» при входе через веб-клиент или мешает после смены адреса сервера.
Отключение OpenID выполняется на двух уровнях: в свойствах информационной базы в конфигураторе и в файлах публикации на веб-сервере. В зависимости от того, где именно включён механизм, достаточно одного действия или потребуется их комбинация. Ниже разобраны все типовые сценарии — от простого снятия флажка до ручной правки файла default.vrd.
Перед любыми изменениями убедитесь, что у вас есть резервная копия информационной базы и права администратора как в 1С, так и на сервере, где опубликована база. Ошибка в файле публикации способна полностью остановить доступ пользователей через веб-клиент.
Что такое OpenID в 1С и когда его нужно отключать
OpenID в контексте 1С — это механизм сквозной аутентификации: одна информационная база выступает провайдером удостоверений, а остальные базы доверяют ей и не запрашивают пароль повторно. Настройка выполняется через параметры информационной базы, а при публикации на веб-сервере соответствующие директивы записываются в файл default.vrd.
На практике отключать OpenID приходится в нескольких типичных ситуациях. Первая — после переноса базы на другой сервер или смены доменного имени: старый адрес провайдера OpenID становится недоступен, и пользователи веб-клиента получают ошибку аутентификации вместо окна входа. Вторая — когда OpenID включился непреднамеренно при публикации через диалог публикации на веб-сервере, где по умолчанию мог быть отмечен соответствующий пункт. Третья — переход на другую схему аутентификации, например на доменную (NTLM/Kerberos) или на стандартный ввод логина и пароля.
Проверьте, где именно включён OpenID
Прежде чем что-то менять, определите, на каком уровне активирован механизм. OpenID может быть включён в свойствах информационной базы (хранится внутри базы), в файле публикации default.vrd на веб-сервере, или в обоих местах одновременно. Признак проблемы обычно виден сразу: при открытии веб-клиента появляется сообщение об ошибке OpenID-аутентификации, бесконечное перенаправление на страницу входа или требование войти через адрес, который больше не существует.
Откройте конфигуратор под пользователем с административными правами и пройдите в меню «Администрирование» → «Параметры информационной базы». Если там задан адрес провайдера OpenID или включено использование OpenID, значит, настройка хранится в самой базе. Параллельно найдите каталог публикации на веб-сервере (для IIS это обычно подкаталог внутри wwwroot или отдельная папка, указанная при публикации) и откройте файл default.vrd в текстовом редакторе — наличие в нём блока с элементом openid подтверждает настройку на уровне публикации.
Проверить параметры ИБ в конфигураторе и файл default.vrd
Найти URL провайдера в параметрах информационной базы
Открыть default.vrd и искать элемент openid
Отключение OpenID через конфигуратор
Основной и самый безопасный способ — снять настройку в параметрах информационной базы. Для этого запустите конфигуратор, войдите под пользователем с правами администрирования и откройте «Администрирование» → «Параметры информационной базы». В открывшемся окне найдите секцию, отвечающую за OpenID: там может быть поле адреса провайдера и признак использования базы как провайдера или зависимой базы.
Очистите адрес провайдера OpenID и снимите связанные флажки, затем сохраните параметры. Если база работает в клиент-серверном режиме, изменения применяются сразу, но активные сеансы веб-клиентов могут потребовать повторного входа. Предупредите пользователей заранее или выполняйте операцию вне рабочего времени.
- 1Откройте конфигуратор под администратором
- 2Перейдите: Администрирование → Параметры информационной базы
- 3Очистите адрес провайдера OpenID и снимите связанные флажки
- 4Сохраните параметры и закройте окно
- 5Проверьте вход через веб-клиент в отдельном браузере
Если база сама выступала провайдером OpenID для других баз, простое отключение на её стороне сломает вход во все зависимые базы. Сначала отключите OpenID в каждой зависимой базе, и только потом снимайте роль провайдера. Это самая частая причина массовых жалоб после «простого отключения».
Отключение OpenID в файле default.vrd на веб-сервере
Если OpenID прописан только в публикации, править нужно файл default.vrd. Он находится в каталоге публикации информационной базы на веб-сервере. Остановите доступ пользователей или выберите период низкой нагрузки, откройте файл в текстовом редакторе с правами администратора и найдите элемент, содержащий настройки OpenID, — обычно это вложенный блок внутри описания точки подключения.
Удалите элемент openid целиком вместе с его атрибутами, сохраните файл и перезапустите веб-сервер: для IIS выполните iisreset в командной строке от имени администратора, для Apache — перезапуск службы. После перезапуска веб-сервер перечитает публикацию, и вход пойдёт по стандартной схеме с запросом имени пользователя и пароля 1С.
<point name="MyBase" ...>
<openid url="http://old-server/base/ws/OpenID.1cws"/>
</point>
Альтернатива ручной правке — повторная публикация базы из конфигуратора («Администрирование» → «Публикация на веб-сервере») с отключёнными опциями OpenID. При повторной публикации файл default.vrd перезаписывается, поэтому все ручные правки в нём будут потеряны — учитывайте это, если в файле есть другие нестандартные настройки.
Отключение OpenID в клиент-серверном варианте и на кластере
В клиент-серверной архитектуре параметры OpenID хранятся в свойствах информационной базы кластера. Помимо конфигуратора их можно посмотреть и изменить через консоль управления сервером 1С: откройте свойства нужной базы в ветке «Информационные базы» и проверьте поля, связанные с аутентификацией OpenID. Изменения применяются на уровне кластера и действуют для всех способов подключения.
Учтите, что веб-сервер и кластер — независимые уровни. Если OpenID включён и в свойствах базы кластера, и в default.vrd, отключение только в одном месте не решит проблему: пользователи продолжат получать ошибку или перенаправление. Проверяйте оба уровня последовательно и фиксируйте, что именно меняли, чтобы при необходимости откатить изменения.
Проверка результата и типичные ошибки
После отключения OpenID проверьте вход через веб-клиент в браузере, желательно в режиме инкогнито, чтобы исключить влияние кэша и старых cookie. Нормальный результат — стандартная форма ввода имени пользователя и пароля 1С без перенаправлений на сторонние адреса. Дополнительно проверьте вход через тонкий клиент и, если используются, веб-сервисы — они не должны требовать OpenID-удостоверения.
К типичным ошибкам относятся: правка default.vrd без перезапуска веб-сервера (изменения не подхватываются), отключение провайдера раньше зависимых баз, а также очистка настроек только в конфигураторе при активном блоке openid в публикации. Отдельная ловушка — кэш браузера: страница ошибки может сохраниться, и после корректного отключения пользователь всё ещё видит старую ошибку. В таком случае достаточно очистить кэш или открыть адрес в другом браузере.
Как проверить результат
Открывается стандартная форма логина и пароля
Перенаправление на сторонний адрес или ошибка OpenID
Элемент openid отсутствует
Блок openid остался или файл содержит синтаксическую ошибку
Все базы запрашивают обычные учётные данные
Часть баз недоступна после отключения провайдера
Что важно запомнить
OpenID в 1С отключается в параметрах информационной базы в конфигураторе и/или удалением элемента openid из default.vrd с последующим перезапуском веб-сервера. Сначала отключайте зависимые базы, затем провайдера, а результат проверяйте в чистом браузере.
Частые вопросы
Можно ли отключить OpenID без доступа к конфигуратору?
Да, если OpenID включён только на уровне публикации: достаточно удалить элемент openid из файла default.vrd на веб-сервере и перезапустить службу веб-сервера. Если настройка хранится в самой базе, без конфигуратора или консоли кластера обойтись не получится.
Почему после отключения OpenID веб-клиент всё равно показывает ошибку?
Чаще всего виноваты кэш браузера и старые cookie — откройте базу в режиме инкогнито. Второй вариант: веб-сервер не был перезапущен после правки default.vrd, и старые настройки продолжают действовать.
Что будет с пользователями после отключения OpenID?
Они начнут входить по стандартной схеме: имя пользователя и пароль информационной базы. Если пароли ранее не задавали (вход был только через OpenID), администратору потребуется установить пароли в списке пользователей в конфигураторе.
Отличается ли отключение для IIS и Apache?
Сам файл default.vrd одинаков, различия только в перезапуске: для IIS выполняется команда iisreset от имени администратора, для Apache — перезапуск соответствующей службы операционной системы.
Как отключить OpenID, если база-провайдер уже удалена?
Откройте зависимую базу в конфигураторе и очистите адрес провайдера в параметрах информационной базы, затем проверьте и при необходимости удалите блок openid из default.vrd. Если вход в конфигуратор невозможен, используйте консоль кластера серверов 1С для правки свойств базы.