Имя: Пароль:
1C
1С v8
SQL база, USR1CV8 и доступ к файлам по сети
0 nanoflooder
 
26.08.20
11:12
Здравствуйте! Постараюсь максимально коротко.

2 сервера в локалке, на одном 1с в терминале (\\1c), на втором - AD (\\srv).

Пользователь домена domain\v.pupkin открыл 1с и желает загрузить файл "\\srv\share\file.txt" из-под некой обработки.

Если база файловая - обращение к файлу происходит от учётки domain\v.pupkin.
Если база SQL - обращение к файлу идёт от учётки 1с\USR1CV8 (от которой запускается служба сервера 1с).

Сначала не мог понять, почему доступа нет, потом сделал костыль в виде добавления USR1CV8 в домен с тем же паролем - доступ появился.

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

Не может быть, что то, как сейчас - это правильный способ.
Как это сделать по-человечески, чтобы было как в файловой - кто 1с открыл, от того права на файлы и используются?

Спасибо заранее.
1 Garykom
 
гуру
26.08.20
11:17
(0) вернуть назад (обрезать) права для USR1CV8 и переписать обработки на правильную работу клиент-сервер с файлами, чтобы файлы открывались/сохранялись &НаКлиенте c отправкой/получением &НаСервере, там в темп каталоге юзались куда есть доступ у USR1CV8
2 acht
 
26.08.20
11:19
(0) Может. Никак. Оно уже сделано по-человечески.
Представь себе, что твой пользователь использует, например, хром на андроиде. Или вообще он - веб-сервис. Ну или пользователь на винде, а сервер на линуксе, причем с разными файловыми системи и разными наборами атрибутов доступа.
3 nanoflooder
 
26.08.20
11:26
(1)
> переписать обработки на правильную работу клиент-сервер с файлами, чтобы файлы открывались/сохранялись &НаКлиенте c отправкой/получением &НаСервере
Есть ли может быть ссылка какая-нибудь, или ключевые слова по которым гуглить? Я бы почитал, как правильно, и 1с-нику отправил ЦУ переделать обработки

(2)
Вы наверное не поняли, что я имею ввиду. Перефразируя ваш пример - вы с хрома на андроиде зашли в 1с, нажали "загрузить файл", указали путь, и вдруг по этому пути будет пытаться прочитать файл какой-то USR1CV8 на каком-то далёком сервере.
4 nanoflooder
 
26.08.20
11:28
(3) Полагаю, что вот это https://zdst.net/kak-v-1s-peredat-fajl-s-klienta-na-server-s-sohraneniem-na-servere/ - то, что нужно, верно?
5 acht
 
26.08.20
11:39
(3) Очень хорошо понял.
1) Какой пользователь ожидается к использованию для доступа к файлу в сценарии хрома с андроида. Вместо так ненавидимого вами USR1CV8?
2) Пользователь чего
6 acht
 
26.08.20
11:41
(3) > Я бы почитал, как правильно, и 1с-нику отправил ЦУ переделать обработки

Я бы на месте 1Сника свернул бы подобный ЦУ (полученные методом гугления руководителя, не владеющего темой) в трубочку, и...
7 Garykom
 
гуру
26.08.20
11:58
(4) угу
8 Garykom
 
гуру
26.08.20
11:58
(4) точнее сейчас все слегка сложнее с отказом от модальности и синхронности
9 fisher
 
26.08.20
12:17
(1) +1
(0) Программист просто упростил себе работу думая что оптимизировал процесс или изначально задача была ему поставлена в неполном виде. Ибо так как обрабатывать файл эффективно на сервере а сервер в той же сетке и домене, то он прямо с сервера файло и тянет (ессно под серверной учеткой). Ибо если тянуть с клиента и потом уже передавать на сервер для обработки - это дополнительный шаг, который выглядит лишним. Так часто делают и я бы даже не сказал, что это большая дыра в безопасности. Потому что если на уровне 1С права разрулены нормально, то кто попало как попало от имени серверной учетки доступ на шары получить не сможет. Это контролируется разработчиком и администратором 1С. Права на запуск внешних обработок пользователям обычно не выдают, а на остальное - контроль правами 1С.
Но если требования к безопасности повышенные, то лишний контур ессно не помешает. Тогда придется через клиента файл на сервер передавать для обработки.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн