Блокировка подключения к 1с средствами VBS.

21.07.16

Администрирование - Информационная безопасность

Установка блокировки доступа к безе и сброс подвисших соединений.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
monopoly_1.0
.vbs 3,24Kb ver:1.0
0
0 Скачать (1 SM) Купить за 1 850 руб.

Файл VBScript для установки блокировки доступа пользователей к базе 1с для проведения плановых работ. Данный скрипт устанавливает блокировку подключений без ключа "/UC" и делает перезапуск службы агента 1с для сброса подвисших соединений.

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

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

//---------------------------------------------------------------------------------

' VBScript Blocked1cForBackUp.vbs
' Sample script to Blocked 1c and Stop or Start a Service
' [url]www.computerperformance.co.[/url]
' Created by Lex  21/07/2016 Version 1.0
' -------------------------------------------------------' 
Sub RestartService
        Dim objWMIService, objItem, objService
        Dim colListOfServices, strComputer, strService, intSleep 
        strComputer = "."
        intSleep = 15000 ' Время между остановкой и запуском службы
        ' Имя службы которую необходимо перезапустить
        strService = " '1C:Enterprise 8.2 Server Agent (x86-64)' "
        Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" _
        & strComputer & "\root\cimv2")
        Set colListOfServices = objWMIService.ExecQuery _
        ("Select * from Win32_Service Where Name ="_
        & strService & " ")
        For Each objService in colListOfServices
        objService.StopService()
        WSCript.Sleep intSleep
        objService.StartService()
        Next 
End Sub


Sub BlockedConnect
        Dim Connector,AgentConnection,Cluster,WorkingProcess,WorkingProcessConnection,ibDesc,connections,ConnectString
        NameLogFile = "monopoly.log" 'Имя Log файла
        'Установим путь к лог файлу как и путь запуска скрипта
        Out=Replace(WSH.ScriptFullName, WSH.ScriptName, NameLogFile )
        Set fs = CreateObject("Scripting.FileSystemObject") 
        Set OutFile = fs.OpenTextFile(Out, 8, True)
            'Указываем имя пользователя с правами доступа к консоли 
            AdminName = "Администратор" 
            'Указываем пароль
            UserPass = "Пароль"
            'Укажем IP Сервера с базами  1c 
            ServerName    =    "192.168.1.11"
            'Укажем Имя базы
            BaseName    =    "Test"
        WScript.Quit (0)
        Set Connector = CreateObject("V82.COMConnector")
        Set AgentConnection = Connector.ConnectAgent(ServerName)
        Set Cluster = AgentConnection.GetClusters()(0)
        AgentConnection.Authenticate Cluster, "", ""
        For Each WorkProcess In AgentConnection.GetWorkingProcesses(Cluster)
        ConnectString = WorkProcess.HostName & ":" & WorkProcess.MainPort
            Set WorkProcessConnection = Connector.ConnectWorkingProcess(ConnectString)
         
        WorkProcessConnection.AddAuthentication AdminName, UserPass
        BaseList = WorkProcessConnection.GetInfoBases()
            For i = LBound(BaseList) To UBound(BaseList)
                If BaseList(i).Name = BaseName Then
                    Set Base = BaseList(i)
                    Connections = WorkProcessConnection.GetInfoBaseConnections(Base)
                    LockMessageText = vbCrLf + "БАЗА ЗАКРЫТА НА СОЗДАНИЕ РЕЗЕРВНОЙ КОПИИ!" + vbCrLf + " ВРЕМЯ ОЖИДАНИЯ ОКОЛО 5 - 10 МИНУТ." 
                    LockPermissionCode = "Kod" ' Код блокировки базы 
                    test=WorkProcessConnection.GetInfoBases()
                    Base.ConnectDenied = True
                    Base.DeniedFrom = CStr(Now())
                    Base.DeniedTo = CStr(Now() + 1/300)
                                
                    Base.DeniedMessage = LockMessageText
                    Base.PermissionCode = LockPermissionCode
                        OutFile.WriteLine(CStr(Now) + " Установлено сообщение для пользователей: "+LockMessageText)
                        OutFile.WriteLine(CStr(Now) + " Установлен код доступа " + LockPermissionCode)
                        OutFile.WriteLine(CStr(Now) + " Установлена блокировка с "+CStr(Base.DeniedFrom)+" по "+ CStr(Base.DeniedTo))
        
                    WorkProcessConnection.UpdateInfoBase(Base)
                    OutFile.Close()  
        
                End If
            Next
        Next

End Sub 
On Error Resume Next 
BlockedConnect()
RestartService()

//---------------------------------------------------------------------------------

VBS VBScript Блокировка доступа к безе.

См. также

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 Платные (руб)

Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer).

3000 руб.

12.05.2020    29537    140    100    

93

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

Внешняя компонента позволяет печатать PDF файлы непосредственно из 1С, не используя при этом сторонних программ. Прекрасно работает на сервере, тонком клиенте и веб-клиенте. Основана на проекте PDFium из состава проекта Chromium/Chrome

1500 руб.

17.09.2018    37517    116    128    

117

Разработка внешних компонент Телефония, SIP Программист Платформа 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

2400 руб.

04.05.2018    48024    125    66    

68

Разработка внешних компонент Программист Платформа 1С v8.3 Россия Бесплатно (free)

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

04.12.2024    6060    kovalevdmv    26    

79

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Платные (руб)

Внешняя компонента для конвертации PDF файлов в картинки без использования дополнительных программ. Работает на сервере и в тонком клиенте.

2400 руб.

25.06.2024    1470    3    5    

3

Информационная безопасность Пароли Платформа 1С v8.3 Бесплатно (free)

Все еще храните пароли в базе? Тогда мы идем к вам! Безопасное и надежное хранение секретов. JWT авторизация. Удобный интерфейс. Демо конфигурация. Бесплатно.

30.05.2024    8562    kamisov    19    

62

Разработка внешних компонент Программист Платформа 1С v8.3 Платформа 1C v8.2 Платные (руб)

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

4600 руб.

27.06.2023    3966    3    0    

5
Оставьте свое сообщение