Отключение пользователей встроенными функциями

Администрирование - Защита, права, пароли

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

Laughing

8.1

Создаем ярлык. Назовем его: Отключение или Завершение.
"C:\Program Files\1cv81\bin\1cv8.exe"  ENTERPRISE /F"ПутьКБазе" /N"Юзер" /P"ЕгоПароль" /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей

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

Создаем ярлык. Назовем его: Разрешить
"C:\Program Files\1cv81\bin\1cv8.exe"  ENTERPRISE /F"ПутьКБазе" /N"Юзер" /P"ЕгоПароль" /WA- /AU- /DisableStartupMessages /C РазрешитьРаботуПользователей /UC ПакетноеОбновлениеКонфигурацииИБ

Все. Теперь можно всем работать!

Smile

8.2

Отключалка

"C:\Program Files\1cv82\common\1cestart.exe" ENTERPRISE /F"ПутьКБазе" /N"Юзер" /P"ЕгоПароль" /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей

Включалка

"C:\Program Files\1cv82\common\1cestart.exe" ENTERPRISE /F"ПутьКБазе" /N"Юзер" /P"ЕгоПароль" /WA- /AU- /DisableStartupMessages /CРазрешитьРаботуПользователей /UCКодРазрешения

 

Это работает для фалового варианта.

Для серверного меняем /Fна /S\

Кста, работающие пользователи автоматически включаться в работу

Замечено, если у пользователей закрывается 1С с запросом завершения работы, то в 8.2 будет окно это маячить :-(.... пока думаю над этим.

Всем огромный фэнкс!

121

См. также

Комментарии
Избранное Подписка Сортировка: Древо
1. WKBAPKA 194 29.09.10 10:24 Сейчас в теме
4. Abadonna 3721 29.09.10 11:49 Сейчас в теме
хм... прям удивительно (1) неужели действительно не знал?
5. WKBAPKA 194 29.09.10 12:06 Сейчас в теме
14. Abadonna 3721 29.09.10 18:20 Сейчас в теме
(5)
вот те крест!

Стало быть не занимался обменами.
Сервис-Прочие обмены данными- Настройка выполнения обменов...
Ежели есть хоть одна настройка
Действия - Настройка обновления конфигурации
оно тебе автоматически построит:
REM Путь к файлу для ошибок и сообщений
set FileInformation=""

date /t >> %FileInformation%
time /t >> %FileInformation%
set DataBaseName>>%FileInformation% 

rem Завершение работы пользователей
start "" /wait %v8exe% ENTERPRISE %DataBase% %AdminUser% /CЗавершитьРаботуПользователей	/UCПакетноеОбновлениеКонфигурацииИБ	/Out%FileInformation% -NoTruncate /DisableStartupMessages

start "" /wait %v8exe% CONFIG     %DataBase% %AdminUser% /UpdateDBCfg /UCПакетноеОбновлениеКонфигурацииИБ	/Out%FileInformation% -NoTruncate

rem Разрешение работы пользователей
start "" /wait %v8exe% ENTERPRISE %DataBase% %AdminUser% /CРазрешитьРаботуПользователей	/UCПакетноеОбновлениеКонфигурацииИБ	/Out%FileInformation% -NoTruncate /DisableStartupMessages

rem Запуск самой программы
start "" %v8exe% ENTERPRISE %DataBase% %User%  /DisableStartupMessages
Показать

P.S. Вот тут правильная настройка обмена, когда периферия, при необходимости, обновляет свою конфигурацию вслед за центральной
18. iov 364 29.09.10 20:38 Сейчас в теме
(14) P.S. Вот тут правильная настройка обмена, когда периферия, при необходимости, обновляет свою конфигурацию вслед за центральной
Там наверно ссылочка должна быть?
19. Abadonna 3721 29.09.10 20:55 Сейчас в теме
(18)
Там наверно ссылочка должна быть?

На что????
20. iov 364 29.09.10 21:17 Сейчас в теме
(19) на правильную настройку обмена , когда периферия, при необходимости, обновляет свою конфигурацию вслед за центральной :) Может я неправильно понял - тогды извиняйте.
21. Abadonna 3721 29.09.10 21:25 Сейчас в теме
(20) Поясняю: центральная база может иметь дурную привычку взять да обновиться злобным, например, франчем ;) Изменились реквизиты объектов, добавились новые... да мало ли! В правильном обмене париться с обновлением периферийной базы не придется, она получит от центральной информацию о том, что та изменилась, и сама обновится. Все это предусмотрено штатными механизмами обмена восьмерки
22. iov 364 29.09.10 21:28 Сейчас в теме
(21) а вот теперь все ясно. :) а я надеялся сохранить что нить умное для балбеса админа а то в отпуск спокойно не сходить :cry:
27. Sherlock99 01.10.10 22:28 Сейчас в теме
Я в семерке писал обработчикОжидания, который проверял константу на завершение работы. Если константа была равна Да (1), то три раза с интервалом в 30 сек пользователям выдается предупреждение о необходимости завершить работу. Если они ее не успевали за это время заврешить, 1С закрывалась сама. При открытии же, проверялась константа на заврешение, если она равна Да (1), то 1С сразу же закрывается
lookindenis; +1 Ответить
2. WKBAPKA 194 29.09.10 11:32 Сейчас в теме
это для файлового варианта... а для серверного?
3. anig99 2644 29.09.10 11:37 Сейчас в теме
Вообще есть пункт меню в сервисе "Установить блокировку подключения к базе".
Выгоняет пользователей.
Но, если мне не изменяет память, таким образов нельзя выгнать пользователя у которого открыто модальное окно
6. WKBAPKA 194 29.09.10 12:24 Сейчас в теме
так всеже, для серверного варианта что то есть похожее?
7. Einzelhaft 13 29.09.10 12:42 Сейчас в теме
(6) Для серверного вместо ключа /F пиши ключ /S
8. WKBAPKA 194 29.09.10 12:58 Сейчас в теме
2(7): спасибо. вроде работает
9. Einzelhaft 13 29.09.10 13:23 Сейчас в теме
(6) Для серверного вместо ключа /F пиши ключ /S
например "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /S<ИмяСервераSql>\<ИмяБазыНа1ССервере> /N <имя> /P <пароль> /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей
единственное что мне неясно - что делает ключ /AU- :(
sergiobargio1; demo-05; +2 Ответить
10. Alex39 29.09.10 15:45 Сейчас в теме
"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F Пала1 /N Александр /P 123 /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей

Как-то не получилось. ни просто с названием базы, ни когда путь прописывал. Наименование пользователя Александр пароль 123. Выдаёт сообщение: информационная база не обнаружена. Создать новую?
11. Einzelhaft 13 29.09.10 16:44 Сейчас в теме
(10) Путь заключай в кавычки (если длинные названия) и без пробелов
например
"C:\Program Files (x86)\1cv81\bin\1cv8.exe" ENTERPRISE /SSQLSRV\MyDB /NАдминистратор /P123 /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей
или
"C:\Program Files (x86)\1cv81\bin\1cv8.exe" ENTERPRISE /FD:\FileBases\myDB\ /NАдминистратор /P123 /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей
12. SergeyTY 29.09.10 16:49 Сейчас в теме
круть. а для семерки есть подобная штучка?
26. lookindenis 86 01.10.10 22:22 Сейчас в теме
(12)
то-же хотелось бы услышать ответ =)
повторюсь: "а для семерки есть подобная штучка?"
13. demo-05 133 29.09.10 16:53 Сейчас в теме
:!: Да, спасибо за комменты и плюсики.
Ну,
во-первых: фича расчитана для удобства администрирования, поэтому я не писал про пункт меню...
Во-вторых: правильно заметили - это для файлового варианта. Обязательно подправлю

/AU — запрет вывода вопроса об обновлении текущей версии 1С:Предприятия с административной установки (для базовых версий не используются).
15. Yackov 96 29.09.10 18:28 Сейчас в теме
А вот если баз много, то как быть? Если ярлычков не напасешься, то как? 8-)
16. Abadonna 3721 29.09.10 18:35 Сейчас в теме
(15) Сходи куда-нибудь в партком, они раньше мастера ярлыки вешать были :)
17. alexk-is 6337 29.09.10 20:04 Сейчас в теме
(15) Вот эта штука http://www.infostart.ru/public/19363/ настрогает таких скриптов сколько хочешь. Только глочками выбери базы для которых сделать скрипты.
23. a-novoselov 1049 30.09.10 09:13 Сейчас в теме
а как ты повисшие сессии такой штукой отключишь? Еще один батник для перезапуска сервера?)
24. iov 364 30.09.10 18:29 Сейчас в теме
(23) Хм на то они и повисшие, чтобы жизнь была веселее.
25. Андроид 180 01.10.10 10:45 Сейчас в теме
Ставлю +
Но есть проблемка Имя пользоветеля состоит из 3 слов..
Подставляет только первое...
28. Abadonna 3721 02.10.10 06:27 Сейчас в теме
Забавно, но вот тут http://infostart.ru/public/21720/ изложено практически то же самое, опубликовано аж 12.08.2009, но плюсиков всего 3.
Похоже, надо еще со временем публикации угадать :D
29. w-divin 02.10.10 23:59 Сейчас в теме
(28)
Главная → Каталог
Каталог
Публикация удалена
30. Abadonna 3721 03.10.10 06:52 Сейчас в теме
(29) Очень интересно :o Вчера утром (02.10.10) она была на месте и плюсиков было 3, сейчас плюсиков 4 и удалена.
Кстати, четвертый плюс от lookindenis (коммент 26)
31. Nuuq 68 03.10.10 14:02 Сейчас в теме
Ставлю +
Но есть проблемка Имя пользоветеля состоит из 3 слов..
Подставляет только первое...

Дело в том, что в твоем случае значение параметра (имя пользователя) помимо одного слова включает еще и другие символы (пробелы,скобки, может даже еще буквы...) - значит в данном случае параметр (имя пользователя) нужно указывать в кавычках + параметры, которые не нужны (пароль) не указывать вообще, т.е. вот так (обрати внимание на параметр /N чего тока тут нет, запятых еще не хватает :))

"C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /FD:\1c\DemoAccounting /N"Иванов Иван Иванович (директор)" /WA- /AU- /DisableStartupMessages /CЗавершитьРаботуПользователей


З.Ы.: а если ты где-то просто обновляешь базу, то лучше заходи под админом, у него логин как правило короткий да и прав хватит на все :)
32. acrk 695 07.10.10 10:51 Сейчас в теме
Попробовал. Выгнать - выгнала. А разрешить не получается - требует код разрешения.
33. nikitan 94 11.10.10 10:49 Сейчас в теме
(32)
Как это не удивительно, но код доступа к базе "КодДоступа".
Система такой ставит по умолчанию :D
ybatiaev; sergiobargio1; briz; hamann2; +4 Ответить
34. nikitan 94 11.10.10 12:07 Сейчас в теме
Код из типового ЗиУПа 2.5.27.5:

// Устанавливает блокировку соединений ИБ.
//
// Параметры
// ТекстСообщения – Строка – текст, который будет частью сообщения об ошибке
// при попытке установки соединения с заблокированной
// информационной базой.
//
// КодРазрешения - Строка - строка, которая должна быть добавлена к параметру
// командной строки "/uc" или к параметру строки
// соединения "uc", чтобы установить соединение с
// информационной базой несмотря на блокировку.
//
// Возвращаемое значение:
// Булево – результат завершения работы пользователей.
//
Процедура УстановитьБлокировкуСоединений(Знач ТекстСообщения = "",
Знач КодРазрешения = "КодРазрешения") Экспорт

Блокировка = Новый БлокировкаУстановкиСоединений;
Блокировка.Установлена = Истина;
Блокировка.Начало = ТекущаяДата();
Блокировка.КодРазрешения = КодРазрешения;
Блокировка.Сообщение = СфомироватьСообщениеБлокировки(ТекстСообщения, КодРазрешения);
УстановитьБлокировкуУстановкиСоединений(Блокировка);

КонецПроцедуры

В функции ОбработатьПараметрыЗапуска(), общего модуля УправлениеСоединениямиИБ, вызов процедуры УстановитьБлокировкуСоединений() производится без параметров, отсюда и следует (33)

