AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.02.2008, 15:38   #1  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
? документооборот и доступ к файлам
Цитирую задачу (прислано заказчиком):

Описание текущей ситуации
- Сейчас каждый пользователь, имеющий право работать с документооборотом и файлами документооборота должен иметь доступ к файловому хранилищу \\server\doc.

Но в этом хранилище сохраняются все файлы системы, всех модулей. Это не безопасно по нескольким причинам.

Во первых, каждый пользователь имеет доступ ко всем файлам, может скопировать любой из них. А там все заявки клиентов, письма, приказы, в том числе конфинденциальные. В итоге - опасность утечки информации.

Во вторых - опасность случайного удаления или правки документа,
вирусного заражения и т.п.

Что хотелось бы сделать -
Закрыть доступ пользователям на эту папку, и реализовать размещение файлов в хранилище и чтения из него средствами AOS.

Чтобы пользователь мог увидеть и получить доступ только к тем файлам, которые привязаны к записям таблиц открытому ему (пользователю) функционалу.

Конкретного способа решения проблемы пока не придумал.

Есть варианты
- При размещении файл копируется клиентом в некую промежуточную папку, открытую для всех в сети. Далее этот файл "подхватывает" АОС, размещает в своем файловом хранилище стандартной процедурой.

Для чтения файла происходит обратный процесс.
Тут возможен вариант - читать файл средствами Internet explorer, открыв "виртуальную" папку в сети


Возможны и другие варианты. Может кто то уже решал данную проблему...
(Ax 3.0 sp3)
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Старый 01.02.2008, 17:22   #2  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Это, конечно, полумеры, но на всякий случай.

Для каждого типа документа можно указать разный каталог архива. С разными правами. Соответственно для каждого секретного вида документов отдельный тип документа настроить. Каталоги можно сделать "невидимыми" (приписать в конце имени $), чтобы меньше вредителей туда могло добраться.
__________________
С уважением,
glibs®
Старый 01.02.2008, 17:33   #3  
twilight is offline
twilight
MCTS
MCBMSS
 
881 / 237 (9) ++++++
Регистрация: 17.10.2004
Адрес: Королёв
А почему бы просто не хранить документы в базе?
Старый 01.02.2008, 17:37   #4  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
Цитата:
Сообщение от glibs Посмотреть сообщение
Это, конечно, полумеры, но на всякий случай.

Для каждого типа документа можно указать разный каталог архива. С разными правами. Соответственно для каждого секретного вида документов отдельный тип документа настроить. Каталоги можно сделать "невидимыми" (приписать в конце имени $), чтобы меньше вредителей туда могло добраться.
это все конечно хорошо, разбить по типу не получиться т.к. основная масса это .doc и .tif файлы, если помещать в разные папки по "секретности" то нужно будет тогда какимто образом заставить пользователя указывать это уровень секретности для каждого документа, а это само собой они делать через какоето время перестанут

есть ещё вариант программно какимто образом устанавливать права в домене на файлы в зависимости от уровня доступа пользователей (у нас храниться в отдельной табличке для каждой записи в документообороте) в аксапте
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Старый 01.02.2008, 17:38   #5  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
Цитата:
Сообщение от twilight Посмотреть сообщение
А почему бы просто не хранить документы в базе?
их достаточно много > 50гб
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Старый 01.02.2008, 17:49   #6  
twilight is offline
twilight
MCTS
MCBMSS
 
881 / 237 (9) ++++++
Регистрация: 17.10.2004
Адрес: Королёв
Цитата:
Сообщение от ivas Посмотреть сообщение
их достаточно много > 50гб
А разве это влияет на производительность?
Почему бы не настроить хранение таблиц документооборота на отдельном сервере?
Старый 01.02.2008, 17:52   #7  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Sorry за офф-топик:

Цитата:
Сообщение от ivas
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Насколько я знаю, должно быть
aLL woRk aNd nO PLAY MAKes jAck a dULL Boy
Старый 01.02.2008, 17:56   #8  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
Цитата:
Сообщение от twilight Посмотреть сообщение
А разве это влияет на производительность?
Почему бы не настроить хранение таблиц документооборота на отдельном сервере?
мысль интересная надо её подумать
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Старый 01.02.2008, 17:57   #9  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Sorry за офф-топик:

Насколько я знаю, должно быть
aLL woRk aNd nO PLAY MAKes jAck a dULL Boy
мне первый вариант больше нравиться
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Старый 03.02.2008, 06:11   #10  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Цитата:
Сообщение от twilight
...
А почему бы просто не хранить документы в базе?
...
А разве это влияет на производительность?
...
Вопрос в количестве документов и количестве обращений к ним. А также в том, читаются они в основном или модифицируются.

Есть еще хороший вопрос про управление конфликтами на уровне доступа к файлам. И аспекты администрирования.

С т.з. производительности влияет. Это бесспорно. Вопрос только насколько существенно (ощутимо).

Если файлов мало или к ним редко обращаются, то я бы не ожидал ощутимого влияния от хранения файлов в БД на производительность работы сервера БД.

Даже если файлы хранятся большие, то таблицу с файлами (DocuValue) можно хранить на отдельном дисковом массиве, затолкав ее в отдельную файловую группу*, которую в свою очередь можно затолкать в отдельный физический файл, который можно хранить на отдельном дисковом массиве. Т.о. влияние хранения документов на "раздутие" БД, дефрагментацию файлов данных и скорость ввода-вывода на дисковом массиве, где хранятся основные данные, можно нивелировать.

Работа с документами врядли ощутимо нагрузит процессор сервера БД.

Работа с документами при интенсивной работе с большими по размеру файлами достаточно ощутимо загрузит сетевой интерфейс на сервере БД.

Работа с документами при интенсивной работе с большими по размеру файлами отнимет память на сервере БД под выполнение задач ввода-вывода. Затрудняюсь оценить насколько много. Попробую уточнить у специалистов. Или они сами тут напишут. Знаю точно, что в файловых серверах много памяти не бывает. Думаю, это не спроста.

Последнее важно в связи с тем, то сервер БД сложно масштабировать.

Если вы что-то понимаете в задачах и процессах администрирования сервера БД, то... даже при условии хранения файлов на отдельном дисковом массиве БД (как единая сущность) будет пухнуть. А значит будет пухнуть архив БД. А это уже увеличит время на сервисные процедуры с БД (архивирование). Того же стоит ожидать и в случае, если БД будет восстанавливаться из архива при необходимости такого восстановления. А время — деньги, как известно.

Даже если учесть, что архивировать можно отдельные файлы данных, то процесс администрирования БД усложняется. И есть еще файл журнала транзакций БД. Насколько я знаю, его порезать на файловые группы не получится. А значит при вставке файла он будет расти, причем на основном массиве данных. И потом он будет архивироваться. А в случае сбоя — восстанавливаться. Но в любом случае вставка файла будет занимать ресурсы сервера БД.

А если, например, сервер БД сконфигурирован в режиме зеркалирования (горячий stand by), то пошло-поехало.

И наконец, стоит учитывать различия в функциональности документооборота, которые обусловлены тем или иным способом хранения файлов (скорее всего, это не полный список):
- При хранении файлов в БД файлы всегда передаются по сети. Если же файлы хранить на файловом сервере, то на удаленных инсталляциях есть возможность организации локальных файловых хранилищ для определенных видов файлов с доступом в рамках высокоскоростных локальных каналов.
- Мне пока на тестовой базе не удалось воспроизвести стабильную работу в режиме открыл файл, отредактировал, сохранил при работе с сохранением файлов в БД (я продолжу исследование данного вопроса и отпишу через некоторое время). Процесс сохранения измененных файлов при работе с файлами, которые хранятся в БД, не тривиален. В случае же если файлы хранятся на файловом сервере, то таких проблем не возникает. Если же файлы просто класть в БД... ну т.е. поправил — сохранил уже новую версию, то БД будет пухнуть. Хотя вариант имеет некотрые плюсы (версионность изменения файла хранится).
- Контроль совместный доступ к файлу. При хранении файла на файловом сервере совместным доступом будет управлять ОС файлового сервера. При открытии хранящегося в БД файла контроль совместного доступа не осуществляется.
Цитата:
Сообщение от twilight
...
Почему бы не настроить хранение таблиц документооборота на отдельном сервере?
...
А разве Аксапта поддерживает конфигурации, в которых есть несколько БД, расположенных на разных серверах?

Или что вы имеете в виду?

В общем, думайте сами, решайте сами, как говорилось... по-моему, в песне какой-то.

_____________
* Здесь и далее я буду оперировать терминологией и функциональными возможностями MS SQL. Просто я с ним работаю и в определенной степени его знаю. С Oracle я же наоборот практически не знаком. Однако я склонен считать, что все, что я написал, одинаково справедливо и для Oracle. Возможно, эксперты Oracle меня поправят, если это не так.
__________________
С уважением,
glibs®
Старый 04.02.2008, 15:22   #11  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
решили поступить так:
клиент будет "думать" что работает с БД, а AOS с файлами и передавать их в бинарном виде на клиента
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Старый 04.02.2008, 15:26   #12  
twilight is offline
twilight
MCTS
MCBMSS
 
881 / 237 (9) ++++++
Регистрация: 17.10.2004
Адрес: Королёв
Цитата:
Сообщение от glibs Посмотреть сообщение
Если вы что-то понимаете в задачах и процессах администрирования сервера БД, то... даже при условии хранения файлов на отдельном дисковом массиве БД (как единая сущность) будет пухнуть. А значит будет пухнуть архив БД. А это уже увеличит время на сервисные процедуры с БД (архивирование). Того же стоит ожидать и в случае, если БД будет восстанавливаться из архива при необходимости такого восстановления. А время — деньги, как известно.
С другой стороны, не нужно заниматься отдельно вопросом резервного копирования документов, они будут бэкапиться вместе со всей базой


Цитата:
Сообщение от glibs Посмотреть сообщение
- Мне пока на тестовой базе не удалось воспроизвести стабильную работу в режиме открыл файл, отредактировал, сохранил при работе с сохранением файлов в БД (я продолжу исследование данного вопроса и отпишу через некоторое время). Процесс сохранения измененных файлов при работе с файлами, которые хранятся в БД, не тривиален.
Очень просто. Берете файл из базы, сохраняете локально, изменяете. По окончанию изменений добавляете в базу. Старый файл можно удалить.

Цитата:
Сообщение от glibs Посмотреть сообщение
- Контроль совместный доступ к файлу. При хранении файла на файловом сервере совместным доступом будет управлять ОС файлового сервера. При открытии хранящегося в БД файла контроль совместного доступа не осуществляется.
Да, с совместным доступом тяжело. С другой стороны, он не так уж часто требуется.


Цитата:
Сообщение от glibs Посмотреть сообщение
А разве Аксапта поддерживает конфигурации, в которых есть несколько БД, расположенных на разных серверах?

Или что вы имеете в виду?
Под сервером я подразумевал физический сервер. А хранение организовывать средствами СУБД, как вы и описали в своем сообщении.

А насчет производительности - пока не попробуешь, не узнаешь.
Старый 04.02.2008, 15:26   #13  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
2 ivas

И "модифицировал-сохранил-все вернулось в хранилище" тоже будет работать?
__________________
С уважением,
glibs®
Старый 04.02.2008, 15:31   #14  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Цитата:
Сообщение от twilight
...
Очень просто. Берете файл из базы, сохраняете локально, изменяете. По окончанию изменений добавляете в базу. Старый файл можно удалить.
...
Там есть и штатный режим. Но в таблице хранятся пути какие-то во временный каталог. У меня глючило. Я еще не понял толи не разобрался чего, толи косяк. Через некоторое время планирую разобраться. Тогда отпишу.
__________________
С уважением,
glibs®
Старый 05.02.2008, 11:18   #15  
aidsua is offline
aidsua
AX*****
Аватар для aidsua
 
106 / 40 (2) +++
Регистрация: 28.09.2005
Адрес: 2:463/Kyiv
Цитата:
Сообщение от glibs Посмотреть сообщение
Это, конечно, полумеры, но на всякий случай.

Для каждого типа документа можно указать разный каталог архива. С разными правами. Соответственно для каждого секретного вида документов отдельный тип документа настроить. Каталоги можно сделать "невидимыми" (приписать в конце имени $), чтобы меньше вредителей туда могло добраться.
Любой чайник спокойно видит невидимые каталоги C$, D$, Admin$.. Более продвинутые пользуют для подобных целей Far Manager или что-то подобное..

Оптимальный вариант закрыть доступ на уровне домена к ресурсам.. имхо.
__________________
О, как беден, как груб наш русский язык! [c] А.С.Пушкин
Старый 05.02.2008, 12:10   #16  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
На папку устанавливаем права для всех пользователей на Create и Modify (особые права для определенных групп назначаем сразу), для Owner устанавливаем все права. Мне кажется, такая схема должна работать. Только не давайте права на чтение на директорию, иначе все буду видеть список и смогут читать "чужие" файлы.
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.
Старый 05.02.2008, 12:53   #17  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
Цитата:
Сообщение от KiselevSA Посмотреть сообщение
На папку устанавливаем права для всех пользователей на Create и Modify (особые права для определенных групп назначаем сразу), для Owner устанавливаем все права. Мне кажется, такая схема должна работать. Только не давайте права на чтение на директорию, иначе все буду видеть список и смогут читать "чужие" файлы.
тоже не вариант пользователь генерит батник вида:
copy \\server\doc\doc00001.doc c:\doc\doc00001.doc
copy \\server\doc\doc00002.doc c:\doc\doc00002.doc
...
copy \\server\doc\doc99999.doc c:\doc\doc99999.doc

и все содержимое у него в кармане
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Старый 05.02.2008, 13:17   #18  
twilight is offline
twilight
MCTS
MCBMSS
 
881 / 237 (9) ++++++
Регистрация: 17.10.2004
Адрес: Королёв
Цитата:
Сообщение от ivas Посмотреть сообщение
тоже не вариант пользователь генерит батник вида:
copy \\server\doc\doc00001.doc c:\doc\doc00001.doc
copy \\server\doc\doc00002.doc c:\doc\doc00002.doc
...
copy \\server\doc\doc99999.doc c:\doc\doc99999.doc

и все содержимое у него в кармане
умные у вас пользователи, если они батники умеют писать
Старый 05.02.2008, 13:29   #19  
ivas is offline
ivas
Участник
Аватар для ivas
 
252 / 68 (3) ++++
Регистрация: 22.12.2005
Цитата:
Сообщение от twilight Посмотреть сообщение
умные у вас пользователи, если они батники умеют писать
не все конечно , однако достаточно одного такого чтобы информация попала куда ненадо тут также встает вопрос с админами домена они в любом случае будут иметь доступ ко всем файлам можно конечно хранить их на отдельном ресурсе который не будет в домене, но кто его админить будет не фин директор же
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy
Старый 05.02.2008, 14:35   #20  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
Цитата:
Сообщение от ivas Посмотреть сообщение
не все конечно , однако достаточно одного такого чтобы информация попала куда ненадо тут также встает вопрос с админами домена они в любом случае будут иметь доступ ко всем файлам можно конечно хранить их на отдельном ресурсе который не будет в домене, но кто его админить будет не фин директор же
Админы могут и не иметь права на файлы (только не убейте права у Backup Operators). А вот аудит изменения владельца файла для изменения прав на файл администраторами домена лучше на такую папку включить
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.
Теги
ax2009, ax3.0, документооборот, как правильно, права доступа

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Периодически пропадает доступ к Системе у удаленных пользователей andy_555 DAX: Администрирование 4 04.03.2009 15:02
Как дать доступ к Аксапте внешним пользователям? mazzy DAX: Администрирование 43 29.08.2008 15:46
Запущен терминальный доступ к демонстрационному порталу АХ4 Vadim Korepin DAX: Функционал 34 31.01.2007 15:59
Разрешение на доступ к базе данных nicko DAX: Администрирование 3 18.05.2004 18:49
Кто нибудь пытался релизовать ДОКУМЕНТООБОРОТ в Аксапта? edd DAX: Функционал 10 21.07.2003 15:48

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 19:21.