|
Заблокировать базу, но не для всех | ☑ | ||
---|---|---|---|---|
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) Выгоняй сам руками и через консоль. Будешь важным и нужным для проведения регламентных работ человеком.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |