Учетные данные 1с это

Обновлено: 07.07.2024

Пользователи 1С

Условно администрирование и контроль включает в себя:

  • создание пользователя;
  • установка прав пользователей;
  • просмотр активных пользователей;
  • анализ действий пользователей.

Рассмотрим каждый из этих пунктов подробнее:

Создание и установка прав пользователей 1С

В зависимости от конфигурации пользователи вводятся либо в конфигураторе, либо в режиме пользователя. Практически все современные конфигурации поддерживают ввод пользователей в режиме 1С: Предприятие 8. Также в режиме 1С: Предприятие, как правило, вводятся дополнительные параметры пользователей.

Однако, независимо от конфигурации, первый пользователь с административными правами всегда вводится в режиме конфигуратор. Поэтому мы рассмотрим оба режима ввода пользователей.

Ввод пользователей в Конфигураторе

Для входа в режим 1С Конфигуратор необходимо в списке выбора баз выбрать вариант Конфигуратор:

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

Получите понятные самоучители по 1С бесплатно:

запуск 1с в режиме конфигуратор

добавление Администратора

На этой странице Вы должны указать настройки пользователя:

Список доступных ролей 1С

Создание пользователя в 1С Бухгалтерия 2.0

Настройки пользователя 1с

автоматически создать пользователя

Необходимо согласиться, отобразится форма нового пользователя базы данных:

пользователь БД

Где необходимо указать нужные настройки авторизации и роли пользователя.

Вот и всё! Создание пользователя и назначение ему прав завершено.

Просмотр активных пользователей в базе 1С

активные пользователи

Как отключить пользователей в 1С 8.3

Отключить активного пользователя в базе 1С можно двумя способами:

  • в интерфейсе программы (для конфигураций 1С Бухгалтерия 3.0, Управление торговлей 11 и т.д);
  • через консоль кластера серверов (доступно только в клиент-серверном режиме работы).

Из интерфейса

завершить сеанс пользователя

Из консоли кластера

Удаление пользователя через консоль

Контроль работы пользователей 1С 8.3

журнал регистрации

Информацию из журнала регистрации можно сортировать по типу данных, пользователю, виду действия и т.д. Для этого необходимо нажать на пиктограмму воронки над таблицей журнала регистрации.

Если база данных давно установлена и данные в ней часто меняются, просмотр журнала регистрации существенно замедляется, в особо запущенном случае система может обрабатывать данные очень продолжительный период времени.


В этой статье выражено личное мнение автора, его видение мира, его путь, и это все не претендует на абсолютную верность и объективность. Автор не несет никакой ответственности за последствия использования данной информации, он только надеется что эта информация поможет сделать кому-то жизнь проще.

Предисловие

Сначала я просто хотел написать небольшую статью о том, как мы разносили базы по службам, но в ходе углубления в этот процесс мы добавляли всякие разные штуки (мониторинг служб, потом мониторинг пользователей внутри 1С, потом прикрутили заббикс, и, наконец, пришли к CI/CD на базе 1С). В итоге я понимаю что пихать это в одну статью будет слишком — решил разделить на несколько. Ну а название навеяно циклом статей "сети для самых маленьких", которые принесли мне много приятных минут и к которым я отсылаю всех, кто "хочет изучить сети". Итак, мы приступаем!

Когда ты признаешь проблему, значит ты на половину уже вылечился (с) один знакомый психиатр

В этой статье я хочу поделиться своим опытом администрирования большого числа 1С в корпоративном секторе. Базы все разные, есть разработка, есть тестовые, все как у всех. Но их просто достаточно много. И все было хорошо, но в определенный момент проводить какие-то админские работы стало крайне тяжело и рискованно.

Какие у нас были сложности:

  1. Подвисшая база тянула за собой перезапуск службы, а значит страдали невинные (пользователи других баз)
  2. Было тяжело понять кто сегодня "герой дня" — какая база заняла все ресурсы
  3. Обновление релизов — обновление одной тянуло за собой автоматическое обновление всех баз на этой службе
  4. Ручное подключение баз пользователям, ручное изменение в случае переездов
  5. Мониторинг
    И только сейчас я понимаю что это была только вершина айсберга.

Акт первый, действие нулевое

Небольшое отвлечение на основные постулаты, осознание которых далось большой кровью и болью.

  1. Старые версии 1С (до 8.3.11+) имеют просадку по производительности при работе в виртуализированной среде. (Источник — Гилев и собственные тесты)
  2. Кластер есть, но с ним все крайне не просто. Возможно его доработают потом, но пока он в основном для галочки. (источник — собственный опыт)
  3. При выборе процессора смотрите только на частоту. Процессор в 6 ядер по 3,4Ггц порвет в куски процессор на 20 ядер по 2Ггц. Проблема в том, что 1С вообще ничего не знает про параллельные вычисления. По сути это работает так — у нас есть определенное число воркеров для каждой службы, их раскидывают по процессорам, и если в каком то воркере пользователь запустил какой-то тяжелый отчет то в системе будет загружено только одно ядро процессора. Именно то, на котором работает воркер с запущенным заданием… Для БД ситуация кстати ровно обратная. (источник — Гилев, собственный опыт, опыт коллег)
  4. Не используйте логи в "новом" формате (запись в SQLLite) — вы очень быстро столкнетесь с тем, что производительность этого решения еще хуже чем файлового варианта. (Источник — собственный опыт, опыт коллег).
    По подсказкам из комментариев есть вариант вынести логи на отдельный инстанс.
    В 8.3.12 обещали логи в нормальный скуль.
  5. 1С оооочень не любит IPv6. На всех серверах с 1С лучше сразу понижать приоритет IPv6 до минимума. (Источник — Гилев, собственный опыт)
  6. Используйте для виртуальных серверов виртуальные сетевые карточки E1000. С остальными проблема по производительности (Источник — Гилев, но на собственном опыте не подтвердилось, хотя особо и не тестили)
  7. Обслуживание баз дает хороший прирост производительности, особенно периодический пересчет итогов, а так же обслуживание индексов SQL (Источник — собственный опыт, Гилев)
  8. Поиск причин падения 1С сродни поеданию неочищенного кактуса. Выяснить что-то толком можно только через боль, унижения и страдания. (Источник — собственный опыт)
  9. Нет ни одного официального образа ни под один гипервизор. Про докер я вообще молчу. (Источник — сайт 1С)
  10. Программная лицензия для сервера привязывается к — сюрприз, сюрприз — серийному номеру процессора (и еще огромному количеству параметров сервера). В эпоху повсеместной виртуализации ход потрясающий. Поясняю — активировали сервер, переехали на другую ноду, перезагрузили машину — 1С не запуститься. Расчехляйте новый активационный код. (Источник — собственный опыт, болтливая техническая поддержка 1С =))
  11. 1С — это учетная система, а не отчетная. Хотите много нормальных жирных отчетов и быстро — выводите это за рамки 1С. (Источник — собственный опыт)
  12. У 1С есть два неоспоримых достоинства, за счет которых она будет процветать еще долго:
    • стоимость самого продукта/разработчиков
    • скорость разработки
      и к сожалению для российского бизнеса они являются первоочередными. А зачастую и единственными, на что вообще смотрят. (Источник — печальная реальность)
  13. Никогда не используйте файловую шару как место под хранилище конфигураций 1С. Только службу. Иначе маты со стороны разработки о упавшем черт знает когда хранилище станут вашим неизменным спутником по жизни. (Источник — собственный опыт, опыт коллег)

Акт первый, действие первое

Первая короткая сценка из корпоративной жизни

На сцене — Админ (А), программист 1С (П1С) и представитель бизнеса (ПБ)
ПБ — У нас медленно работает программа!
А — у меня в системе все хорошо!
П1С — я все написал правильно, у меня на компьютере все работает быстро!
ПБ (робко и растерянно) — но она же долго…
А и П1С хором — у нас все хорошо, проблема на вашей стороне!

Проблемы всегда случаются не вовремя (с) (5-летний философ)