Автору топика потенциальный минус за такое!!!
Нужно описывать все.
35. sgirg 26 26.10.10 14:17 Сейчас в теме
День добрый.... что то я никак не пойму куда вводить эту строку: "C:\Program Files\1cv81\bin\1cv8.exe" ENTERPRISE /F <путь к базе> /N <имя> /P <пароль> /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей
В свойствах ярлыка в поле "Объект"???
А все разобрался... по другому немного сделал...
36. bulpi 136 27.10.10 22:30 Сейчас в теме
Возможно, для автора я скажу новость... Но эта штука относится не к платформе, а к семейству типовых конфигураций. В которых написана фигова туча строчек кода для обработки параметра ЗавершитьРаботуПользователей. Об этом ОБЯЗАТЕЛЬНО нужно было написАть. И указать в описании не "Приложение для Windows для 1С: Предприятие 8.1; 1С: Предприятие 8.2 ", а конкретный список конфигураций. А так лично я зря потратил время на изучение этой статьи. Уж как-нибудь в СВОИХ конфигурациях я реализую эту штуку без помощи кого-бы то ни было.
frkbvfnjh; maljaev; alk; MrFlanker; cheburashka; netperson; Bobak; +7 Ответить
37. VSvintsov 14 29.03.11 20:20 Сейчас в теме
попробовал на УТ 10.3 12.96 файловая и сервере Win2008
оба пользователя работали через удаленный доступ.
Блокировка исправно ставилась и удалялась, но вот второй пользователь в БД упрямо оставался.
В результате грохнул его сеанс через менеджер терм доступа - только тогда БД освободилась
38. Gribo 21.09.11 12:56 Сейчас в теме
завершить завершил, а вот разрешить не дает
39. Samir_2011 20 28.09.11 11:21 Сейчас в теме
Платформа 8.2, БП 2.0.
Запрет: "C:\Program Files\1cv82\common\1cestart.exe" ENTERPRISE /F D:\1C\Year /N 111 /P 111 /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей
Разрешение: "C:\Program Files\1cv82\common\1cestart.exe" ENTERPRISE /F D:\1C\Year /N 111 /P 111 /WA- /AU- /DisableStartupMessages /C РазрешитьРаботуПользователей /UC КодРазрешения

Работает, но вопрос на засыпку - при запрете окно программы сворачивается и войти нельзя никому, в том числе и админу, пока не разблокируешь. Как тогда войти в программу?
40. AntonH851 49 04.10.11 15:45 Сейчас в теме
А разве код разрешения не для этого предназначен?
41. mrdug 695 07.10.11 11:31 Сейчас в теме
А вот эта ошибка из-за чего возникает: Отсутствует файл базы данных "'C:\Documents/1Cv8.1CD'"?
42. Samir_2011 20 07.10.11 15:27 Сейчас в теме
Я так понял, что данный код позволяет входить администратору и выгонять всех пользователей, кроме себя - для проведения различного рода работ, там 1с обновить и так далее. Или она только для полного аввыгона людей из базы под ноль в том числе и администратора-инициатора?
43. swamp 18.10.11 12:40 Сейчас в теме
в файловом варианте ничего не произошло
пользователь загрузился у меня, но у работающих пользователей никакой таблички не появилось
44. swamp 25.10.11 07:41 Сейчас в теме
виноват, произошло, только через некоторое время (секунд 15-30).
так и должно быть?
45. briz 69 26.10.11 11:41 Сейчас в теме
(0) Администратор Кластера и Пароль Администратора Кластера должны быть заданы ?
46. Attest 3 21.11.11 14:51 Сейчас в теме
Полезная информация, спасибо, но использовать хочется интрумент посолиднее!
47. swamp 21.11.11 15:00 Сейчас в теме
а можно изменить текст на этом всплывающем сообщении?
48. Tpakmop 11 05.12.11 08:10 Сейчас в теме
Не работает, Ставлю так: "C:\Program Files\1cv82\8.2.14.533\bin\1cv8.exe" ENTERPRISE /F "C:\1С - ИБ\1" /N "1" /P "1" /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей
Запускается 1С предприятие под данным пользователем и все, ни у кого не отрубается.
Может я что-то не так делаю?
49. pandaa61 25.01.12 12:28 Сейчас в теме
"C:\Program Files\1cv82\8.2.14.533\bin\1cv8.exe" ENTERPRISE /F "C:\1С - ИБ\1" /N "1" /P "1" /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей
Аналогично! Запускается база, подключенные пользователи продолжают работать, в чем дело не понимаю......
51. dim0n_la 92 04.02.12 15:13 Сейчас в теме
(49) pandaa61, (48) Tpakmop, может у вас конфа не типовая. В статье не заметил упоминания о том, что параметры "ЗавершитьРаботуПользователей" и "РазрешитьРаботуПользователей" должны обрабатываться в конфигурации специальным кодом вызываемым процедурой "ПриНачалеРаботыСистемы" в которую и передаются эти параметы в переменную ПараметрЗапуска. такой функционал есть в типовых, но в самописных конфигурациях его может и не быть. тогда никакие параметры не помогут.
50. sinjevla 173 31.01.12 12:10 Сейчас в теме
Спасибо за подсказку, полезная информация, буду тестировать.
52. SERJ_1CC 49 06.02.12 18:42 Сейчас в теме
Инетерсно, тоже не сталкивался, пригодится однозначно, разобраться надо только в работе
53. WWWolfy 100 15.02.12 10:58 Сейчас в теме
Можно просто создать 2 ярлыка 1С

Копируем дважды ярлык 1С на раб. столе и переименовываем "Закрыть" и "Открыть".

В свойствах ярлыка добавляем в поле Объект, чтобы выглядело так:
"C:\Program Files\1cv82\common\1cestart.exe" /C ЗавершитьРаботуПользователей

У второго ярлыка так:
"C:\Program Files\1cv82\common\1cestart.exe" /C РазрешитьРаботуПользователей /UCКодРазрешения

Ярлыки будут открывать и закрывать любые типовые базы.
54. nick_e 16.02.12 06:31 Сейчас в теме
Было бы удобно если бы все это было оформлено в виде галочек и переключателей в обработке, чтоб не прописывать настройки вручную.
55. Andle 26.02.12 13:33 Сейчас в теме
В УПП, при установленной настройке пользователя "спрашивать подтверждение при закрытии программы", чего-то это не срабатывает.
56. LimonkaRu 01.03.12 13:39 Сейчас в теме
мне нужно для батника, для периферийной базы, чтобы когда погржается конфиг из центральной - выгнать всех юзеров и подгрузить конфиг. первоначально был такой батник:

@echo avtoobmen Noria2
start "" /wait "c:\Program Files (x86)\1cv82\8.2.14.540\bin\1cv8.exe" enterprise /F D:\Base_1C\111 /N Autoobmen /P 111 /Execute "d:\ObrabotkaSeansa.epf"
@echo end

@echo avtoobmen Noria2
start "" /wait "c:\Program Files (x86)\1cv82\8.2.14.540\bin\1cv8.exe" CONFIG /F D:\Base_1C\111 /N Autoobmen /P 111 /UpdateDBCfg
@echo end

все работало, но батник закрывал только сеанс пользователя Autoobmen с помощью обработки ObrabotkaSeansa.epf, которая содержит в модуле объекта строку с кодом:
ЗавершитьРаботуСистемы(Ложь);
но появилась выгонять всех пользователей, а не только текущий сеанс закрывать, перед подгрузкой конфига

так вот по вашим описанием у меня не работает строка в батнике:

@echo avtoobmen Amplituda
"C:\Program Files (x86)\1cv82\common\1cestart.exe" ENTERPRISE /F d:\Base_1C\111 /N Autoobmen /P 111 /WA- /AU- /DisableStartupMessages /C ЗавершитьРаботуПользователей
@echo end

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

как быть?
Win7
КА 8.2, снята с поддержки с возможностью обновления
57. sip 08.03.12 11:46 Сейчас в теме
Открываетбазу под пользовалетем.ю которого надо закрыть и ошибка
Параметр запуска ЗавершитьРаботуПользователей не отработан. Нет прав на администрирование информационной базы.

Что можно сделать?
60. OscarTT 24.07.12 12:37 Сейчас в теме
(57)
Похоже и у нас те же грабли (((
58. izz 30.05.12 11:06 Сейчас в теме
Спасибо за полезную информацию. Как раз пригодилось для написания батника для отключения пользователей в 1с 8.2! Теперь не надо утром ругать на пользователей, которые не вышли на ночь из базы (из-за них выгрузка базы не делалась).
59. krovohlebka 2 05.06.12 14:30 Сейчас в теме
и у нас не работает ключ ЗавершитьРаботуПользователей
серверная версия
в том числе в качестве ярлыка
61. artur.antipin 04.10.12 13:42 Сейчас в теме
УПП 1.3.25
Не работает команда.
А для выполнения этой команды нужна установка блокировки соединений?
62. zup_tptu 22.01.13 11:53 Сейчас в теме
"C:\Program Files\1cv82\common\1cestart.exe" ENTERPRISE /F"ПутьКБазе" /N"Юзер" /P"ЕгоПароль" /WA- /AU- /DisableStartupMessages /CРазрешитьРаботуПользователей /UCКодРазрешения


собственно работу других пользователей завершает, а само окно остается открытым
Как это лечится?
63. bayce 24 24.03.14 01:24 Сейчас в теме
Пароль пользователя хранить в батнике.
В целях безопасности это правильно?
64. Nicholas 723 19.12.14 13:37 Сейчас в теме
Какие минимальные права должны быть у пользователя, от имени которого запускается 1С?
Самый простой вариант дать этому пользователю полные права, но это не безопасно, т.к. тогда в открытом виде будут лежать данные пользователя с полными правами.
Какие права нужно назначить, чтобы пользователь мог только завершать работу других пользователей, но не смог ничего посмотреть в программе?
65. Swetlana 10 05.03.15 13:22 Сейчас в теме
Оставьте свое сообщение