|   |   | 
| 
 | Заблокировать базу, но не для всех | ☑ | ||
|---|---|---|---|---|
| 0
    
        Stim 30.06.15✎ 16:50 | 
        Задача - выгонять всех пользователей из базы каждый день в определенное время(и не пускать никого в это время), НО за исключением некоторого списка пользователей, который хранится  в базе.
 т.е. сегодня выгоняем всех кроме Иванова и Сидорова, а завтра нужно Иванова выгонять, а вместо него разрешать Петрову. Как подобное реализовать на серверной базе? Блокировка сеансов вроде не подходит, пользователь может заходить с любого компа и он всегда должен однозначно либо зайти в базу, либо нет. в базе должно крутиться какое-то регламентное задание и блокировщик при запуске системы? какие еще решения есть? | |||
| 1
    
        VikingKosmo 30.06.15✎ 16:51 | 
        выгонять всех, кому можно заходить выдать ключ разрешения доступа     | |||
| 2
    
        Господин ПЖ 30.06.15✎ 16:52 | 
        выгоняешь всех, вырубаешь учетки в 1с кроме кому можно, они заходят
 только хардкор! | |||
| 3
    
        DmitrO 30.06.15✎ 16:52 | 
        (1)ключ доступа они друг другу расскажут :)     | |||
| 4
    
        DmitrO 30.06.15✎ 16:53 | 
        (0)может просто лицензий прикупить, пусть работают :)     | |||
| 5
    
        DmitrO 30.06.15✎ 16:55 | 
        ПередНачаломРаботыСистемы(<Отказ>)     | |||
| 6
    
        DmitrO 30.06.15✎ 16:55 | 
        ну и убивать сеансы регл. заданием     | |||
| 7
    
        Ёпрст гуру 30.06.15✎ 16:56 | 
        (3) менять его раз в 3 дня, пусть заипутся :)     | |||
| 8
    
        Одинесю 30.06.15✎ 16:56 | 
        За (1)     | |||
| 9
    
        Fish гуру 30.06.15✎ 16:58 | 
        Где-то здесь проскакивала обработочка, умеющая выгонять пользователей, но что-то не найду.     | |||
| 10
    
        Has 30.06.15✎ 16:58 | 
        ключ + батник + права на запуск батника нужным пользователям     | |||
| 11
    
        Segate 30.06.15✎ 17:04 | 
        (1) Создай роль "доступ в запрещенное время"
 1)При начале работы системы проверяй доступность роли в определенные часы 2) регламентное задание, которое предупреждает пользователя, а через 5 минут убивает его сеанс, если сам не вышел.(опять же если у того нет доступа к роли) | |||
| 12
    
        Stim 30.06.15✎ 17:14 | 
        (1) а как отбирать ключи доступа? они же будут заходить     | |||
| 13
    
        Stim 30.06.15✎ 17:14 | 
        + Авторизация средствами 1С если чо     | |||
| 14
    
        Stim 30.06.15✎ 17:14 | 
        + да и заходить они могут с любого компа     | |||
| 15
    
        Ёпрст гуру 30.06.15✎ 17:17 | 
        (12) в консоле сервера втыкаешь галку - запрет соединения и указываешь пароль. Кому надо - делаешь ярлык на запуск с этим паролем. Усё.     | |||
| 16
    
        Ёпрст гуру 30.06.15✎ 17:18 | 
        +15 в ярлыке 1cv8.exe" /UC[код доступа]     | |||
| 17
    
        VikingKosmo 30.06.15✎ 17:21 | 
        регулярно менять код доступа не предлагать?     | |||
| 18
    
        Stim 30.06.15✎ 17:24 | 
        (15) блин, ты через строчку читаешь чтоле?
 управлять доступом нужно из 1С. Поставил там Иванову галочку - и ему доступ заблокировался. Снял - разблокировался. и никому не нужно бегать по всем компам Иванова и удалять/ добавлять ярлыки | |||
| 19
    
        VikingKosmo 30.06.15✎ 17:25 | 
        кучеряво вы живете. У одного Иванова компов немеряно...     | |||
| 20
    
        Stim 30.06.15✎ 17:26 | 
        (19) да пусть даже с одного. что - добавлять/удалять ему ярлыки с кодом запуска? а если он его скопирует? или попросит кого-нить прислать     | |||
| 21
    
        mTema32 30.06.15✎ 17:26 | 
        (18) Тогда (11)     | |||
| 22
    
        mTema32 30.06.15✎ 17:27 | 
        (20) Какие у вас там настойчивые и любознательные пользователи)) Хотя больше смахивает на начальные стадии паранойи))) Уж извините, за прямоту.     | |||
| 23
    
        Stim 30.06.15✎ 17:29 | 
        (22) нужно предусмотреть все действия пользователей.     | |||
| 24
    
        Marine Band 30.06.15✎ 17:32 | 
        я реализовывал через свою систему авторизации. Все заходят под одним пользователем(на самом деле пользователей не один, а несколько, но они глобальные: менеджеры, администраторы, бухгалтеры). Далее авторизация идет внутри 1С, если не авторизовался, то 1С закрылась.     | |||
| 25
    
        Stim 30.06.15✎ 17:33 | 
        хм. а какие есть варианты выгонялки?
 регламентное задание по сути ведь ничего не может сделать с сеансом, кроме как программного подключения к консоли серверов и пр. по-хорошему проще добавить обработчик ожидания, какую-то константу БазаЗаблокирована, которыми завершать работу пользователя | |||
| 26
    
        Marine Band 30.06.15✎ 17:34 | 
        (25) Рег задание подключается к консоле сервера и выгоняет.     | |||
| 27
    
        Marine Band 30.06.15✎ 17:34 | 
        (26) + через ком     | |||
| 28
    
        Stim 30.06.15✎ 17:36 | 
        (27) ну это понятно.
 какие еще есть варианты? | |||
| 29
    
        Marine Band 30.06.15✎ 17:47 | 
        (28) Этого мало? 0_о     | |||
| 30
    
        Stim 30.06.15✎ 17:55 | 
        (29) это неинтересно.     | |||
| 31
    
        Necessitudo 30.06.15✎ 22:08 | 
        (24) А в консоли кластера видишь стопицот пользователей "Иванов"? Гори в аду!!!     | |||
| 32
    
        Фрэнки 01.07.15✎ 08:32 | 
        Интересно, а когда Иванов запустит несколько сеансов? Всем пользователям нельзя, но они же знают, что Иванову можно и в сеансе Иванова будут входить в базу.
 А вообще, надо бы рассказать в чем тайный смысл гонять всех, но оставлять некоторых и т.д. Алгоритмов можно сочинить много, кого и куда и откуда... База: типовая/на поддержке/самописка на БСП ? | |||
| 33
    
        Stim 01.07.15✎ 08:49 | 
        (32) смысл - оставлять только служебных пользователей, для регламентных работ.     | |||
| 34
    
        Stim 01.07.15✎ 08:49 | 
        + База - УНФ изм, если это важно     | |||
| 35
    
        Stim 01.07.15✎ 08:58 | 
        + я пока придумал - регламентное задание с расписанием, без обработчика.
 и обработка ожидания, которая у каждого будет крутиться, смотреть в регистр пользователей, и завершать работу, если регл задание выполняется | |||
| 36
    
        Фрэнки 01.07.15✎ 09:05 | 
        (34) ну важно знать, что и где разрешено менять. 
 Если можно менять вообще везде, то самое адекватное, ИМХО, это дописать свой реквизит в элементы справочника Пользователи Ловить значение реквизита при старте системы и завершать работу, если в нем задан запрет. Затем можно повесить обработчик ожидания в сеанс юзера и выкидывать юзера, если в его реквизите будет вывешивать признак завершения работы. Можно привязать к юзерам регистр сведений со временем начала и окончания блокировок. Дописать свои обработки на установку в кучу записей, кому что разрешено и когда. | |||
| 37
    
        Stim 01.07.15✎ 09:08 | 
        (36) неоптимальное решение.
 реквизит в справочник - проще всего, но его надо выводить на форму, значит, форма будет изменена, а значит получим немного гемороя при обновлении. лучше добавить РС, в котором хранить пользователей. он при обновлении никак не помешает | |||
| 38
    
        Фрэнки 01.07.15✎ 09:21 | 
        (37) кто заставляет тебя менять типовую форму, если использование нетипового реквизита может быть сделано в своей собственной форме в обработке?
 Но в регистре сведений конечно оптимальней, потому что можно не просто проверять только одно булево значение истина/ложь, но и кучу других полей запихать. Например, время начало блокировки, время конец блокировки и т.п. | |||
| 39
    
        Stim 01.07.15✎ 09:28 | 
        (38) кстати, вариант.. наверн так и сделаю, не буду прикручивать регл задание     | |||
| 40
    
        Segate 01.07.15✎ 09:30 | 
        (36)А чем тебя мой вариант-то не устраивает? Его и обновлять удобно, проблем никаких, и нагрузка минимальная. зачем обработчики ожидания-то?     | |||
| 41
    
        Stim 01.07.15✎ 09:31 | 
        + но хочу оставить вариант резервного подключения.
 как узнать код разблокировки /UC? только по СтрокаСоединенияИнформационнойБазы? | |||
| 42
    
        Stim 01.07.15✎ 09:33 | 
        (40) мне часы доступа надо хранить где-то. должен быть какой-то регистр или справочник, в коде нельзя прямо указывать, сам понимаешь. если захотят поменять, опплюются.
 регл задание, которое убивает сеанс - по ком-подключению к кластеру? фууу | |||
| 43
    
        Ymryn 01.07.15✎ 09:36 | 
        (37) если УФ, то добавление в форму можно реализовать кодом. В том числе и вне модуля формы. Так что на обновление особо не повлияет.     | |||
| 44
    
        Stim 01.07.15✎ 09:39 | 
        (43) интересно.. как это?     | |||
| 45
    
        Segate 01.07.15✎ 09:44 | 
        (44)подписка на событие ОбработкаПолученияФормы, я так думаю     | |||
| 46
    
        Ymryn 01.07.15✎ 09:47 | 
        У нас сделано через изменение в общем модуле 
 МодификацияКонфигурацииПереопределяемый Процедура ПриСозданииНаСервере(Форма, Отказ, СтандартнаяОбработка) Экспорт А дальше уже вызов своего модуля, который по классике. НовоеПоле = ДобавитьПоле(...) | |||
| 47
    
        Stim 01.07.15✎ 11:38 | 
        (45) нет такой подписки     | |||
| 48
    
        Segate 02.07.15✎ 13:34 | 
        (47) Уверен?
 http://joxi.ru/VrwMd0RIWOP12X | |||
| 49
    
        rs_trade 02.07.15✎ 13:38 | 
        (0) Выгоняй сам руками и через консоль. Будешь важным и нужным для проведения регламентных работ человеком.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |