Автозагрузка, установка платформы 1С (PowerShell)

14.12.18

База данных - Инструменты администратора БД

Если у вас нет RDP, нет или не настроено AD, а обновить платформу на большом количестве ПК как-то надо, то Вам сюда.

Скачать файлы

Наименование Файл Версия Размер
Автозагрузка и Установка Платформы 1с (PowerShell):
.epf 865,82Kb
5
.epf 865,82Kb 5 Скачать

Предыстория: 1с PostgreSQL на Centos'e, организована работа удаленных пользователей через нэтбуки (Windows 10).

Подключение: тонкий клиент, права минимальные. (что в 1с, что в ОС на пк).

Задача: автоматизировать обновление платформы на нэтбуках.

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

 

Решение: (загрузка и установка средствами 1с и Powershell)

 

В 1с создаём пользователя: "Установка платформы" с минимальными правами,  для него в конфигураторе снимаем галку

"Защита от опасных действий", чтобы не пугать пользователей лишними сообщениями.

Добавляем обработку в необходимую подсистему, всё лишнее убираем.

 

Сценарий находится в макете (сохраняем с раширением ps1, адаптируем под себя)

Изменяем следующие данные:

$Object.MapNetworkDrive( $DISK, "\\88.88.88.111\server", "true", "Пользователь", "ПарольПользователя" )

88.88.88.111\server" - адрес и имя сетевого диска с обновлениями

"Пользователь", "ПарольПользователя" -  Имя пользователя и Пароль, под которым можно подключиться к диску

$TARGET=$objShell.NameSpace("B:\1C\64Klient\")

1C\64Klient\ - Путь к папке установочных файлов платформы на сетевом диске

$secpasswd = ConvertTo-SecureString "ПарольАдминистратораПК" -AsPlainText -Force

"ПарольАдминистратораПК" - Пароль Администраторской учетной записи на ПК  (на всех нэтбуках единая учетная запись для администратора)

$mycreds = New-Object System.Management.Automation.PSCredential ("ИмяПользователяАдминистратора", $secpasswd)

"ИмяПользователяАдминистратора" - Имя администраторской учетной записи на ПК.

Сохраняем, загружаем обратно в макет.

Порядок работы обработки:

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

1) Подключение к сетевому диску

2) Копирование файлов установки платформы

3) Отключение сетевого диска

4) Установка платформы от имени администратора (тихий режим установки, от пользователя потребуется 1 раз подтвердить вносимые изменения - (контроль учетных записей Windows ( в 8 проходило без него, в 10  не удалось обойти)).

5) Удаление папки установки и файла сценария
 

Тестировалось на Платформе 8.3.11.3034 (ERP 2.4.5.129)

Обработка Платформа 1С установка PowerShell автозагрузка автоматизация администрирование

См. также

Автоподбор ролей для профилей и групп доступа в любых типовых базах 1С УТ 11, КА 2, ERP2, Розница 2/3, УНФ 16/3, БП 3, ЗУП 3 и подобных (УФ, Платформа 8.3.14+)

Инструменты администратора БД Роли и права 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 15.12.2023, версия 1.1.

12000 руб.

06.12.2023    2983    15    1    

34

SALE! 20%

Infostart УДиФ: Управление данными и формами

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

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

10000 8000 руб.

10.11.2023    3550    11    1    

34

SALE! 30%

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

3600 2520 руб.

14.01.2013    177762    1074    0    

849

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    27384    79    146    

59

Система хранения присоединенных файлов в томах на диске

Инструменты администратора БД Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

4200 руб.

10.11.2015    61320    88    59    

73

"Менеджер потоков 2.1": УПП: "Восстановление партий"

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

Как оптимизировать то, что, считалось, не поддается оптимизации? Как повысить доступность базы данных? Как проводить самую «времяемкую» операцию не по паре раз в неделю, а по несколько раз в день*? Ответ есть!

20000 руб.

12.09.2019    11748    5    9    

7

Брандмауэр для сервера 1С Предприятие 8 - внешнее управление сеансами

Инструменты администратора БД Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

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

3600 руб.

06.02.2017    31112    31    18    

47

Хранилище файлов на SQL

Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Управленческий учет Платные (руб)

Привязка файлов / сканов к объектам 1С с сохранением их на SQL-сервере

12000 руб.

09.10.2019    10986    5    8    

9
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. blackhole321 1303 14.12.18 14:42 Сейчас в теме
Я правильно понимаю, что на каждый нетбук копируется файл скрипта PowerShell, где открытым текстом вбит пароль локального администратора компьютера (в Вашем случае всех рабочих станций)?
3. login1020 133 14.12.18 14:57 Сейчас в теме
(1) Да так и есть, не самый лучший вариант в плане безопасности, но в моём случае удаленки к ним нет, как и постоянного интернет соединения, а обновлять 60 + машин, плюс заставлять людей приезжать с ними в офис не самое приятное решение.
2. blackhole321 1303 14.12.18 14:51 Сейчас в теме
И возможно имеет смысл рассмотреть вариант простого скрипта без обработок, который запускается с компьютера администратора, примерно следующего содержания:
$session = New-PSSession -ComputerName ИмяКомпьютера -Credential ВашиУчетныеДанные
Invoke-Command -Command ВашаКомандаИлиСкриптБлок -Session $session
4. login1020 133 14.12.18 15:02 Сейчас в теме
(2) Можно по-подробнее?
В моём случае эти нетбуки не в корп сети, интернет соединение у них либо модем, либо wifi местной сети, в которой они находятся, из вне к ним не подключиться.
5. blackhole321 1303 14.12.18 15:11 Сейчас в теме
(4)
из вне к ним не подключиться

Тогда приведенный мной вариант не годится.

В этом случае, можно при конфигурировании устройства создавать scheduled task со скриптом, который скажем запускается при старте компьютера и периодически опрашивает некий сервер обновлений на предмет наличия соответствующих команд, и выполняет необходимые действия.
В этом случае пароль хоть и хранится на локальной машине, однако в зашифрованном виде и добраться до него сложно.
login1020; +1 Ответить
7. login1020 133 14.12.18 15:25 Сейчас в теме
(5) Тут мы просто в планировщике указываем какой скрипт выполнить по расписанию, и т какого пользователя ( от администратора).
Да, удобно и безопаснее, подходит для настройки новых машин, старые не переделать, пока в руки не принесут.
6. blackhole321 1303 14.12.18 15:20 Сейчас в теме
(4)
Что-то типа:

while($true)
{
Start-Sleep -Seconds ВашТаймаут
$result = Invoke-WebRequest -Uri УРЛВашегоСервераОбновлений
# Удобно передавать данные через json
$jsonObject = ConvertFrom-Json -InputObject $result

if (jsonObject.UpdateFlag -eq $true)
{
# Обновляем
}
}
login1020; +1 Ответить
8. kolya_tlt 86 14.12.18 15:48 Сейчас в теме
а есть решение не палить пароль админа?
9. login1020 133 14.12.18 15:53 Сейчас в теме
(8) Оно В (5)
Но с начало руками надо забить задание в планировщик, подвязать скрипт, и его надо будет немного переписать в части запуска установки.
Планировщик
10. login1020 133 14.12.18 15:58 Сейчас в теме
(8) Как вариант можно сохранять файл сценария в Temp файлы и оттуда запускать, там его не найти хотя бы рядовому пользователю, или же через планировщик указывать напрямую от кого и что запускать
11. blackhole321 1303 14.12.18 16:04 Сейчас в теме
(10)
Как вариант можно сохранять файл сценария в Temp файлы и оттуда запускать, там его не найти хотя бы рядовому пользователю

Наверное - это не очень удачно т.к. работает до тех пор, пока кто-либо не озаботился этим вопросом.
Вообще, наверное самым перспективным, будет - развернуть AD + DirectAccess. В этом случае Вы сможете нормально управлять инфраструктурой и всяких танцев с бубном требоваться не будет.
12. login1020 133 14.12.18 16:07 Сейчас в теме
13. blackhole321 1303 14.12.18 16:11 Сейчас в теме
(12)У Вас вся инфраструктура на Linux, только клиенты Windows?
14. login1020 133 14.12.18 16:15 Сейчас в теме
(13) Сервер Линуксовый, на нём же и 1с висит. Клиенты Windows начиная от xp заканчивая 10.
15. blackhole321 1303 14.12.18 16:17 Сейчас в теме
(14)Ну если начиная с XP :), тогда наверное скрипты.
16. u_n_k_n_o_w_n 34 11.01.19 18:37 Сейчас в теме
Как я понимаю после первой установки, следующие платформы можно просто устанавливать простым копированием.

А просто скопировать можно любым пользователем из любого ресурса, лишь бы у пользователя была запись на папку, в которой хранятся установленные платформы. Если конечно КП пользуются windows.
17. login1020 133 12.01.19 14:00 Сейчас в теме
(16) Примерно так, можно сохранять во временные файлы, они всегда доступны для записи
18. RocKeR_13 1317 24.07.19 14:12 Сейчас в теме
Есть же стандартные способы у платформы: настройте автообновление через файл 1CEStart.cfg (https://infostart.ru/public/648457/), а в качестве папки с версиями платформ укажите папку из любого облака. Тот же Disk-O подключается как сетевая папка, что позволит вам на всех компьютерах унифицировать путь к каталогу с платформой
19. login1020 133 24.07.19 15:33 Сейчас в теме
(18) Все бы ничего, но читаем комментарий (2) в теме что Вы прикрепили. Установить под пользователем не получится, нужны права администратора. И GPO тоже нет, потому имеем, что имеем.
20. blackhole321 1303 24.07.19 15:43 Сейчас в теме
(19)
(19)
Все бы ничего, но читаем комментарий (2) в теме что Вы прикрепили. Установить под пользователем не получится, нужны права администратора. И GPO тоже нет, потому имеем, что имеем.

Права администратора нужны, однако в приведенном комментарии Вы устанавливаете удаленно, т.е. логин и пароль администратора у Вас и учетные данные Вы вводите на своем админском компьютере, а не в скрипте на локальной машине.
21. login1020 133 24.07.19 15:53 Сейчас в теме
(20) Это понятно, что логин и пароль администратора в этом случае не хранятся на локальной машине. Но здесь Мы рассматривали вариант, что у нас нет ни AD, ни GPO соответственно. Так как мне использую настройки CFG файла выполнить установку под пользователем без администраторских прав?

Если все это можно было бы задать в CFG на сервере, я был бы только рад.
22. blackhole321 1303 24.07.19 15:57 Сейчас в теме
(21)
Так как мне использую настройки CFG файла выполнить установку под пользователем без администраторских прав?

Почему без админских прав то?
Если на клиентской стороне есть статический ip адрес, то Вы можете подключиться со своего компьютера при помощи powershell и выполнить все необходимые действия, какие Вам нужны. Для этого не нужна AD и не нужны GPO.
24. login1020 133 24.07.19 16:18 Сейчас в теме
(22) Статических практически нет, но я все равно не пойму. Можете описать реализацию скачивания и установки, имея cfg при помощи powershell?
23. blackhole321 1303 24.07.19 16:02 Сейчас в теме
(21)В общем случае наличие статического ip не требуется, если ваши клиенты могут регистрироваться на dns сервере (который вы можете поднять и у себя), чтобы Вы знали, куда подключаться.
25. RocKeR_13 1317 24.07.19 17:00 Сейчас в теме
(19) надо попробовать в тот же планировщик запихнуть запуск 1С от админа: скорей всего запустит установку платформы также под админом
Оставьте свое сообщение