Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Под кем работает COM-соединение?

Под кем работает COM-соединение?
Я
   Garry1010
 
12.08.19 - 14:22
Под каким пользователем работает COM-соединение? Клиент-сервер.

Почему возник вопрос: требуется по com'у вызвать обработку в другой базе, а там она должна сохранить результат в файл. Так вот пока обработка работала в регламентном задании, всё было окейно. А стали пытаться вызывать её по com'у - облом с доступом к вышеуказанному файлу. Переделал на обращение к локальному (было - к сетевому) файлу - пофик, всё равно нет доступа.
Настраивал comexp.msc - что-то не влияет...
 
 
   Kigo_Kigo
 
1 - 12.08.19 - 14:24
предполагаю, что под тем же пользователем от имени которого запущена программа из которой вызывается ком-соеденение
   Провинциальный 1сник
 
2 - 12.08.19 - 14:28
Если на сервере 1с - то под тем пользователем, от имени которого запущен сервер 1с. Если на клиенте - то от имени клиента.
   Garry1010
 
3 - 12.08.19 - 14:34
(2) Про сервер - ТОЧНО?
Потому что там стоит типовой USR1CV82. У этого же пользователя есть доступ к папке, куда я собираюсь писать файл, но Винда - не даёт доступа.

Там такая цепочка получается: на сервере вызывается регламентное задание, запускается фоновое задание, из него(!) вызывается создание COM-соединения, по этому КОМу запускается обработка, которая получает данные и пытается записать их в файл - где и происходит облом. До попытки записи всё проходит успешно.

А не работает ли COM-соединение под каким-то своим пользователем, который где-то ещё прописан?
   ДенисЧ
 
4 - 12.08.19 - 14:36
Запусти в своём фоновом задании КомандаСистемы("set > какой-токаталог, куда есть доступ\set.txt")
а потом на это файлик руками глянь, там всё есть
   Garry1010
 
5 - 12.08.19 - 14:44
(4) А что именно смотреть в результатах команды SET? Там много чего будет... или не будет.
   Skylark
 
6 - 12.08.19 - 14:47
Дать USR1CV82 права на запуск СОМ32
   Skylark
 
7 - 12.08.19 - 14:48
comexp.msc /32
   ДенисЧ
 
8 - 12.08.19 - 14:49
(5) например username
   Garry1010
 
9 - 12.08.19 - 14:56
(8) А-а-а... Это бы хорошо, но как узнать что это за пользователь, чтобы знать какие куда доступы у него есть? ;))
   Garry1010
 
10 - 12.08.19 - 15:10
(6) Это в ролях в comexp.msc? Есть там этот юзер. Может, сервер перезагрузить, конечно...
   Garry1010
 
11 - 13.08.19 - 08:55
Результат: пока не создал папку с полными правами для группы Users, оно не хотело работать.:((
Так и непонятно, кто же был нужный юзер?
   ДенисЧ
 
12 - 13.08.19 - 08:57
(11) А теперь создай файл из своего фонового и посмотри в свойства оного файла. На создателя.
   Сияющий в темноте
 
13 - 13.08.19 - 09:22
Сервер 64,соединение 32,используется Com+,чтобы работало,и вот о  имени этого Com+ и создается соединение.
но нн все так просто,службы умеют имперсонацию,то есть действия от имени другого пользователя,и очень большой вопрос-чей токен идет для имперсонации.
   Cyberhawk
 
14 - 13.08.19 - 09:44
Еще косвенно зависит от способа активации СОМ-компоненты (внутрипроцессная или внепроцессная).
   Garry1010
 
15 - 13.08.19 - 09:53
(12) Хммм... Почему-то LOCAL SERVICE.:(
   ДенисЧ
 
16 - 13.08.19 - 09:59
(15) О чём тебе твердили ещё с утки назад
   Garry1010
 
17 - 13.08.19 - 10:04
А этот LOCAL SERVICE разве не имеет доступ сразу ко всему и вся? Это же, вроде, круть какая встроенная!?
   Cyberhawk
 
18 - 13.08.19 - 10:07
(17) Путаешь с локал систем походу
   ДенисЧ
 
19 - 13.08.19 - 10:14
(17) Он на сеть не имеет правов
   Garry1010
 
20 - 13.08.19 - 10:16
На сеть - это я понимаю. Но с локальным диском почему сбои были... Странно.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.