И вот в одно прекрасное солнечное утро (на самом деле это была глубокая зимняя ночь) мы поняли что завтра надо запустить новую базу. Завтра наступал тот прекрасный день, который уже много раз описывался тысячами авторов и имя ему — легион! Тьфу, простите, занесло. Имя этому дню был дедлайн. Час ночи, завтра на 200 компах должна запуститься новая база." Да не проблема, у нас же все компы в домене! Сейчас быстренько сделаем логин-скрипт и дело в шляпе!" подумаете вы. И будуте правы — так же подумали и мы. И сделали. Только, как обычно это бывает, погорели на мелочи — я в логон-скрипте я прописал %filename%.bat а коллега выложил %filename%.cmd.

Ну и понятное дело с утра хелпдеск побежал делать все руками, а мне было очень стыдно за такой тупой фейл. Извинялся перед парнями тортиком.

Но мысль автоматизации этого процесса у меня в голове засела очень крепко и стал даже вырисовываться план внедрения.

В итоге мы пришли к следующей идеологии:

  • Все раздается через AD — создаются группы вида 1cbases-%версия платформы%-%имя базы% и туда силами хелпдеста добавляются пользователи, которым нужна база.
    • одна группа — одна база
    • 1cbases — это префикс по которому удобно искать группы
    • версия платформы 81, 82 и 83 (релиз не принципиален)
    • название базы соответствует имени файла с настройками

    Как мы это делали:

    1. Через групповые политики добавляется новое задание в планировщик (задача планировщика прописать пользователю путь к файлу подключения базы):
      • запускать от имени пользователя
      • событие — разблокировка компьютера
      • действие — запуск нашего скрипта
    2. Создаем нужные группы в АД и заполняем их пользователями
    3. Создаем нужные файлы для запуска самих 1С. Тут остановлюсь чуть поподробнее. Изначально мы долго мучили интернет своими запросами и нашли полное описание структуры файлов *.v8i. Но потом нашелся способ проще и гениальнее.
      • запускаем 1С
      • настраиваем подключение к базе
      • проверяем что все работает
      • кликаем правой клавишей по названию базы и выбираем пункт — "Сохранить ссылку в файл"
    1. Добавление баз теперь не было морокой — просто делали группу, добавляли файл с настройками — дальше все происходило автоматом
    2. Могли спокойно переносить базы куда угодно, просто меняя конфигурацию в файле с настройками подключения к базе (как показала практика — очень удобно)
    3. Сберегли обувь хелпдеску

    Акт первый, действие второе

    Вторая короткая сценка из корпоративной жизни

    И с этой стороны ни чуть не лучше… (с) печальный ослик Иа-Иа в свой собственный день рождения

    Вот представьте себе — сидите вы в удобном кресле, в одной руке чашка вкусного чая, в другой пышущая жаром и свежестью булочка из кулинарии ближайшего магазина, за окном приятно пахнет весной… И это, конечно же, самое подходящие время для звонка с проблемой! Коллега — Байконур, у нас %@па!

    Я — я так понимаю что стадию Хьюстона с проблемами мы уже успешно пролетели?
    Коллега — да. База %имя базы% подвисла, вообще не отвечает, ТОПы уже рвут и мечут. 3 раза мне уже звонили. Надо перезагружать службу.
    Я — так там же еще пачка баз на этой службе.
    Коллега — да, поэтому вторая половина ТОПов тоже рвет и мечет что их отключат.

    В итоге конечно все согласовали, перезапустили, но осадочек остался.

    1. В продуктовой среде мы должны следовать правилу — одна база — одна служба с разнесением по портам
    2. Запускаться службы должны исключительно из-под доменных учеток. Одна служба — одна учетка. Это удобно для раздачи прав на шары, доступ в скуль и прочее. Так же, если у вас внедрена RBAC то вы можете очень оперативно посмотреть куда имеет доступ конкретный экземпляр 1С
    3. Логи нужно вынести на отдельный диск и включить на эти папки сжатие (при разбитии по дням это очень сильно экономит место и ускоряет (незначительно) поиск по логам)
    4. Каждой службе выдается alias в DNS для того, чтобы отвязать разработку от ip и/или dns сервера (в этом случае разработка вообще не волнуется на предмет того, где фактически находится сервер — физика, виртуальная машина в приватном облаке или вообще в публичном облаке)
    5. На каждую службу мы выделяем 500 портов для пользовательских соединений (наше внутреннее решение)

    Как мы это делали (для нового сервера. для уже существующего часть шагов не актуальны):

    1. Создаются учетки под каждую службу
    2. На машине, где они будут работать им выдаются права на "запуск как службе"
    3. Ставиться MS офис, обязательно с активацией по MAK-ключу
    4. Ставится sqlncli — утилита из набора MS SQL Native Client. На данный момент выше 2012 не появлялось
    5. Создается папка C:\Windows\SysWOW64\config\systemprofile\Desktop — в противном случае есть проблемы с выгрузками в Word/Excel
    6. Для Windows 2016 и 1С 8.1 нужно скопировать старую версию dll (В папке C:\Program Files\Common Files\System\Ole DB надо заменить два файла sqloledb.dll и sqloledb.rll взятых со старых серверов)
    7. Ставятся дополнительное ODBC драйверы, если нужно подключатся к MySQL/PostgreSQL

    Настройка папки для службы и логов:

    1. Создается папка на отдельном диске называется в формате 1CServer%basename% (в стандартном случае это делает сама служба, ибо у нее есть в настройках запуска путь к логам)
    2. Если внутрь каталога только что созданной службы переносятся данные из другого каталога (другой службы, другого сервера), то необходимо заменить владельцев (иначе служба не получит к ним доступа) с заменой владельца подконтейнеров
    3. Владельцем папки делается учетная запись службы
    1. Для того, чтобы в службах не было кроказябр
      • в cmd ввести команду chcp 1251
      • файл надо сохранить в ANSI кодировке
    2. Обязательно надо проверить на отсутствие дублирующих ключей в строке запуска — служба с ними не стартует.
    3. Для того, чтобы удалить службу, можно воспользоваться командой — sc delete «Имя заданное в переменной name»
    4. Добавить порты используемые 1С в разрешения в firewall
    5. Нужен всего один физический ключ на сервер — все службы будут активироваться им

    После проведения всех мероприятий в итоге мы пришли к:

    1. Базы можно спокойно перезагружать, не трогая другие базы
    2. Всегда можно найти "героя" — базу, которая съедает все ресурсы
    3. Любые работы с базой касаются только одной конкретной базы

    В следующих статьях я планирую рассказать (если эта статья народу зайдет):


    В сегодняшней статье я расскажу об уязвимостях сервера 1С в корпоративной сети.

    Как показала практика, в инсталляциях с 1С все допускают одни и те же ошибки разной степени серьезности. Я не буду касаться очевидных вещей вроде установки обновлений, но пройдусь по специфике работы сервера приложений под Windows. Например, по возможности бесконтрольно манипулировать базами Microsoft SQL с помощью инструментов 1С.

    Исторически так сложилось, что редко когда системные администраторы и программисты 1С работают как одна команда. Чаще всего специалисты по 1С не вникают в тонкости системного администрирования, а сисадмины не стремятся постичь нюансы работы 1С.

    И получается инфраструктура с «детскими болячками», очевидными для специалиста по ИБ ― ниже привожу личный ТОП таких проблем.

    По умолчанию платформа 1С при установке создает специальную учетную запись с ограниченными правами, под которой работают службы сервера ― USR1CV8. Все идет хорошо, до тех пор пока не становятся нужны ресурсы сети: например, для автоматических выгрузок-загрузок. Учетная запись по умолчанию не имеет доступа на сетевые папки домена, поскольку является локальной.

    В своей практике я встречал множество способов решения этой задачи: папки с доступом на запись для группы «Все», сервер 1С под учетной записью с правами администратора домена, явно прописанные в коде учетные данные для подключения сетевого ресурса. Даже запуск сервера 1С под пользовательской сессией как обычное приложение.



    Заходим на сервер по RDP, видим такое окно и получаем нервный тик.

    Конечно, «захардкоженые» пароли и сетевые ресурсы с анонимным доступом на запись встречаются редко. В отличие от работы сервера 1С из-под обычной доменной учетной записи. Разумеется, с возможностью выполнить произвольный код «на сервере».

    Как известно любому 1С-нику, но не любому системному администратору, в обработках 1С есть два режима выполнения процедур: на сервере и на клиенте. Запущенная в «серверном» режиме процедура будет выполнена под учетной записью службы сервера приложений. Со всеми ее правами.

    Если сервер 1С работает с правами администратора домена, то потенциальный вредитель сможет сделать с доменом что угодно. Разумным выходом станет создание специальной учетной записи ― по мотивам USR1CV8, только уже в домене. В частности, ей стоит разрешить вход только на определенные серверы в оснастке «Пользователи и Компьютеры Active Directory».



    Настройка входа только на разрешенные серверы.

    Не лишним будет и разрешить вход на сервер только в качестве службы, отключив возможность локального (интерактивного) входа в систему. Сделать это можно через локальные политики безопасности непосредственно на сервере, либо с помощью доменных групповых политик.



    Назначение прав пользователя в локальной политике безопасности.

    Все то же самое касается и учетной записи сервера Microsoft SQL. Седых волос может прибавиться от вредных привычек:

    • запускать SQL с правами администратора компьютера или даже домена для удобного резервного копирования;
    • включать возможность запуска исполняемых команд через хранимую процедуру xp_cmdshell для переноса резервных копий на сетевые ресурсы через красивые планы обслуживания.

    Регулярно в практике встречается подключение баз данных к серверу 1С под пользователем «SA» (суперпользователь в SQL). Вообще, это не так страшно как звучит, ведь пароль от SA захэширован в файле 1CV8Reg.lst на сервере приложений. Хэш злоумышленник получить гипотетически может ― не забываем про права учетной записи сервера ― но расшифровка окажется долгой, особенно если использовать брутфорс.

    Но все же не лишним будет настроить аудит доступа к этому файлу с уведомлением ответственных лиц.

    Другое дело, когда программистам 1С «делегируют» обязанности DBA. Опять же, из личного опыта: сервер SQL был в зоне ответственности программистов, как и интеграция внешнего сайта с базами 1С. Итогом был пароль SA в скриптах сайта.

    Для собственного успокоения стоит поставить на SA сложный пароль или вовсе деактивировать эту учетную запись. На SQL тогда нужно включить доменную аутентификацию для управления и создать для 1С отдельное имя входа с правами на необходимые базы.

    Если вы не хотите оставить возможность создавать базы SQL через интерфейс 1С, то новому пользователю хватит общей роли public и db_owner непосредственно в базе 1С.

    Это можно проделать через Management Studio или простым скриптом T-SQL:

    Правам пользователей в 1С почему-то мало кто уделяет внимание. А ведь пользователь с правами «Административные функции» или «Администрирование» запросто выгрузит базу в .DT через конфигуратор и унесет домой ― это подарит не одно мгновение волнительного счастья вашему руководству. Поэтому стоит поймать на рюмочку чая 1С-ника и посидеть совместно над базой, чтобы узнать, какие пользователи имеют подобные права. А заодно ― чем грозит понижение их полномочий.



    Право выгрузить базу у роли Полные Права в типовой 1С: Бухгалтерии 2.0.

    Следующий важный момент ― запуск внешних обработок. Как мы помним, в 1С можно запускать код с правами учетной записи сервера. Хорошо, если она не имеет административных прав на систему, но все равно стоит исключить возможность запуска подобных обработок для пользователей. И не забудьте попросить специалиста по 1С «встраивать» дополнительные отчеты и обработки в базу. Хотя не во всех обработках поддерживается встраивание ― эта возможность зависит от версии 1С.



    Проверить, какие типовые роли не имеют прав на открытие внешних обработок, можно в конфигураторе.

    Все эти действия не только помогут защититься от потенциального «внутреннего вредителя», но и станут дополнительной преградой на пути вирусов-шифровальщиков, маскирующихся под обработки 1С.

    Если все же необходим запуск внешних обработок, то неплохим вариантом контроля и подстраховки будет аудит их запуска. Штатного механизма аудита у 1С пока нет, но в сообществе уже придумали несколько обходных маневров. Внедрять эти механизмы стоит в паре со специалистом 1С, также как и настраивать уведомления о событиях в журнале регистраций базы.

    Отдельно отмечу возможность настройки доменной аутентификации пользователей вместо аутентификации 1С. И пользователям будет удобнее ― меньше паролей в их памяти снижает риск появления стикеров на мониторе.

    Итак, пользователи теперь не могут запускать обработки, учетная запись сервера максимально ограничена. Но есть и еще кое-что: учетная запись администратора кластера 1С, которая не создается по умолчанию.

    Ее отсутствие опасно: любой человек с ноутбуком при открытом доступе к сетевым портам сервера (по умолчанию это TCP:1540) может создать там свою базу, и ограничений на запуск обработок не будет. А еще злодей сможет получить информацию по базам данных, по работающим пользователям, изменить параметры кластера и даже принудительно завершить работу определенных пользователей.

    Пример скрипта на PowerShell, изгоняющего всех пользователей изо всех баз сервера:

    Использование подобного способа работы с сервером 1С в благих целях уже упоминалось в одной из предыдущих статей.

    Создать администратора кластера не просто, а очень просто ― достаточно щелкнуть правой кнопкой на пункте «администраторы» в управлении кластером 1С, создать нового администратора, задав логин и пароль.



    Создание администратора кластера 1С.

    Я коснулся лишь части недоработок при настройке 1С: Предприятия. Для самостоятельного изучения рекомендую почитать до сих пор не потерявшие актуальность материалы:

    Поделитесь в комментариях своими нестандартными решениями и курьезами при работе с системой 1С: Предприятие.

    В этой статье речь пойдет о настройке прав доступа пользователей к объектам системы 1С.

    В 1С 8для управления доступа пользователей используется отдельный объект метаданных, который называется Роли.

    Далее мы рассмотрим, как использовать и настраивать роли в 1С предприятие 8.3.

    Обратите внимание! Эта статья написана в помощь программистам. Настройка прав в пользовательском режиме на примере 1С Бухгалтерия рассмотрена в данной статье.

    Роли в метаданных

    Ниже мы рассмотрим подробно каждый атрибут метаданных при настройке роли пользователя 1С 8.3.

    Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
    Попробуйте бесплатно по ссылке >>

    Общие настройки роли 1С

    Если открыть объект метаданных Роль, мы можем увидеть следующую картину:

    Настройка ролей

    Будем рассматривать только вкладку Права.

    Следует обратить внимание на галочки в нижней части:

    Настройки прав на всю конфигурацию

    Если открыть Роль и кликнуть на корень конфигурации, мы увидим следующие настройки:

    Настройка прав на конфигурацию

    Подробнее о каждом из прав на всю конфигурацию:

    Настройка прав 1С на другие объекты метаданных

    Роль менеджера по продажам

    Права только для документов:

    Только для регистров накопления и бухгалтерии

    Только для обработок и отчетов:

    Привилегированный режим 1С

    Все, что внутри, будет выполняться без проверки прав пользователя.

    Доступна ли роль 1С пользователю?

    Чтобы узнать, нужно выполнить функцию РольДоступна(), передав туда название роли строкой.
    Например:

    Нарушение прав доступа

    Такую ошибку можно увидеть, если недостаточно прав на чтение/редактирование/удаление данных. Система выдаёт вот такую ошибку:

    битая ссылка

    Для того чтобы понять, битая ссылка или нет, просто зайдите в базу под пользователем с полными правами.

    Для массового поиска таких ошибок подойдет статья как найти битые ссылки в базе 1С.

    P.S. Если у Вас все же не получилось разобраться в ролях пользователей, Вы можете заказать услуги 1С программиста.
    Видео с примером настройки прав в 1С бухгалтерии 3.0:

    Другие статьи по 1С:

      (обновление 1С, резервные копии и т.д); (для пользователей)

    Читайте также: