Что будет с 1с при переустановке sql
Перейти к содержимому

Что будет с 1с при переустановке sql

  • автор:

Какие могут быть сложности при восстановлении бэкапа базы 1С?

При восстановлении бэкапа (архивной копии) например базы 1С, которая работает на сервере под управлением MS SQL Server, может возникнуть следующая интересная проблема. У Вас есть архивная копия базы и Вы пытаетесь ее загрузить в новую пустую конфигурацию, которая только что была создана с помощью мастера управления списком информационных баз 1С на сервере 1С и сервере баз данных. Для управления база данных работающих на системе Microsoft SQL Server часто используется утилита под названием Microsoft SQL Server Management Studio. С помощью которой можно через пользовательский интерфейс, не используя скрипты/консольные команды, развернуть архив базы.

Путь к восстановлению бэкапа

Путь к восстановлению бэкапа

Окно восстановления базы Закладка Основная

Окно восстановления базы Закладка Основная

Закладка Опции

В списке серверов выбираем необходимый нам сервер БД, дальше базу данных. Щелкнув по наименованию нужной базы выбираем — Tasks — Restore Database. У нас откроется окно восстановления базы Restore Database — . На закладке General укажем откуда нам необходимо восстановить базу (из файла бэкапа или из другой базы, работающей на сервере), и в какую базу восстановим архив. Перейдя на закладку Options установим флаг — Overwrite an existing database (WITH REPLACE). Жмем кнопку ОК для запуска процесса восстановления.

SQL Managment Studio Ошибка при попытке восстановить базу

SQL Managment Studio Ошибка при попытке восстановить базу

И получаем ошибку: «Error — Exclusive access could not be obtained because the database is in use».

Все что нам нужно сделать это установить флаг «close existing connections to destination database» на закладке Options в группе «Server connections», которая позволяет разорвать соединение с устанавливаемое сервером 1С. Но данный флаг может быть недоступен. Обойти это ограничение можно следующим образом.

Весь тот же путь к восстановлению базы мы проходим щелкнув правой кнопкой мыши по разделу Databases находящийся в разделе с сервером дерева объектов в левой части экрана. И выбрав непосредственно «Restore database. «. Далее открывается знакомое нам окно восстановления и мы сразу же переходим на закладку Options, где будет доступен флаг для завершения всех соединений с данной базой, непосредственно перед восстановлением архивной копии, сервером баз данных. И после этого на основной закладке мы можем выбрать в какую из существующих баз нам нужно восстановить архивную копию.

Вопросы установки и настройки 1C:Предприятия 8.1 в варианте “клиент-сервер”

В большинстве случаев для установки 1C:Предприятия 8.1 в варианте “клиент-сервер” достаточно запуска программы установки 1С:Предприятия 8.1. При этом сервер 1С:Предприятия получает стандартные значения параметров, необходимые для его нормального функционирования.

Рассмотрим установку сервера 1С:Предприятия более детально. В процессе установки сервера 1С:Предприятия 8.1 программа установки 1С:Предприятия 8.1 выполняет следующие действия:

  • Копирует загрузочные модули сервера 1С:Предприятия в каталог, указанный программе установки 1С:Предприятия в качестве конечной папки.
  • Если в процессе установки выбрано «Создать пользователя USR1CV81», то создает пользователя USR1CV81. От имени этого пользователя работает сервер 1С:Предприятия 8.1, если он запускается как сервис. Ему доступны только те ресурсы, которые необходимы серверу 1С:Предприятия. Важно, что серверу 1С:Предприятия для работы необходимы два каталога: общий каталог с данными сервера (обычно «C:\Program Files\1cv81\server») и каталог временных файлов (обычно «C:\Documents and Settings\usr1cv81\Local Settings\Temp» или «C:\WINNT\Temp»). Пользователь USR1CV81 получает права на общий каталог с данными сервера. Каталог временных файлов обычно доступен всем пользователям.
  • Если в процессе установки включено «Установить сервер 1С:Предприятия 8.1 как сервис Windows», то регистрирует в Windows сервис агента сервера 1С:Предприятия и запускает его. При первом запуске создается кластер серверов 1С:Предприятия с настройками по умолчанию. В нем один рабочий сервер и один рабочий процесс. Адрес рабочего сервера совпадает с именем компьютера, на котором выполнена установка.

Пользователь USR1CV81 и его права

Сервер 1С:Предприятия является серверным приложением работа которого не должна зависеть от того, какой пользователь вошел в серверный компьютер в интерактивном режиме, если вообще кто-нибудь вошел. Поэтому при установке сервера 1С:Предприятия желательно создать специального пользователя USR1CV81, наделенного правами, минимально необходимыми для сервера 1С:Предприятия, и не предназначенного для интерактивного входа. Сервер 1С:Предприятия представляется системе Windows пользователем USR1CV81.

Рассмотрим подробнее права, устанавливаемые пользователю USR1CV81. Сервер 1С:Предприятия использует следующие каталоги:

  • Каталог загрузочных модулей находится в каталоге, заданном программе установки 1С:Предприятия в качестве конечной папки. В нем расположены загрузочные модули сервера 1С:Предприятия. Пользователь USR1CV81 необходимы права на чтение данных и запуск программ из этого каталога и его подкаталогов. Он получает эти права неявно, благодаря включению в группу Users.
  • Каталог данных сервера обычно имеет имя «C:\Program Files\1cv81\server». Пользователю USR1CV81 необходимы полные права на этот каталог. Программа установки 1С:Предприятия при создании пользователя USR1CV81 наделяет его правами на этот каталог.
  • Каталог временных файлов обычно имеет имя «C:\Documents and Settings\usr1cv81\Local Settings\Temp» или «C:\WINNT\Temp», которое определяется значением переменной TEMP окружения пользователя или переменной TEMP системного окружения. Посмотреть значение этой переменной можно в диалоге System Properties (Start -> Settings -> Control Panel -> System -> Advanced -> Environment Variables). Программа установки 1С:Предприятия задает пользователю USR1CV81 полные права на этот каталог. Обычно при установки Windows каталог временных файлов доступен всем пользователям посредством включения в его список доступа группы CREATOR OWNER. Однако, это доступ не полный. В частности, всем пользователям не доступна операция поиска файлов в этом каталоге. Установка пользователю USR1CV81 полных прав на каталог временных файлов позволяет серверу 1С:Предприятия выполнять все необходимые ему операции. Посмотреть список доступа можно в диалоге свойств каталога на закладке Security. Наличие группы CREATOR OWNER позволяет обращаться к каталогу любому пользователю, создающему какие-нибудь файлы в этом каталоге или владеющему какими-нибудь файлами в этом каталоге. При этом в списке доступа созданного файла вместо группы CREATOR OWNER будет записан пользователь, создавший файл. Среди пользователей, которым разрешен доступ в этот каталог, должен быть и пользователь USR1CV81, наделенный полными правами на этот каталог.
    Важно иметь в виду, что каталог временных файлов определенного пользователя (в том числе и пользователя USR1CV81) определяется комбинацией переменных окружения этого пользователя и системных переменных окружения. Чтобы узнать этот каталог, программа установки 1С:Предприятия запрашивает контекст пользователя USR1CV81. В для этого в Windows 2000 пользователю, от имени которого запускается программа установки 1С:Предприятия, могут потребоваться привилегии: Act as part of the operating system и Bypass traverse checking. Проверить привилегии пользователя можно утилитой Local Sequrity Settings в ветке Local Policies -> User Rights Assignment. В процессе установки нового программного обеспечения программа установки обычно получает эти привилегии автоматически.

Регистрация сервера 1С:Предприятия как сервиса Windows

Сервер 1С:Предприятия является простым консольным Windows приложением и может быть запущен интерактивно. Однако для постоянного использования это неудобно, поскольку ставит запуск сервера 1С:Предприятия от входа итнерактивного пользователя в серверный компьютер. Чтобы исключить эту зависимость, сервер 1С:Предприятия может запускаться как сервис Windows. Для этого он должен быть зарегистрирован в менеджере сервисов Windows.

Для просмотра списка сервисов Windows и их параметров предназначена утилита Component Services (Start -> Settings -> Control Panel -> Administrative Tools -> Services). Сервер 1С:Предприятия представлен в списке сервисов сервисом «Агент сервера 1С:Предприятия 8.1». Параметры сервиса определяют запуск процесса «Агент сервера 1С:Предприятия» (ragent), пользователя, от имени которого он запускается, а также способ перезапуска в аварийных ситуациях.

В диалоге свойств сервиса «Агент сервера 1С:Предприятия 8.1» на закладке General показана строка запуска процесса ragent, который является Агентом сервера 1С:Предприятия. Обычно эта строка имеет вид:

«C:\Program Files\1cv81\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv81\server»

В ней указано, что:

  • процессом Агента сервера является загрузочный модуль «C:\Program Files\1cv81\bin\ragent.exe»;
  • процесс ragent запускается как сервис Windows и должен управляться менеджером сервисов (-srvc);
  • используется как Агент сервера 1С:Предприятия (-agent);
  • при первом запуске сервиса должен быть создан кластер с параметрами по умолчанию и главным IP-портом номер 1541 (-regport 1541). По этому порту клиентские приложения должны соединяться с информационными базами, зарегистрированными в кластере;
  • IP-порт агента сервера должен иметь номер 1540 (-port 1540). По этому порту Консоль кластера должна соединяться с центральным сервером для выполнения административных функций;
  • при запуске процессов кластера на данном сервере им будут динамически назначаться IP-порты из диапазона 1560-1591 (-range 1560:1591).
  • общие данные кластера будут размещены в каталоге «C:\Program Files\1cv81\server» (-d «C:\Program Files\1cv81\server»).

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

Для создания сервиса нужно указать параметр -instsrvc и параметры: -usr — имя пользователя, от имени которого должен быть запущен сервис, -pwd — пароль этого пользователя. При этом остальные параметры станут параметрами строки запуска Агента сервера 1С:Предприятия как сервиса. Например, для стандартной регистрации сервиса Агента сервера 1С:Предприятия в отладочном режиме набор параметров должен быть таким:

«C:\Program Files\1cv81\bin\ragent.exe» -instsrvc -usr .\USR1CV81 -pwd Password -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv81\server» -debug

Для удаления сервиса нужно указать параметр -rmsrvc. Например:

«C:\Program Files\1cv81\bin\ragent.exe» -rmsrvc

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

Внимание!
Редактирование системного реестра Windows требует крайней осторожности, поскольку ошибочные изменения в нем могут привести операционную систему в неработоспособное состояние.

Запустите утилиту regedit (откройте Start -> Run и наберите regedit) и выберите ветку:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent

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

При необходимости регистрации нескольких независимых сервисов Агента сервера 1С:Предприятия нужно указать им разные загрузочные модули, разные порты и разные каталоги данных кластера. Еще требуется зарегистрировать их с разными идентификаторами сервисов. Это можно сделать так:

  • Создать первый сервис:

«C:\Program Files\1cv81\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv81\server»

  • При помощи утилиты regedit изменить идентификатор зарегистрированного сервиса. Для этого: выбрать ветку
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent
    и изменить ее имя, например на:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent First
  • Создать второй сервис:

«C:\Program Files\1cv81_10\bin\ragent.exe» -srvc -agent -regport 1641 -port 1640 -range 1660:1691 -d «C:\Program Files\1cv81_10\server»

  • Быть может, его идентификатор тоже изменить. Для этого: выбрать ветку
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent
    и изменить ее имя, например на:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent Second

Что не может сделать программа установки 1С:Предприятия

Как уже говорилось, программа установки 1С:Предприятия копирует загрузочные модули 1С:Предприятия и выполняет необходимую регистрацию в COM и в менеджере сервисов Windows. Выше приведена информация, необходимая для понимания внутренних механизмов этой регистрации. Если на серверном компьютере установлен не только сервер, но и клиентская часть 1С:Предприятия, то она готова к работе сразу после установки (и подключения ключей защиты).

Чтобы сервер 1С:Предприятия был доступен с других компьютеров в локальной сети, необходимо проверить сетевые настройки на серверном и клиентском компьютере, а также для сети в целом. Для передачи данных между клиентскими приложениями и сервером 1С:Предприятия, а также между процессами кластера серверов используется TCP/IP. От правильности его настройки зависит работа 1С:Предприятия в варианте клиент-сервер.

Процессы кластера серверов 1С:Предприятия соединяются друг с другом по адресам, определенным в качестве значений свойства «Компьютер» диалога свойств рабочих серверов. Для кластера необходимо, чтобы значением свойства «Компьютер» был либо IP-адрес в точечной нотации, либо такой символический адрес, по которому может быть определен IP адрес при помощи функции gethostbyname, определенной в программном интерфейсе протокола TCP. Определение IP-адреса выполняется либо на основании локальной таблицы символических адресов (C:\WINNT\system32\drivers\etc\hosts), либо по таблицам адресов в доступных DNS серверах. Если по символическому адресу рабочего сервера его IP-адрес не определяется или определяется неправильно (например, IP-адрес не совпадает с фактическим IP-адресом данного компьютера), то кластер работать не будет. Важно, чтобы имена компьютеров и их адреса, определенные в Windows на каждом из рабочих серверов кластера, не противоречили их именам в DNS.

На каждом рабочем сервере процессы кластера используют следующие порты: IP порт рабочего сервера (обычно 1540); IP порты из диапазонов IP портов рабочего процесса (обычно 1560-1591). Кроме того, на центральном сервере кластера используется порт кластера (обычно 1541). Если в системе используются сетевые экраны, то передача данных по этим портам должна быть разрешена. Вместо разрешения портов из приведенного списка можно разрешить передачу данных процессам кластера (ragent, rmngr, rphost).

Соединение клиентского приложения 1С:Предприятия с сервером выполняется в 2 этапа. Сначала оно устанавливает соединение с менеджером кластера. При этом используется адрес центрального сервера (символический или числовой) и порт кластера (обычно 1541). Далее клиентское приложение устанавливает соединение с одним из рабочих процессов. В качестве его адреса используется значение свойства «Компьютер» соответствующего рабочего сервера и порт рабочего процесса, который выбирается из диапазона IP портов рабочего сервера. Передача данных на эти порты должна быть разрешена во всех сетевых экранах на маршруте от компьютера клиентского приложения до компьютеров кластера серверов 1С:Предприятия. Определение IP адреса серверных процессов выполняется при помощи функции gethostbyname на компьютере клиента. Важно, чтобы имена центрального и рабочих серверов и их адреса, определенные в Windows на каждом из серверов кластера, не противоречили их именам в DNS, доступном компьютеру клиента.

И последнее. Очевидно, что для успешного доступа к серверу 1С:Предприятия с других компьютеров он должен быть в сети и должны быть выполнены необходимые для этого настройки. Подключение к сети и методика настройки относятся к администрированию сетей на базе Microsoft Windows и описаны в соответствующих инструкциях.

Особенности настройки SQL-сервера

1С:Предприятие в варианте «клиент-сервер» использует для хранения данных SQL-сервер. При этом к SQL-серверу обращается только Сервер 1С:Предприятия. Клиенты 1С:Предприятия непосредственного доступа к SQL-серверу не имеют. Установка и настройка SQL-сервера подробно описана в документации по Microsoft SQL Server. Для успешной работы Сервера 1С:Предприятия с SQL-сервером необходимо обратить особое внимание на следующие настройки.

  • Необходимые компоненты SQL-сервера. Для доступа к SQL-серверу со стороны Сервера 1С:Предприятия на компьютере Сервера 1С:Предприятия должны быть установлены компоненты Microsoft Data Access 2.6 или более поздний.
  • Аутентификация пользователя SQL-сервером. Права доступа к базам данных SQL-сервера определяются пользователем, от имени которого происходит обращение к базам данных. С компьютера, на котором установлен SQL-сервер, запустим утилиту SQL Server Enterprise Manager, найдем узел Local (Console Root -> Microsoft SQL Servers -> SQL Server Group -> (Local)) и откроем его свойства. На закладке Sequrity можно видеть, что SQL-сервер поддерживает два способа аутентификации пользователей: SQL Server and Windows и Windows only. Аутентификация Windows позволит Серверу 1С:Предприятия обращаться к SQL-серверу только от имени пользователя USR1CV81, что не позволяет различать права доступа до различных информационных баз, обслуживаемых одним сервером 1С:Предприятия. Рекомендуется выбирать режим SQL Server and Windows. В этом случае обращение к конкретной информационной базе будет выполняться от имени пользователя, который задан в качестве пользователя SQL-сервера при создании данной информационной базы. Важно, что этот пользователь должен иметь не только полные права на базу данных информационной базы, но и права на создание баз данных в SQL-сервере и на чтение таблиц базы данных Master.
  • Сетевые протоколы для доступа к SQL-серверу. Если Сервер 1С:Предприятия и SQL-сервер размещены на разных компьютерах, то необходимо выполнить настройки сетевых протоколов доступа к SQL-серверу. Это можно сделать при помощи утилиты SQL Server Client Network Utility. На закладке General можно выбрать список сетевых протоколов, используемых для доступа к SQL-серверу. Наиболее быстрым и универсальным является использование протокола TCP/IP. При использовании других протоколов необходимо иметь в виду, что некоторые из них, например Named Pipes, выполняют дополнительную аутентификацию средствами Windows при обмене данными с SQL-сервером. В этом случае для успешной работы с SQL-сервером на компьютере с SQL-сервером должен быть зарегистрирован пользователь USR1CV81, наделенный соответствующими правами. Протокол доступа к данному SQL-серверу может быть изменен на закладке Alias.

Вопросы безопасности информационных систем на платформе 1С:Предприятие 8.1

Механизмы обеспечения безопасности в 1С:Предприятии 8.1

Что такое безопасность? Часто считается, что для обеспечения безопасности достаточно задать пароль учетной записи или зашифровать данные. В некоторых случаях это так и есть. Но правильней будет уточнить, что данные меры усиливают защиту информации на некоторых «участках» функционирования системы. Обеспечение защиты данных понятие комплексное. Часть мер по организации контроля доступа к информации осуществляется техническими средствами, в том числе 1С:Предприятием, СУБД (например, Microsoft SQL Server) и операционной системой. Часть мер представляет собой набор административных действий и правил компании.

В данной статье будут рассмотрены вопросы безопасности информационных систем, работающих под управлением 1С:Предприятия 8.1 в клиент-серверном варианте с использованием СУБД MS SQL Server.

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

Пример реализации клиент-серверной архитектуры

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

Пример пренебрежения безопасностью MS SQL Server и 1С:Предприятие 8.1

В нашем примере, в некой компании Х в качестве сервера баз данных установлен MS SQL Server 2000 с настройками по умолчанию. В качестве учетной записи контекста исполнения службы «MSSQLServer» была выбрана учетная запись операционной системы. После развертывания клиент-серверного варианта 1С:Предприятие 8.1 для пользователей конфигурации были созданы учетные записи и назначены пароли. Дополнительных настроек связанных с безопасностью не производилось.

На первый взгляд все в порядке, пользователи не имеют доступа к файлам серверов приложений и СУБД. «Взлом» будет засчитан после получения злоумышленником доступа к учетной записи администратора сервера с MS SQL Server.

По нашему сценарию один из сотрудников компании Х становится злоумышленником. У него есть собственный ноутбук. И он работает с информационной базой от имени своей «законнной» учетной записи, как и большинство пользователей компании.

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

Права на выгрзуку информационной базы имеет любой пользователь, которому разрешено выполнять «Административные функции».

Злоумышленник выгружает информационную базу себе на локальный диск в виде файла DT. Теперь он может развернуть ее локально у себя на компьютере или передать «врагам».

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

Если не задать администратора кластера, то информационные базы сможет создавать любой пользователь

В своей информационной базе злоумышленник создает превелигерованный модуль, исполняемый на стороне сервера. Этот модуль работает от имени учетной записи сервера 1С:Предприятия и, естественно, имеет полный доступ ко всем данным 1С:Предприятия. В том числе этот модуль может прочитать файл настроек C:\Program Files\1cv81\server\reg_1541\ 1CV8Reg.lst, где для баз среди параметров хранятся логин и пароль, под которым происходит подключение к SQL Server.

Прочитав файл настроек, приложение получает доступ к базе данных

Примечание. С версии 8.1.6 пароли логинов СУБД в файле настроек шифруются. Тем неменее надо помнить про подключение через USR1CV81, когда логин и пароль в параметрах базы опускаются.

Причина, позволившая нам прочитать файл настроек – это доступ к файлу для учетной записи процесса rphost, совпадающей по умолчанию с учетной записью процесса ragent и rmngr.

Зная логин и пароль, злоумышленний подключается к MS SQL Server 2000 и выполняет для базы master такой скрипт:

EXEC xp_cmdshell ‘net user Neo passW0rd /add’ EXEC xp_cmdshell ‘net localgroup Administrators Neo /add’

Эта команда содает пользователя с именем Neo и администраторскими правами на сервере, где установлен MS SQL Server.

Причиной, позволившей нам выполнить команды операционной системы, является учетная запись SQL Server, которая по умолчанию имела максимально возможные права.

Для того, чтобы избежать подбных ошибок, рассмотрим более детально, как работают механизмы защиты.

Комплексное понятие безопасности

Комплексное понятие безопасности системы складывается на соновании ее защищенности на различных участках. Можно выделить три основных участка защиты данных:

  • Клиент — кластер 1С:Предприятия
  • Кластер 1С:Предприятия — СУБД
  • Пользователь системы

Участок защиты данных «клиент – кластер 1С:Предприятие 8.1»

При подключении к информационной базе пользователь указывает свой логин и пароль. Если в системе существует учетная запись с соответствующими параметрами, то доступ разрешается. Учетная запись создается для каждой информационной базы, используемой пользователем. При этом выполняется запрос к рабочему процессу кластера, расположенному на сервере 1С:Предприятия. Информация, передаваемая по сети на данном участке может быть зашифрована полностью или частично. Безопасность работы кластера обеспечивается исполнением приложения от имени учетной записи 1С:Предприятия в Windows. Контроль доступа к общим настройкам кластера осуществляется от имени учетной записи администраторов кластера 1С:Предприятие 8.1.

Участок защиты данных «кластер – СУБД»

Защита данных, передаваемых между кластером серверов 1С:Предприятия и сервером СУБД, осуществляется средствами СУБД. MS SQL Server позволяет организовать шифрование передаваемых данных с помощью сертификатов.

Участок защиты данных «Человек»

В настоящей статье рассматриваются только технические меры обеспечения безопасности. Следует иметь в виду, что существует и такой фактов безопасности, как пользователь. Даже самая совершенная защита не может гарантировать безопасность системы, если к ней имеет доступ недобросовестный или неаккуратный пользователь. Системный администратор владеет информацией о паролях, главный бухгалтер — финансовой информацией о компании и т.д. Это значит, что всегда есть еще одно звено системы, которое может оказаться самым уязвивым в защите информации. Политика регулярной смены паролей, проводимая системным администратором, может быть сведена «на нет», если пользователи решат, что хранение «сложных» паролей надо доверить памяткам на мониторе своих рабочих мест.

Аудит безопасности системы

Следующую таблицу можно использовать как памятку при проведении аудита безопасности системы.

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

Для аудита безопасности вашей системы необходимо заполнить аналогичную таблицу, исходя из вашей реальной ситуации. При этом следует внимательно оценивать риски (например, к чему может привести кража «оборотно-сальдовой ведомости») и средства, выделяемые на снижение рисков (что можно сделать без выделенного специалиста безопасности, сколько будет стоит автоматизация доступа по картам сотрудников и т.п).

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

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

1.1 Выявление угрозы

Каждая учетная запись пользователя принадлежит к одной или несколькими ролям. Роль – это набор прав. Некоторые права предоставляют возможность копирования информации или выполнения административных действий. Такие права должны быть только у пользователей, которым они необходимы по служебным обязанностям. Например, у администратора базы данных.

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

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

Убедитесь в том, что для каждого пользователя из списка верно следующее:

  • Сотруднику действительно необходимы административные права для выполнения его служебных обязанностей
  • Сотрудник имеет достаточную квалификацию для того, чтобы не причинить непреднамеренный вред системе
  • Сотрудник пользуется вашим доверием

На рисунке показано выключение Административных функций для роли «Бухгалтер», используемой пользователем. Административные функции позволяют выгружать базу данных.

1.2 Возможные последствия

Как показывает практика, вероятность возникновения такой угрозы очень высока.

В качестве последствий следует особенно отметить копирование информационной базы.

1.3 Меры защиты

1.3.1 Ограничение прав

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

Выделите права, которыми должен обладать только администратор базы и лишите этих прав всех остальных пользователей. Обычно, к таким правам относятся:

  • Административные функции
  • Обновление конфигурации базы данных
  • Внешнее соединение
  • Интерактивное открытие внешних обработок
  • Интерактивное открытие внешних отчетов
1.3.2 Ограничение доступа к переносным носителям

Для того, чтобы ограничить возможности злоумышленников по копированию базы данных на внешние носители (дисководы, USB-носители и т.п.) можно использовать групповые политики Active Directory.

2. Отсутствие разграничений доступа в режиме 1С:Предприятие

2.1 Выявление угрозы

Доступ к информации в режиме 1С:Предприятие определяется ролями (списком прав), также механизмами, реализованными кодом конфигурации. Для типовых конфигураций 1С это механизм ограничения доступа к данным на уровне записей и полей. Более подробно здесь. Неправильно назначенные права могут привести к несанкционированному доступу к данным.

На рисунке показан пример настройки прав менеджерам по продажам в типовом решении 1С.

Пример настройки прав в отраслевом решении.

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

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

2.2 Возможные последствия

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

2.3 Меры защиты

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

3. Несанкционированный доступ к данным сервера СУБД

3.1 Выявление угрозы

Проверьте следующие признаки угрозы:

  • Наличие включенного (enabled) логина sa для используемого MS SQL Server
  • Учетная запись службы MS SQL Server входит в доменные группы
  • Имеется доступ к файлам, хранящимся на компьютере, на котором запущен MS SQL Server
  • Сервер 1С:Предприятия и SQL Server запущены на одном компьютере
  • Открыт доступ к серверу учетных записей пользователей
  • Слабые пароли логинов MS SQL Server
  • Включена возможность работы с командной строкой службой MS SQL Server

3.2 Возможные последствия

Полный доступ к информационным базам, хранящимся на MS SQL Server.

3.3 Меры защиты

Ниже приведены меры защиты в порядке возрастания сложности реализации:

3.3.1. Исключите возможность доступа от имени SA
3.3.1.1. Удалите учетную запись SA

Например, это можно сделать с помощью команды:

ALTER LOGIN sa DISABLE

На рисунке показано успешное отключение логина SA.

3.3.1.2. Для выполнения административных функций создайте учетную запись с другим именем. Включите эту учетную запись в роль sysadmin.

3.3.1.3 Эта учетная запись должна иметь сильный пароль

Задать пароль через Transact-SQL можно так:

ALTER LOGIN my_sa WITH PASSWORD = ‘Ple@se_Don»t_C0mprom1se_My_SQL_S3rv3r_Bec@us3_It_Is_V3ry_Ne@r_And_D3ar_To_My_H3@rt’

В этом примере для логина my_sa будет указан сложный пароль. (Смена пароля в версии MSDE описана на сайте Microsoft)

3.3.1.4 Исключить доступ к процедуре xp_cmdshell

Процедура xp_cmdshell имеет доступ к ресурсам операционной системы сервера СУБД, в частности к диску, на котором физически находитсябаза данных.

3.3.1.5 Удалить группу BUILTIN\Administrator.

Эта группа ролей имеет доступ к административным функциям базы данных. Если кто-то из пользователей Windows входит в эту группу, то он тоже получает этот доступ.

3.3.1.6 Если вы хотите предоставить возможность пользователям создавать самостоятельно базы, создайте персональные учетные записи каждому и наделите их ролью ‘dbcreator’

Создать пользователя и наделить правом создавать базы можно так:

USE [master]GOCREATE LOGIN [user1c] WITH PASSWORD=N'P@ssw0rd' GO EXEC master..sp_addsrvrolemember @loginame = N'user1c', @rolename = N'dbcreator' GO

В данном пример в результате успешного выполнения появиться пользователь user1c и будет обладать ролью ‘dbcreator’.

3.3.1.7. Если вы хотите делегировать ответсвенному пользователю возможность создавать учетные записи другим пользователям, создайте персональные учетные записи каждому и наделите их ролью ‘ SecurityAdmin ‘.

Наделить учетную запись ролью ‘ SecurityAdmin ‘ можно так:

EXEC master..sp_addsrvrolemember @loginame = N’user1c’, @rolename = N’securityadmin’ GO

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

Наример, для роли dbcreator:

exec sp_srvrolepermission 'dbcreator'
3.3.1.7 Администратор баз данных может создавать базы сами затем передавать право владения другим пользователям.

Это делается с помощью хранимой процедуры sp_changedbowner.

На рисунке показано передача прав владения базой от администратора, создавшего базу, к другому пользователю

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

Использование sp_changedbowner для смены владельца базы данных:

USE db_buh GO 

EXEC sp_changedbowner user1c

GO

В этом примере db_buh — имя базы данных, user1c — имя пользователя, который должен стать владельцем базы.

3.3.2 Исключите доступ пользователей (не администраторов) к серверу СУБД

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

Пример настройки доступа

3.3.3 Разнесите сервер СУБД и сервер 1С:Предприятия по разным компьютерам

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

3.3.4 Исключите файловый доступ данным к MS SQL Server

Для компьютера, на котором запущен MS SQL Server лучше оставить работающим приложением только MS SQL Server, исключив такие сервисы как «общий файловый доступ», «почтовый сервер», «интернет-прокси», «веб-сервера» и т.п.

Пример отключения файлового доступа по сети.

3.3.5 Регулярно создавайте резервные копии и храните их в безопасном месте за пределами расположения рабочих серверов

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

Уделите внимание безопасности хранилища, в котором содержатся резервные копии инфомационны баз. Помните, что если злоумышленнику будет проще унести резервную копию, чем взломать работающую систему, то он именно так и поступит.

3.3.6 Настройка прав доступа служб MS SQL Server

Безопасность исполнения операций сервера MS SQL Server в операционной системе определяется его учетными записями. Это учетные записи служб SQL Server, Agent SQL Server и Browser SQL Server для SQL Server 2005.

Например, SQL Server имеет доступ к исполнению процедуры «xp_cmdshell», которая позволяет работать с командной строкой Windows. Процесс Windows, порожденный процедурой xp_cmdshell, имеет те же права защиты, что и учетная запись службы SQL Server.

Если учетная запись обладает правами системы или входит в группу Администраторы, то xp_cmdshell возволяет выполнять любые действия в операционной системе сервера СУБД. Если учетная запись входит только в группу Пользователи, возможности xp_cmdshell эквивалентны возможностями простого пользователя.

В SQL Server 2005 функциональность «xp_cmdshell» по умолчанию отключена в целях повышения безопасности.

На рисунке показана консоль SQL Server 2005 Surface Area Configuration, управляющая возможностью включения/выключения наиболее «вероятных» целей злоумышленников, в том числе xp_cmdshell.

Для работы 1С:Предприятие 8.1 все указанные в этой консоли функции могут быть выключены. Некоторые системные администраторы наделяют учетную запись службы административными правами «просто, чтобы работало». Чтобы организовать повышенную безопасность, практикуется «Принцип минимальности привилегий» — субъект должен обладать набором минимально необходимых прав для выполнения своих функций.Применительно к службам SQL Server это означает следующее:

  • По возможности запускайте службы от имени учетной записи LocalService
  • Используйте запись NetworkService для служб, которым необходим доступ к сетевым ресурсам
  • Используйте запись LocalSystem для служб, которым необходим доступ к сетевым ресурсам и полный набор прав на локальный компьютер
  • Применяйте повышенные меры безопасности к серверам, на которых запущены службы с правами доменного администратора

На рисунке показан желательный порядок использования привелегий учетной записи службы SQL Server. Чем выше права записи, тем большую язвимость создает служба.

Учетной записи, от имени которой работают службы сервера, присваиваются следующие пользовательские права и привилегии:

  • Разрешить замену маркера уровню процесса (Act as part of operating system);
  • Разрешить фиксировать страницы в памяти (Lock pages in memory);
  • Разрешить обход перекрестной проверки (Bypass traverse checking);
  • Разрешить входить в качестве сервиса (Log on as service);
  • Разрешить настройку квот памяти для процесса(Increase quotas);
  • Разрешить замену уровня процесса (Replace a process level token);
  • Запретить локальный вход в систему (Deny logon locally);
  • Запретить вход в систему через службы терминалов (Deny log on through Terminal Services).

Запрет локальной регистрации в системе и соединения посредством сервера терминала ограничивают возможности злоумышленника в случае компрометации системы. Также необходимо удалить группу Domain Users у пользователей, имеющих право Logon Locally.

Для работы службы Agent SQL Server рекомендуется выбирать учетную запись пользователя Windows, не входящую в группу Администраторы. Однако существуют ограничения при администрировании нескольких серверов, когда учетная запись службы агента SQL Server не входит в локальную группу Администраторы. В частности, группы Администраторы требуется, чтобы использовать возможность автоматического перезапуска или создания типов CmdExec (вызов команд операционной системы) и ActiveX Script, не принадлежащие администратору SQL Server.

Browser SQL Server выполняется как служба Windows и запускается на UDP-порту 1434. При запуске обозреватель SQL Server считывает данные из реестра, определяет все экземпляры SQL Server на данном компьютере и назначает для них порты. Обозреватель SQL Server прослушивает входящие запросы на ресурсы Microsoft SQL Server и предоставляет сведения об экземплярах SQL Server, установленных на компьютере. При остановке или отключении службы «SQL Server, обозреватель» необходимо назначить каждому именованному экземпляру конкретные номера портов. Права, которые необходимо назначить обозревателю SQL Server для повышения безопасности:

  • Запретить сетевой доступ к этому компьютеру.
  • Запретить локальный вход в систему.
  • Запретить вход в систему в качестве пакетного задания.
  • Запретить вход в систему через службы терминалов.
  • Разрешить вход в систему в качестве службы.
  • Разрешить чтение и запись разделов реестра SQL Server, относящихся к сети (порты и каналы).

Для работы экзмепляра по умолчанию (Default) обозреватель не требуется. В MS SQL Server 2000 роль обозреватель выполняла служба SQL Server.

Более подробно о настройке служб можно прочитать на сайте Microsoft.

3.3.7 Используйте режимы проверки подлинности средствами MS SQL Server

Доступ к MS SQL Server выполняется после прохождения авторизации на сервере. Это можно сделать, используя учетную запись, созданную средствами MS SQL Server или с помощью учетной записи Windows.

На рисунке показаны два способа доступа к серверу.

Это использование логинов SQL Server-а, которые в консоли управления сервером находятся в разделе Security и использования учетных записей Windows. Доступ к базам данных происходит путем ассоциаций прошедших авторизацию на сервере пользователей с пользователями баз данных.

Для работы учетный записей SQL Server-а необходимо использовать смешанный (mixed) режим проверки подлинности пользователей. В большинстве случаев это можно сделать с помощью c графических утилит доступа. Однако для MSDE версии MS SQL Server 2000 оснастки нет. В этом случае можно переключить режим с помощью рееста.

3.7.1.1. Включение смешанного режима после установки

Для работы 1С:Предприятие 8.1 с MS SQL Server используется режим авторизаци MS SQL Server и Windows. Если при установке был выбран режим авторизации только Windows (Windows only) — то подключиться к информационной базе 1С:Предприятия 8.1 не получится.

Для изменения типа авторизации откройте SQL Server Enterprise Manager.

В дереве «Concole Root — Microsoft SQL Servers» разверните группу SQL Server Group и выберите необходимый сервер (соответствует или имени компьютера или (local) — для локального сервера).

Если серверов нет — надо зарегистрировать новый сервер, выбрав из меню Action — New SQL Server Registration.

На значке сервера сделайте правый щелчок мышкой и в контекстном меню выберите Properties. В появишемся окне перейдите на закладку Security.

В разделе Security укажите Authentication на SQL Server and Windows.

Перезапустите сервис например с помощью командной строки:

net stop mssqlservernet start mssqlserver

или перегрузите компьютер с установленным MS SQL Server.

Для SQL Server 2005

Для изменения типа авторизации откройте SQL Server Management Studio.

В меню File – Connect Object Explorer и выберите необходимый сервер.

Далее в окне Object Explorer на значке сервера сделайте правый щелчок мышкой и в контекстном меню выберите Properties. В появишемся окне перейдите на закладку Security.В разделе Server authentication укажите SQL Server and Windows Authentication mode.

Перезапустите сервис. Для этого значке сервера сделайте правый щелчок мышкой и в контекстном меню выберите Restart.

3.3.7.2 Включение смешанного режима проверки подлинности после установки с помощью реестра

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

По умолчанию параметр реестра LoginMode имеет значение 1 (проверка подлинности Windows). Чтобы включить смешанный режим, значение этого параметра необходимо изменить на 2.

Место расположения параметра LoginMode зависит от имени, под которым установлен экземпляр MSDE. Если MSDE была установлена с именем по умолчанию, параметр LoginMode находится в следующем разделе реестра:

HKLM\Software\Microsoft\MSSqlserver\MSSqlServer\LoginMode

Если MSDE была установлена под другим именем, параметр LoginMode находится в следующем разделе реестра:

HKLM\Software\Microsoft\Microsoft SQL Server\имя_экземпляра\MSSQLServer\LoginMode

При использовании SQL Server 2005 Express Edition параметр LoginMode находится в следующем разделе реестра:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.4\MSSQLServer

Чтобы присвоить параметру LoginMode значение 2, выполните следующие действия.

1. С помощью компонента «Службы» панели управления остановите MSSQLSERVER и другие связанные службы (например, SQLSERVERAgent).

2. Нажмите кнопку Пуск, выберите пункт Выполнить, введите команду regedt32 и нажмите кнопку ОК.

3. Найдите следующий раздел реестра (в соответствии с именем, под которым была установлена MSDE):

HKEY_LOCAL_MACHINE\Software\Microsoft\MSSqlserver\MSSqlServer\

HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\имя_экземпляра\MSSQLServer\

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.4\MSSQLServer\

4. На правой панели окна редактора реестра дважды щелкните параметр LoginMode.

5. В диалоговом окне Изменение параметра DWORD установите для параметра значение 2, выберите вариант Шестнадцатеричное и нажмите кнопку ОК.

6. Чтобы изменения вступили в силу, запустите службы MSSQLSERVER и SQLSERVERAgent.

Обратите внимание. Что возможность управления переключением режимов аутентификации при определенных условиях может воспользоваться злоумышленник.

3.3.8 Поместите сервер в помещении, недоступном для посторонних

Как компромисный вариант, использовать серверную стойку и предоставлять ключи лицам по утвержденном списку.

3.3.9 Шифрование данных MS SQL, хранящихся на диске

В Интернете можно найти статьи, рекомендующие шифровать данные баз данных. Это можно делать и штатными средствами Windows, и используя ключи eToken, и программы сторонних производителей типа Jetico Bestcrypt или PGPDisk. Кроме этого можно встретить рекомендации создавать базы данных в нескольких файлах, один из которых шифровать.

Однако, в большинстве случаев рекомендуется сосредоточить внимание не на шифровании дисков, а на максимальном ограничении интерактивного, сетевого и физического доступа к ним.

3.3.10. Использование неформатированных разделов

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

SQL Server позволяет использовать для создания файлов базы данных «неформатированные» (или «сырые» — raw) разделы. Неформатиро­ванный раздел — это раздел диска, который был создан с помощью утилиты fdisk или Disk Administrator, но не был отформатирован. На таком разделе не существует файловой системы (FAT или NTFS), поэтому там невозможно хранение файлов операционной сис­темы. Тем не менее, если при создании базы данных в качестве физического име­ни файла указать неформатированный раздел, то SQL Server 2000 создаст в этом разделе блок данных (назовем его файлом), который займет все свободное пространство. Так как при создании файла будет занято все доступное пространство, то увеличение размера файла в данном случае невоз­можно. В качестве фи­зического имени файла необходимо указать только букву раздела, например F. Задание неформатированного раздела другим способом (а такие имеются — на­пример формат, используемый в файле boot.ini) не допускается. То есть, чтобы иметь возможность разместить файл базы данных на неформатированном разде­ле, нужно присвоить этому разделу конкретную букву, сконфигурировав его, та­ким образом, в качестве логического диска.

На рисунке показан неформатированный раздел с логическим диском F.

На неформатированном разделе можно разместить лишь один файл базы данных. Даже после того как SQL Server создаст в этом разделе файл, операционная система будет воспринимать раздел как неформатированный или как раздел с неизвестной файловой системой. Обычные операции работы с файлами, выпол­няемые операционной системой, будут недоступны. То есть нельзя будет вы­полнять копирование, удаление, изменение или перемещение созданного файла. Кроме того, операции резервного копирования с помощью утилиты Windows NT Backup также будут недоступны. Однако допускается создание резервных ко­пий базы данных и журнала транзакций средствами SQL Server. При использовании неформатированных разделов недоступны инструменты проверки целостности диска. Более того, невозможна «горячая» замена поврежденных кластеров, которая выполняется для файловой системы NTFS на дисках SCSI. При размещении фай­лов базы данных на обычных дисках с файловой системой имеется возможность скопировать эти файлы и подключить к другому серверу SQL. При наличии неформатированных разделов скопировать данные будет прак­тически невозможно, так как в операционных системах семейства Windows не реализованы механизмы работы с неформатированными разделами.

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

Пример cоздания базы db_buh в неформатированном разделе.

USE masterGOCREATE DATABASE db_buhON ( NAME = db_buh, FILENAME = 'f:') LOG ON( NAME = 'db_buh_log', FILENAME = 'g:' ) GO

На рисунке показан пример создания базы в сырых разделах дисков F и G.

4. Использование «старых» логинов

4.1 Выявление угрозы

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

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

4.2 Возможные последствия

Уволенный сотрудник может воспользоваться своей старой учетной записью.

4.3 Меры защиты

Регулярное администрирование записей

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

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

1) Пользователи Windows (локальные учетные записи Windows и в службы каталогов Active Directory)

Факт применения учетной записи Windows можно опредлить по журналу событий безопасности Windows.

2) Пользователи информационных баз 1С:Предприятия

Факт использования учетной записи фиксируется в журнале регистрации 1С:Предприятия

3) Пользователи сервера MS SQL Server

Факт использования учетной записи фиксируется в логах MS SQL Server (в соответствии с настройками)

4) Пользователи баз данных MS SQL Server

5) Администраторы центрального сервера кластера серверов 1С:Предприятия 8.1

6) Администраторы кластера 1С:Предприятия

7) Учетные записи Windows для контекста исполнения служб 1С:Предприятие 8.1 и MS SQL Server (и других СУБД)

Кроме того, следует понимать, что:

  • Пользователи Windows (1) могут выступать как Пользователи 1С:Предприятие 8.1 (2), как Администраторы файла кластеров (5), и Администраторы кластера (6)
  • Пользователи Windows (1) могут быть Пользователями серверов СУБД (3). Однако 1С:Предприятие 8.1 использует учетные записи самой СУБД (3)
  • Пользователи СУБД (3) неявно получают доступ к базе данных «связывая» с учетной записью базы данных (4). Например, пользователь «dbo» – это владелец базы (dbowner). Пользователь СУБД с ролью «Создателя базы», в MS SQL Server это «dbcreator» считается пользователем базы «dbo»
  • Учетные записи Windows (1) также являются контекстом работы служб (7). Поэтому не предоставляйте эти записи для работы обычных пользователей (1),(2)
  • Разработчики конфигураций на платформе 1С:Предприятие также могут использовать программное разграничения доступа. Для этого, как правило, создается справочник «Пользователи». Управление настройками такого справочника выполняется в режиме «1С:Предприятие», а не Конфигураторе. Максимальные права доступа к справочнику «Пользователи» — чтение данных.

5. Несанкционированный доступ к файлам кластера серверов

5.1 Выявление угрозы

Признаки возможной угрозы:

  • Отсутствие учетных записей администраторов кластера
  • Использование одной учетной записи для служб ragent, rmngr, rphost
  • Файловый доступ к серверу
  • Физический доступ к серверу

5.2 Возможные последствия

Злоумышленник может получить пароли и общую информацию для подключения к серверу СУБД. Это может привести к тому, что ему станут полностью доступны данные информационных баз.

5.3 Меры защиты

5.3.1 Создать администратора центрального сервера и администратора кластера серверов 1С:Предприятия

Создайте администратора центрального сервера

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

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

Если не задан администратор кластера, то любой пользователь сможет редактировать параметры кластера.

5.3.2 Использовать разные учетные записи для разных служб кластера серверов 1С:Предприятия

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

  • Каталог данных приложения
  • Каталог временных файлов.

Общая идеология работы со служебными данными заключается в том, что доступ к служебным данным кластера серверов должны иметь только менеджер кластера (rmngr.exe) и агент сервера (ragent.exe). Рабочие процессы (rphost.exe) используют служебные данные только через менеджер кластера, поскольку являются потенциально опасными (в них могут выполняться фрагменты кода конфигураций).

На рисунке показана общая схема кластера

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

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

Пользователю USR1CV81, от имени которого стартует по умолчанию агент сервера, назначаются полные права на этот каталог. Другим пользователям доступ в этот каталог запрещается. Запуск менеджера кластера выполняет агент сервера от имени того же самого пользователя, от которого запущен он сам.

На рисунке показана настройка каталога кластера.

Обратите внимание, если для рабочего процесса используется собственная учетная запись Windows, то она не имеет доступа к каталогу кластера.

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

Для того, чтобы rphost запускался от имени пользователя RPHOSTUSER, а
ragent запускается от USR1CV81, необходимо сделать следующее:

  • в каталог данных центрального сервера () положить файл swpuser.ini следующего содержания:

  • Пользователя USR1CV81 включить в локальные политики безопасности:
    • Разрешить замену маркера уровню процесса (Adjust memory quotas for a process);
    • Разрешить замену маркера уровня процесса (Replace a process-level token);
    • Разрешить вход в качестве службы (Log on as service);
    • Разрешить вход в качестве пакетного задания (Log on as batch job)
    • Вход в качестве службы (Log on as service)
    • Вход в качестве пакетного задания (Log on as batch job).

    На рисунке показаны пользователи процессов RPHOST , RAGENT и RMNGR кластера 1С:Предприятие 8.1.

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

    Для этого при создании временного файла кластером серверов 1С:Предприятия пользователю USR1CV81 устанавливаются полные права на создаваемый файл. Другим пользователям доступ к этому файлу запрещается. Таким образом, данные, хранимые во временных файлах, защищаются от несанкционированного доступа.

    5.3.3 Исключите файловый доступ к рабочим серверам кластера

    Для сервера 1С:Предприятия исключите такие сервисы как «общий файловый доступ», «почтовый сервер», «интернет-прокси», «веб-сервера» и т.п.

    Пример отключения файлового доступа по сети.

    5.3.4 Поместите сервер в помещении, недоступном для посторонних

    Как компромисный вариант, используйте серверную стойку и предоставляйте ключи лицам по утвержденном списку.

    6. Уязвимости операционной системы, СУБД

    6.1 Выявление угрозы

    Следите за появлением информации о уязвимостях операционной системы и СУБД. При появлении официальных сообщений от производителя, воспользуйтесь предлагаемыми обновлениями. Если есть такая возможность, желательно пользоваться автоматической загрузкой и установкой обновлений.

    6.2 Возможные последствия

    Вероятность угрозы оценивается, как незначительная. Последствия зависят от обнаруженной уязвимости. Риск взлома значительно уменьшается при отсутствии удаленного доступа к серверам из Интернета.

    6.3 Меры защиты

    • Выполняйте обновление операционной системы
    • Выполняйте обновление СУБД
    • Пользуйтесь услугами компаний, специализирующихся на безопасности

    7. Вирусы, трояны, логгеры

    7.1 Выявление угрозы

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

    7.2 Возможные последствия

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

    7.3 Меры защиты

    7.3.1 Используйте брандмауэры.

    Брандмауэр – средство защиты , которое отслеживает и ограничивает обмен данными между компьютером и сетью или Интернетом, т.е. защищает компьютер от несанкционированного доступа извне.

    Начиная с Windows XP, операционные системы компании Microsoft стали содержать втроенный брандмауэр (сетевой экран, firewall). Для Windows XP SP2 и Windows Vista брандмауэр по умолчанию включен.

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

    Включенный брандмауэр (особенно программный) снижает быстродействие. В связи с этим рекомендуется избегать использования брандмаэров на сервере СУБД и сервере 1С:Предприятия.

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

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

    Чтобы добавить программу 1С:Предприятие 8.1 в список исключений брандмауэра Windows XP SP2, необходимо выполнить следующие действия:

    • Войдите в систему с помощью учетной записи администратора.
    • Выберите в меню Пуск пункт Выполнить, введите команду Firewall.cpl и нажмите кнопку ОК.
    • Откройте закладку Исключения.
    • На закладке Исключения нажмите кнопку Добавить программу.
    • Нажмите кнопку Обзор, перейдите в каталог программы (обычно C:\Program Files\1cv81\bin),найдите программу 1cv8.exe и нажмите кнопку ОК.
    • Нажмите кнопку ОК.

    Если в сети используется компьютер с HASP License Manager и на нем включен брандмауэр, то необходимо добавить HASP License Manager в список исключений брандмауэра. В Windows XP SP2 для этого необходимо выполнить следующие действия:

    • Войдите в систему с помощью учетной записи администратора.
    • Выберите в меню Пуск пункт Выполнить, введите команду Firewall.cpl и нажмите кнопку ОК.
    • Откройте закладку Исключения.
    • На закладке Исключения нажмите кнопку Добавить программу.
    • Нажмите кнопку Обзор, перейдите в каталог %Windir%\System32\, найдите программу nhsrvw32.exe и нажмите кнопку ОК.
    • Нажмите кнопку ОК.

    Возможно случаи, когда брандмауэр включен на сервере, или в качестве сервера используется компьютер с настрольной операционной системой, например Windows XP SP2.

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

    Чтобы увидеть «реальную» картину работы клиент-серверного варианта и используемых портов (например, чтобы настроить брандмауэр) можно воспользоваться бесплатной утилитой TCPView.

    7.3.2 Использование антивирусного ПО совместно с 1С:Предприятием 8

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

    7.3.2.1 Использование антивирусного ПО на сервере с MS SQL Server

    Антивирусное программное обеспечение, работающее в реальном времени, отнимает значительные ресурсы у SQL Server. Использовать его не рекомендуется.

    Вместо этого следует периодически сканировать SQL Server при помощи сканеров вирусов, предпочтительно в периоды минимальной нагрузки.

    7.3.2.2 Использование антивирусного ПО на кластере серверов 1С:Предприятие 8

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

    7.3.2.3 Использование антивирусного ПО на клиенте 1С:Предприятие 8

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

    Как вариант настройки антивируса предлагается:

    • Добавить в исключения проверяемых файлов:
      • файлы с расширениями *.1CD, *.1cl, *.log, *.elf, *.pfl, *.usr, *.v8i, *.lst, *.st, *.snp, *.epf, *.dat
      • исполняемые приложения приложения: 1cv8.exe, ragent.exe, rmngr.exe, rphost.exe, 1CV8 Servers.msc из папки C:\Program Files\1cv8\bin\ (C:\Program Files (x86)\1cv8 — для 32битной версии в 64битной среде ) или C:\Program Files\1cv81\bin\ (C:\Program Files (x86)\1cv81 — для 32битной версии в 64битной среде )
      • C:\Program Files\1cv8
      • С:\Program Files (x86)\1cv8
      • C:\Program Files\1cv81
      • C:\Program Files (x86)\1cv81
      • C:\Documents and Settings\All Users\Application Data\1С
      • C:\Documents and Settings\USR1CV81\Local Settings\Application Data\1C\1Cv81

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

      • C:\Documents and Settings\\Local Settings\Temp
      • C:\WINNT\Temp

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

      7.3.3 Исключение доступа в интернет

      Полностью исключите возможность подключения к серверам через интернет.

      8. Пароли на мониторах, слабые пароли

      8.1 Выявление угрозы

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

      8.2 Возможные последствия

      Серьезность угрозы прямо зависит от прав записи данного сотрудника.

      8.3 Меры защиты

      8.3.1 Используйте политку сложных паролей, выполняйте проверку на сложность паролей

      Пароли являются «первой линией защиты» от несанкционированного доступа к Вашей информации. Не смотря на все современные технологии, часто они становятся основной целью злоумышленника. Пользователи часто придумывают очень простые пароли. Они могут означать день рожденья пользователя, имя любимой кошки или номер сотового. Такие пароли легко подобрать, применяя общеизвестные закономерности. Другим способом является перебор всех возможных комбинаций символов.

      Важно, чтобы пользователи составляли надежные пароли. Хороший пароль — это тот, который крайне трудно угадать или подобрать, но очень легко запомнить.

      Для того чтобы обеспечить «сложные для взлома» пароли, в Windows используется политика «Пароль должен удовлетворять требованиям сложности»:

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

      Политика Windows представлена на рисунке.

      Подробней о применении политики паролей Windows можно прочитать на сайте Microsoft. В MS SQL Server 2000 контроль сложных паролей отсутствует. В MS SQL Server 2005 cуществует возможность использовать политику сложных паролей Windows. Для каждого логина сервера политика назначается персонально. Т.е. один логин может отвечать требованиям сложного пароля, а другой – нет.

      На данном рисунке параметр Enforce password policy означает применение политики паролей, параметр Enforce password expiration обозначает применение политики истечения срока действия паролей.

      Паролями можно управлять через Transact-SQL:

      На данном рисунке с помпощью кода Transact – SQL для существующего логина был изменен пароль и включен параметр CHECK_POLICY (установлено значение ON -применение политики паролей), включен параметр CHECK_EXPIRATION (установлено значение ON — Политика истечения срока действия паролей).

      Проверка сложности паролей пользователей также присутствует в 1С:Предприятии 8.1.

      Для управления проверкой сложности выберите меню «Администрирование – Параметры информационной базы».

      На рисунке показана настройка требований к паролям конфигурации.

      Если флажок «Проверка сложности паролей пользователей» установлен, минимальный размер пароля пользователя равен 7 символам.

      8.3.2. Применять устройства автоматической аутентификации

      Например, вы можете использовать смарт-карты.

      9. Перехват информации

      9.1 Выявление угрозы

      Существует класс программ-шпионов, которые способны перехватывать информацию, передаваемую по сети. Например, к ним относятся безобидные на первый взгляд сетевые мониторы (сниферы).

      9.2 Возможные последствия

      Возможным последствием является полный перехват всего сетевого траффика, расшифровав который, можно (теоретически) получить какую-то информацию о работе вашей системы. Вероятность возникновения такой угрозы минимальна. Трудозатраты на организацию защиты очень высоки. Необходимо адекватно оценить риски. Как правило, организация защиты такого класса характерна для крупных компаний.

      9.3 Меры защиты

      9.3.1 Организуйте защиту траффика штатными средствами 1С:Предприятия (защита передачи данных кластеру серверов)

      При создании новой базы вы указываете параметр «безопасное соединение» (защищенное соединение). Существует возможность выбрать одно из трех значений:

      • Выключено
      • Установка соединения
      • Постоянно

      На рисунке показан выбор параметра «Защищенное соединение» для вновь создаваемой базы.

      Настройка действует для всех подключений к кластеру серверов, в том числе с консоли «Сервера 1С Предприятий».

      Уровень «Выключено» является самым низким, уровень «Постоянно» – самым высоким. При этом используется безопасное соединение по протоколу TCP/IP с шифрованием алгоритмами RSA и Triple DES.

      Уровень безопасности «Постоянно»

      Использование уровня безопасности «Постоянно» позволяет полностью защитить весь поток данных (как пароли, так и непосредственно данные) между клиентом и кластером серверов. При этом весь обмен происходит с использованием алгоритмов шифрования RSA и Triple DES. Следует учитывать, что при этом возможно снижение производительности системы.

      Уровень безопасности задается при создании информационной базы. Эта информация сохраняется как на клиенте (в списке информационных баз), так и в кластере серверов (в реестре кластера). После создания информационной базы, ее параметры, сохраненные в реестре кластера, изменить уже нельзя. Однако можно изменить уровень безопасности, указанный для этой информационной базы на клиенте. Выполнить настройку уровня безопасности подключения через параметр запуска /SLev, который определяет уровень защищенности соединения клиента с сервером 1С:Предприятия

      /SLev0 – незащищенное соединение.

      /SLev1 – защищенное соединение только в процессе выполнения аутентификации.

      /SLev2 – защищенное соединение в течение всего сеанса.

      Отсутствие параметра эквивалентно /SLev0.

      На рисунке показаны свойства ярлыка, вызывающего 1С:Предприятие с указанием уровня защищенности соединения.

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

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

      Кластер серверов выбирает максимальный уровень безопасности из переданного клиентом и указанного для этой информационной базы в реестре кластера. Это фактический уровень безопасности. Кроме этого кластер серверов генерирует сеансовый ключ для шифрования Triple DES и вместе с фактическим уровнем безопасности передает его клиенту, предварительно зашифровав эти данные с помощью публичного ключа клиента.

      Дальнейший обмен данными выполняется в соответствии с фактическим уровнем безопасности, при этом как клиент, так и сервер шифруют передаваемые данные с использованием сеансового ключа по алгоритму Triple DES, у которого сам процесс шифрования более скоростной, чем RSA.

      Уровень безопасности «Установка соединения»

      Этот уровень безопасности является компромиссом между безопасностью и производительностью. Использование уровня безопасности «Установка соединения» позволяет частично защитить поток данных (только пароли) между клиентом и кластером серверов. Алгоритмы шифрования здесь используются до момента установки соединения клиентского приложения с рабочим процессом и выполнения аутентификации пользователя, затем идет открытый процесс обмена данными с кластером серверов.

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

      Частичную защищенность данных информационной базы обеспечивает то, что ключевая информация (пароли) передается только в зашифрованном виде. В результате, если открытый поток данных будет перехвачен, то из него можно будет получить лишь незначительную часть данных информационной базы. Т.к. пароли будут недоступны, то злоумышленник не сможет аутентифицироваться в информационной базе и получить доступ ко всем данным или выполнить произвольные действия с информационной базой.

      Уровень безопасности «Выключено»

      Уровень безопасности Выключено является самым низким и самым производительным. Практически все данные передаются без использования шифрования.

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

      Безопасность данных, передаваемых между консолью кластера серверов и кластером серверов обеспечивается, также, за счет возможности шифрования передаваемых данных. При этом используются те же самые три уровня безопасности: Выключено, Установка соединения и Постоянно.

      Консоль кластера серверов взаимодействует с агентом сервера (процесс ragent.exe). Желаемый уровень безопасности задается при старте агента сервера. Фактический уровень безопасности будет выбран агентом сервера как максимальный из указанного при старте и уровней безопасности всех кластеров, расположенных на данном центральном сервере. Уровень безопасности кластера задается при его создании (программном или интерактивном).

      На рисунке показан реквизит «Безопасное соединение» консоли кластеров.

      Специалистам по безопасности также может потребоваться знание алгоритмов шифрования, применяемые в 1С:Предприятие 8.1

      • Криптографическая система RSA является системой ассиметричного шифрования, в которой для кодирования сообщения используется один ключ (публичный), а для расшифровки другой (секретный), т.е. криптографический алгоритм с открытым ключом.
      • Triple DES использует тройное шифрование симметричным алгоритмом DES. Этосимметричный алгоритм шифрования, в котором один ключ используется как для зашифровывания, так и для расшифровывания сообщений.

      При уровне безопасности «Постоянно» выполняется шифрование по следующей схеме

      В общем виде протокол взаимодействия клиента и кластера серверов представлен на следующем рисунке:

      Протокол взаимодействия одинаков как для менеджера кластера (rmngr.exe), так и для рабочего процесса (rphost.exe): после установки соединения первый обмен данными выполняется с использованием шифрования по алгоритму RSA, дальнейший обмен данными выполняется с использованием шифрования по алгоритму Triple DES.

      Для уровня «Установка соединения» в общем виде протокол взаимодействия клиента и кластера серверов представлен на следующем рисунке:

      После установки соединения первый обмен данными выполняется с использованием шифрования по алгоритму RSA, затем обмен данными выполняется с использованием шифрования по алгоритму Triple DES до окончания процедуры аутентификации. Дальнейший обмен выполняется нешифрованными данными.

      Для уровня безопасности «Выключено» в общем виде протокол взаимодействия клиента и кластера серверов представлен на следующем рисунке:

      После установки соединения клиент отправляет Открытый ключ RSA и уровень безопасности в кластер серверов. Менеджер кластера отправляет ему сообщение о новом уровне безопасности, зашифрованное Открытым ключом RSA. Дальнейший обмен выполняется нешифрованными данными. Аналогичным образом осуществляется обмен данными клиентского приложения с рабочим процессом кластера.

      Пароли администраторов кластера серверов и пароли доступа к информационным базам хранятся на кластере серверов в зашифрованном виде. Для этого используется шифрование алгоритмами SHA1 и AES128.

      SHA1 — это алгоритм контрольного суммирования. С его помощью хранятся пароли, которые проверяет система 1С:Предприятие (например, пароль администратора кластера, администратора центрального сервера). При этом исходный текст хранимых паролей восстановить нельзя, а можно только проверить совпадение контрольной суммы введенного пароля с хранимой контрольной суммой.

      AES128 – это алгоритм шифрования. С его помощью хранятся пароли, для которых должен восстанавливаться исходный текст (например, пароли доступа к СУБД).

      9.3.2 Защита MS SQL Server

      Microsoft SQL Server позволяет шифровать передаваемый по сети трафик. Для этого используется Secure Sockets Layer (SSL) при передаче данных между серверома кластера и MS SQL Server. Если рабочий сервер кластера и MS SQL Server на одном компьютере, то используется протокол обмена Shared Memory (и шифрование не используется).

      Для шифрования всех передаваемых данных для MS SQL Server 2000 необходимо воспользоваться утилитой «Server Network Utility». На закладке «General» установите флажок «Force protocol encryption».

      На рисунке указано шифрование на стороне клиента SQL Server

      Метод шифрования выбирается в зависимости от используемого клиентским приложением (т.е. сервером приложения 1С). Для использования SSL необходимо правильно настроить службу выдачи сертификатов в сети.

      Более подробно о шифровании сертификатами можно прочитать на сайте Microsoft.

      Для того чтобы установить необходимость шифрования всех передаваемых данных для определённого сервера приложений необходимо воспользоваться утилитой «Client Network Utility» (обычно расположенной в «C:\WINNT\system32\cliconfg.exe»). Как и в предыдущем случае, на закладке «General» установите флажок «Force protocol encryption».

      На рисунке показано шифрование на стороне сервера.

      Помните, что использование шифрования может достаточно сильно сказаться на производительности системы, особенно при использовании запросов, возвращающих большие объёмы информации.

      Допольнительными мерами защиты передачи данных между сервером приложений и MS SQL Server при использовании протокола TCP/IP можно считать изменение настроек, заданных по умолчанию. Это использование нового порта взамен используемого стандартно порта 1433. При этом это изменение должно также быть выполнено для компьютера с сервером приложений, т.е. должен использоваться один и тот же порт.

      В настройках протокола TCP/IP на сервере MS SQL «поднять» флажок «Hide server», запрещающий ответы на широковещательные запросы данному экземпляру службы MS SQL Server.

      На рисунке показано «скрытие» SQL Server.

      MS SQL Server 2005 поддерживает сетевые соединения как с клиентом SQL Server 2000, так и «собственных» клиентов Native Client.

      Общая настройка сетевой конфигурации сервера здесь.

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

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

      Рекомендуемый режим подключения к SQL Server для процессов 1С:Предприятия 8.1 – смешанный режим «mixed» авторизации (SQL Server и Windows). Для подключения необходимо использовать учетные записи SQL Server. Тем не менее, существуюет возможность использовать режим авторизации Windows.

      На рисунке показан режим авторизации Windows для SQL Server 2005.

      В этом случаи необходимо определить, какая учетная запись Windows используется процессом rphost.exe.

      На рисунке показаны в дистепечере процессы rphost.exe и учетная запись RPHOSTUSER, используемая для этих процессов.

      И указать записи права для доступа к SQL Server и возможности создавать базы.

      На рисунке создан пользователь SQLSRV\RPHOSTUSER (он же пользователю процессов rphost.exe) и указаны разрешения для работы с базами данных на SQL Server 2005.

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

      На рисунке показан пример создания новой информационной базы.

      Пользователь базы данных и пароль пользователя не указаны. Будет использована учетная запись рабочего процесса кластера.

      Отсюда следует вывод: для всех информационных баз 1С:Предприятия 8.1 пользователь будет один!

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

      Перенос базы 1С на SQL сервер

      Анна Викулина

      Повышение скорости работы 1С, отказоустойчивости системы.

      от 2 800 руб./час

      Программные продукты фирмы 1С имеют два основных формата хранения базы данных: файловая база данных и база данных, размещенная на SQL Server средствами СУБД

      В список поддерживаемых СУБД входят:

      • Microsoft SQL Server
      • PostgreSQL
      • Oracle Database
      • IBM Db2.

      Файловые базы данных, как правило, используют небольшие компании с 1-5 пользователями, где нет большого объема документооборота, а также не произойдет быстрого роста объема базы данных.

      Когда нужно переходить с файловой базы 1С на СУБД MS SQL?

      Если конфигурация долго открывается и также долго открываются и проводятся документы, если периодически выскакивают ошибки «Нарушена целостность базы данных» или «Файл базы данных поврежден», файл ИБД *.1СD имеет объем более 5ГБ, планируется рост пользователей или в результате внедрения еще одной конфигурации 1С планируется достаточно быстрый рост объема данных, пора задуматься о вопросе, как перенести файловую базу 1С на SQL поскорее и узнать, что такое сервер 1С.

      Формат хранения информационных баз 1С

      Преимущества SQL

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

      При высокой отказоустойчивости и поддержке бесконечно большой базы данных SQL-сервер дает возможность одновременной работы большому числу пользователей. Конечно, наиболее мощные СУБД – MS SQL Server/Oracle стоят недешево, но бесплатный вариант PostgreSQL также широко используется в среде 1С. Да, SQL требует настройки сервера 1С и администрирования, но подобные услуги оказывает широкий круг компаний-франчайзи 1С, и конечно же – наша.

      Работа с файловой базой плохо защищена, потому что доступ к копированию файла БД открыт любому пользователю, плохо масштабируется и начинает «тормозить», когда пользователей становится больше пяти из-за высокого уровня изоляции транзакций, а также имеет ограничения по размеру в 5-10 Гб. При этом отдельные функции конфигурации при таком варианте просто не работают (к примеру, регламентные задания).

      Да, быстрая настройка, отсутствие дополнительного ПО и низкая цена – весьма привлекательные «черты» файловых БД, но выбор в их пользу может иметь место только при построении самой простой информационной системы.

      Пример частой ошибки при работе с файловой базой объемом более 5Гб

      Этапы перехода на внешнюю СУБД

      Для переноса файловой базы 1С 8.3 на сервер SQL проделаем следующие шаги:

      Шаг №1 Выгрузка ИБ

      Откроем конфигуратор файловой версии базы 1С.

      Список конфигураций 1С. Запуск конфигуратора

      В конфигураторе выбираем пункт меню «Администрирование» и «Выгрузить информационную базу».

      Формирование файла выгрузки ИБД

      Итогом процесса выгрузки будет файл *.dt.

      Файл Выгрузки ИБД

      Шаг №2 Создание кластера

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

      Ярлык консоли управления сервера 1С

      Важно: Для работы сервера 1С обязательно требуется установка лицензии на сервер 1С.

      Лицензия бывает 32х-разрядная и 64х-разрядная. Разрядность определяет количество ОЗУ доступное серверу 1С: у 32х до 4ГБ, а 64х более 4ГБ.

      Для уточнения цен, подбора сервера для 1С с учетом плановых нагрузок и форматов обслуживания таких систем обратитесь к нашим специалистам. Мы с радостью подберем для вас подходящее решение.

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

      Администрирование кластера 1С

      Шаг №3 Создание базы данных в кластере

      Следующим шагом в процессе миграции базы 1С будет создание новой конфигурации в кластере. Существует два возможных варианта создания базы 1С на сервере 1С:

      • Через консоль администрирования кластера 1С;
      • Через окно запуска 1С:Предприятие.

      Создание информационной базы в кластере через консоль администрирования кластера 1С

      Чтобы создать базу 1С в СУБД SQL, выбираем «Создание новой информационной базы» и заполнить обязательные поля:

      • Имя – название вашей базы 1С;
      • Сервер баз данных – указываем имя кластера 1С;
      • База данных – название базы данных в вашей СУБД SQL;
      • Пользователь сервера БД – логин от администратора СУБД SQL;
      • Пароль сервера БД – пароль от администратора СУБД SQL.

      Создание новой ИБД SQL в кластере 1С

      Далее добавляем эту ИБД в список 1С для последующего запуска конфигуратора 1С и загрузки ранее подготовленного файла выгрузки базы. После того как база в кластере создана, добавляем ее в список баз 1С. Для этого запускаем 1С:Предприятие и «Добавить…» базу 1С.

      Запуск 1С:Предприятие

      Далее выбираем «Добавление в список существующей информационной базы» и переходим «Далее».

      Меню выбора действий

      После появления формы добавления базы 1С, заполняем последние строки в списке и переключаем режим работы на «На сервере 1С:Предприятие».

      Окно заполнения данных для подключения базы 1С

      Запуск 1С:Предприятие и добавление конфигурации

      Этот способ быстрее предыдущего и бывает полезен, когда, например, вы не установили у себя компоненту консоли управления при установке платформы. Чтобы им воспользоваться, запускаем 1С:Предприятие и в открывшемся окне приложения жмем кнопку «Добавить».

      Окно 1С:Предприятие

      Далее выбираем «Создание информационной базы».

      Создание информационной базы

      После перехода в следующий пункт меню выбираем « Создание информационной базы без конфигурации для разработки новой конфигурации» или «Загрузки выгруженной ранее информационной базы».

      Создание чистой конфигурации

      Следующим шагом будет выбор пункта «На сервере 1С:Предприятие».

      Создание на сервере 1С

      Мы попадем в искомое нами окно заполнения полей для создания базы на сервере 1С.

      Создание ИБД на сервере SQL

      Шаг №4 Завершение переноса

      Сервер

      Перенос базы 1С на SQL-сервер

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

      от 2 800 руб.

      Перенос данных

      Перенос данных 1С

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

      от 2 800 руб.

      Запуск конфигуратора 1С

      После запуска конфигуратора переходим в раздел «Администрирование» и выбираем пункт «Загрузить информационную базу».

      Загрузка информационной базы из файла

      Далее выбираем ранее сохраненный файл выгрузки и начинаем непосредственно процесс загрузки базы на СУБД SQL.

      Завершение загрузки ИБД 1С

      Готово! Ваша конфигурация успешно переведена из файлового режима на SQL-сервер.

      Если повторная работа в конфигураторе не требуется, выбираем вариант «Нет» и запускаем базу в режиме «Предприятия» для проверки ее работоспособности.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *