Быстрый вход в 1С под другим пользователем

19.06.13

Администрирование - Роли и права

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

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

Наименование Файл Версия Размер
Медвежатник
.epf 7,91Kb
259
.epf 7,91Kb 259 Скачать
Перем темпПользовательОС;
Перем темпПользовательИБ;


Процедура ТабличноеПолеВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
	Если НЕ ВыбраннаяСтрока.ЭтоГруппа Тогда
		СтандартнаяОбработка = Ложь;
		Если НЕ ЗначениеЗаполнено(ПользовательОС) Тогда
			Предупреждение("Не выбран пользователь ОС");
			Возврат;
		КонецЕсли;
		//Предварительно удалим у всех авторизацию, схожую с нашей
		ОчиститьАвторизациюОС();
		//Затем назначим нужному юзеру
		ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоИмени(СокрЛП(ВыбраннаяСтрока.Код));
		Если ПользовательИБ <> Неопределено Тогда
			Если ПользовательИБ.АутентификацияОС Тогда
				//Запомним старую аутентификацию
				темпПользовательОС = ПользовательИБ.ПользовательОС;
				темпПользовательИБ = ПользовательИБ;
			КонецЕсли;
			ПользовательИБ.АутентификацияОС = Истина;
			ПользовательИБ.ПользовательОС = ПользовательОС;
			Попытка
				ПользовательИБ.Записать();
			Исключение
				Сообщить(ОписаниеОшибки());
			КонецПопытки;
		КонецЕсли;
		Если Найти(СтрокаСоединенияИнформационнойБазы(),"Srvr=") = 0 Тогда
			СтрокаЗапуска = "C:\Program Files (x86)\1cv82\common\1cestart.exe ENTERPRISE        "+СтрЗаменить(СтрЗаменить(СтрокаСоединенияИнформационнойБазы(),"File="," /F "),";","")+" /n """+ПользовательИБ.Имя+"";
		Иначе
			СтрокаЗапуска = "C:\Program Files (x86)\1cv82\common\1cestart.exe ENTERPRISE "+СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрокаСоединенияИнформационнойБазы(),"Srvr="," /S "),";Ref=""","/"),"""",""),";","")+" /n """+ПользовательИБ.Имя+"";
		КонецЕсли;
		ЗапуститьПриложение(СтрокаЗапуска);
	КонецЕсли;
КонецПроцедуры

Процедура ОчиститьАвторизациюОС()
	СписокПользователей = ПользователиИнформационнойБазы.ПолучитьПользователей();
	Для н = 0 По СписокПользователей.Количество() - 1 Цикл
		Если СписокПользователей[н].ПользовательОС = ПользовательОС Тогда
			ПользовательИБ =      ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(СписокПользователей[н].УникальныйИдентификатор);
			ПользовательИБ.АутентификацияОС = Ложь;
			ПользовательИБ.ПользовательОС = "";
			ПользовательИБ.Записать();
		КонецЕсли;
	КонецЦикла;
КонецПроцедуры

Процедура ПользовательОСНачалоВыбора(Элемент, СтандартнаяОбработка)
	СтандартнаяОбработка = Ложь;
	ФормаВыбораПользователяWindows = ПолучитьОбщуюФорму("ФормаВыбораПользователяWindows", ЭтаФорма);
	ФормаВыбораПользователяWindows.ВыбранныйПользовательWindows = ПользовательОС;
	Результат = ФормаВыбораПользователяWindows.ОткрытьМодально();
	Если Результат <> Неопределено Тогда
		ПользовательОС = Результат;
	КонецЕсли;
КонецПроцедуры

//Затираем следы
Процедура ПриЗакрытии()
	//Авторизацию снова очищаем
	Если ЗначениеЗаполнено(темпПользовательОС) Тогда
		//Восстановим старую аутентификацию
		темпПользовательИБ.АутентификацияОС = Истина;
		темпПользовательИБ.ПользовательОС = темпПользовательОС;
		Попытка
			темпПользовательИБ.Записать();
		Исключение
			Сообщить(ОписаниеОшибки());
		КонецПопытки;
		//Если до этого не было аутентификации, то она не нужна
	Иначе
		ОчиститьАвторизациюОС();
	КонецЕсли;
КонецПроцедуры

См. также

SALE! 20%

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

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

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

13000 10400 руб.

02.09.2020    122103    670    389    

714

Запрет доступа к данным по зарплате для БП 3.0 и КА 2.5

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

Расширение позволяет максимально полно ограничить доступ пользователей к данным по заработной плате, а именно закрывает доступ к документам начисления и выплаты заработной платы, не позволяет просматривать бухгалтерские отчеты по счету учета зарплаты а также убирает зарплатные проводки из журнала проводок. Расширение запрещает просматривать платежные документы на выплату зарплаты, так же не доступны регламентные отчеты в ПФР и ИФНС. Расширение предлагает готовые настроенные профили "Бухгалтер без зарплаты", "Только просмотр без зарплаты".

5700 руб.

27.05.2021    32728    204    89    

165

Автоподбор ролей для профилей и групп доступа в любых типовых базах 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    2972    13    1    

34

SALE! 20%

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

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

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

10000 8000 руб.

10.11.2023    3522    11    1    

34

Расширение для разграничения доступа к контрагентам и обработка для группового назначения доступа для Бухгалтерии (RLS) 3.0.143.42

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

Расширение предназначено для Бухгалтерии предприятия (версии ПРОФ и КОРП). Типовая конфигурация остается на поддержке. С помощью расширения менеджер по продажам будет иметь доступ к контрагентам и списку их документов только в случае, если он является для них ответственным. Пользователю с полными правами также доступна обработка «Назначение ответственных» для группового добавления/удаления ответственного в карточке контрагента. Есть версия данного расширения для клиентов Fresh - в магазине расширений (Fresh)

9360 руб.

14.09.2022    5759    7    4    

9

Роли для кладовщика

Логистика, склад и ТМЦ Роли и права Платформа 1С v8.3 Бухгалтерский учет Управление правами 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Расширение, которое позволяет использовать отдельные роли для доступа к складским документам, для доступа к документам раздела "Производство" и для доступа к документам раздела "Покупки".

2520 руб.

21.05.2019    1692306    552    192    

133

Универсальная система оповещений в базе или по почте по произвольным условиям, расписанием, ролям и пользователям (Расширение / конфигурация для платформ 8.3.6+, для ЛЮБЫХ баз)

Роли и права Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

Данная система разработана как альтернатива стандартной системе напоминаний. Но имеет ряд существенных преимуществ: отображение в базе или с отправкой по почте, свое расписание, возможность фильтрации по ролям и пользователям, формирование своих запросов и макетов, шаблоны писем, работа в фоне. А также может блокировать работу пользователей при заданных условиях. Может работать в составе любой конфигурации. Имеется справка с описанием возможностей. (Обновление от 20.02.2024, версия 2.2, расширение)

18000 руб.

29.11.2019    24688    13    8    

33
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. KonstB 180 01.10.12 09:42 Сейчас в теме
(0) У Вас ничего нового? :)
4. jig 144 01.10.12 09:58 Сейчас в теме
(1) KonstB, У меня немного по другому работает, без подмены пароля.
6. KonstB 180 01.10.12 10:40 Сейчас в теме
(4) У меня и так и так )
+ это уже все реализовано тут: Подсистема "Инструменты разработчика" v2.60 и в мобильной версии.
поэтому у Вас очередной велосипед :)
9. jig 144 01.10.12 14:25 Сейчас в теме
(6) KonstB, В данную обработку не смотрел. Каждая новая наработка - немного чей-то велосипед.
2. ivs200999 01.10.12 09:48 Сейчас в теме
Можно чуть подробнее о реализации? Сбрасывается пароль?
3. jig 144 01.10.12 09:51 Сейчас в теме
(2) ivs200999, В конфигурации подменяется авторизация, после закрытия обработки - все становится на свои места.
5. ivs200999 01.10.12 10:04 Сейчас в теме
(3) Да, я уже увидел, спасибо.
7. DimaP 63 01.10.12 14:18 Сейчас в теме
ПараметрыСеанса.ТекущийПользователь = <Выбранный из списка>


тут так?
8. jig 144 01.10.12 14:23 Сейчас в теме
(7) DimaP, Нет, тут запуск непосредственно под выбранным пользователем.
10. shadow264 2 01.10.12 14:47 Сейчас в теме
А что классная задумка=)экономит пару минут на тестах,ставлю +
11. KonstB 180 01.10.12 14:56 Сейчас в теме
Надо администрацию попросить отключить ПОИСК по сайту - все равно никто не пользуется :)
12. DimaP 63 01.10.12 21:55 Сейчас в теме
(11) Пользуется!
Но пока найдешь что нужно/скачешь - все мани кончатся ))
13. KonstB 180 02.10.12 09:16 Сейчас в теме
(12) DimaP, Поэтому многие, в последнее время, начали всякую чушь, да копи-пасты выкладывать - тем самым засоряя ресурс ((( В результате имеем проблемы с последующим поиском...
ojiojiowka; +1 Ответить
14. jig 144 02.10.12 10:30 Сейчас в теме
(13) KonstB, зачем тут мне комментарии засорять??? Можно в своих темах рассуждать о засорах ресурса. поставь уже минус - да иди с миром.
15. KonstB 180 02.10.12 12:10 Сейчас в теме
(14) Ничего не могу поделать - раз уж затрагивается наболевшая тема...
Я ради этого и сделал публикацию - по своей сути "фуфел" (ничего особенного) - что бы позасорять комментарии, но у Вас активности больше ))) Хотел этот вопрос на форуме поднять, но все как то руки не доходят (
16. ITEkb 03.10.12 11:43 Сейчас в теме
Предлагаю подобные вещи помимо отчета еще и примерами кода снабжать.
Действительно, чтобы глянуть, что сделал автор, приходится скачивать обработку,
тратятся средства.
17. jig 144 03.10.12 12:32 Сейчас в теме
Без проблем могу выложить, только хотябы плюсы ставьте.
18. kanalex 27 29.11.12 10:10 Сейчас в теме
{Форма.Форма.Форма(32)}: Значение не является значением объектного типа (Имя)
СтрокаЗапуска = "C:\Program Files (x86)\1cv82\common\1cestart.exe ENTERPRISE "+СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрокаСоединенияИнформационнойБазы(),"Srvr="," /S "),";Ref=""","/"),"""",""),";","")+" /n """+ПользовательИБ.Имя+"";

{Форма.Форма.Форма(52)}: Ошибка при вызове метода контекста (ПолучитьОбщуюФорму)
ФормаВыбораПользователяWindows = ПолучитьОбщуюФорму("ФормаВыбораПользователяWindows", ЭтаФорма);
по причине:
Недопустимое значение параметра (параметр номер '1')
19. jig 144 29.11.12 11:44 Сейчас в теме
(18) kanalex, Здравствуйте. Данная обработка писалась на стандартной УТ 10.3, там присутствует общая форма выбора пользователя. Если так ругается, то заполните поле - имя пользователя вручную, \\имяДомена\имяЮзера.
20. echo77 1868 19.06.13 09:06 Сейчас в теме
Оформите публикацию нормально - код можно оформить и покрасивее.
Вот, почитайте статью : http://infostart.ru/public/66592/
21. jig 144 19.06.13 13:12 Сейчас в теме
(20) echo77, Благодарю за подсказку.
22. nixel 1403 26.06.13 18:05 Сейчас в теме
Восстановления паролей у пользователей, очищенных процедурой ОчиститьАвторизациюОС() не предусмотрено? =)
Действительно, а зачем им...
23. jig 144 27.06.13 13:30 Сейчас в теме
(22) nixel, внимательней читаем код:
Процедура ПриЗакрытии()
//Авторизацию снова очищаем
Если ЗначениеЗаполнено(темпПользовательОС) Тогда
//Восстановим старую аутентификацию
темпПользовательИБ.АутентификацияОС = Истина;
темпПользовательИБ.ПользовательОС = темпПользовательОС;
Попытка
темпПользовательИБ.Записать();
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
//Если до этого не было аутентификации, то она не нужна
Иначе
ОчиститьАвторизациюОС();
КонецЕсли;
КонецПроцедуры
24. nixel 1403 27.06.13 15:09 Сейчас в теме
(23) это только для одного сохраненного во временной переменной пользователя. а процедурка очищает всех, что найдет.

Процедура ОчиститьАвторизациюОС()
    СписокПользователей = ПользователиИнформационнойБазы.ПолучитьПользователей();
    Для н = 0 По СписокПользователей.Количество() - 1 Цикл
        Если СписокПользователей[н].ПользовательОС = ПользовательОС Тогда
            ПользовательИБ =      ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(СписокПользователей[н].УникальныйИдентификатор);
            ПользовательИБ.АутентификацияОС = Ложь;
            ПользовательИБ.ПользовательОС = "";
            ПользовательИБ.Записать();
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры
Показать
25. nixel 1403 27.06.13 15:12 Сейчас в теме
(23) все, нашел. тотально скретинил, извиняюсь =)
26. Borunmeert 9 28.06.13 10:07 Сейчас в теме
не работает в УПП 1.3. ничего не происходит при нажатии!
27. jig 144 02.07.13 20:36 Сейчас в теме
(26) goodwin11, Проверьте правильность написания "пользователя windows".
28. a.podobin 27.05.14 10:21 Сейчас в теме
Итак, тестирование показало следующие недочеты:
1. если серверная БД, то ключ пути к БД должен быть через обратный слэш --> /S db-srv\CENTER
скорее всего у некоторых скачавших и не запускается, просто ничего не происходит. обратите внимание на п.2 если решили протестировать на других юзверах!
2. в случае если необходимо запустить БД под несколькими пользователями, при закрытии восстановление настроек выполняется только для последнего.

Для "взял и пользуйся" - далеко.
Для "допила" - нормально.

Без понимания 2-го пункта в живой базе можно натворить беды.
29. jig 144 29.05.14 14:32 Сейчас в теме
(28) a.podobin, Спасибо за комментарий, но по второму пункту не согласен! Вот код:
Процедура ОчиститьАвторизациюОС()
СписокПользователей = ПользователиИнформационнойБазы.ПолучитьПользователей();
Для н = 0 По СписокПользователей.Количество() - 1 Цикл
Если СписокПользователей[н].ПользовательОС = ПользовательОС Тогда
ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(СписокПользователей[н].УникальныйИдентификатор);
ПользовательИБ.АутентификацияОС = Ложь;
ПользовательИБ.ПользовательОС = "";
ПользовательИБ.Записать();
КонецЕсли;
КонецЦикла;
КонецПроцедуры
т.е. очистка будет авторизации будет у всех пользователей, у которых прошла подмена.
30. Светлый ум 406 19.11.15 13:55 Сейчас в теме
В портативных инструментах разработчика - эта штука тоже есть.
33. Светлый ум 406 08.11.16 09:54 Сейчас в теме
(30) Светлый ум, приспичела версия для 8.1 и та что в "инструментах разработчика" - не подошла:
- а ваша шуршит-работает)
+1
34. Светлый ум 406 08.11.16 10:07 Сейчас в теме
(33) Модуль и форму руками перетаскивал.
31. veyron21 133 20.01.16 10:22 Сейчас в теме
А мне кажется, что обработка весьма полезная.
Чтобы не тратить много времени на знакомство с подсистемой инструментов разработчика, можно скачать эту поделку и пользоваться себе наздоровье. Автор молодец, даже исходник выложил.
32. echo77 1868 24.01.16 11:24 Сейчас в теме
ИМХО, это не будет работать в клиент-серверном варианте, если сервер 1С работает вне домена, а вы пытаетесь запустится под другим пользователем не с сервера 1С
Оставьте свое сообщение