Примечание. Возможность настроить интеграцию с файловым хранилищем S3 доступна для поддерживающих данный функционал версий BPMSoft.
Для данного типа хранилища файлов Полнотекстовый поиск недоступен.
Файловое хранилище S3 — это облачный REST-сервис хранения объектов. Позволяет хранить данные в исходном формате без ограничений по масштабированию.
На заметку. BPMsoft позволяет подключить только одно хранилище S3.
Для настройки интеграции с файловым хранилищем S3 для cloud приложений обратитесь в службу поддержки. Настройка интеграции с файловым хранилищем S3 для on-site приложений выполняется администратором приложения по текущей инструкции.
В общем случае настройка интеграции с хранилищем S3 состоит из следующих шагов:
- Настройки на стороне S3.
- Настройки на стороне BPMsoft.
Настройки на стороне S3
- Создайте аккаунт в сервисе хранения данных, который поддерживает протокол S3.
- Сгенерируйте параметр “ServiceUrl”, который позволит BPMsoft получить доступ к хранилищу S3.
- Сгенерируйте параметры “AccessKey” и “SecretKey”, которые позволят выполнять авторизованный запрос к хранилищу S3.
- Создайте корзины (buckets, бакеты) “ObjectBucketName” и “RecycleBucketName” с уникальными именами.
- “ObjectBucketName” — корзина для хранения файлов. Файлы хранятся неограниченное количество времени.
- “RecycleBucketName” — корзина для хранения файлов, которые были удалены и хранятся для резервных копий базы данных. В основе работы с корзинами лежит принцип мягкого удаления: после удаления файла из корзины “ObjectBucketName” файл переносится в корзину “RecycleBucketName”. Время хранения файлов в корзине определяется настройками корзины определенного сервиса. Например, файл может храниться в корзине 90 дней, затем автоматически удаляться. В BPMsoft время хранения удаленных файлов равно времени хранения резервных копий базы данных. Подробнее читайте в официальной документации вендора (на английском языке).
Настройки на стороне BPMsoft
Чтобы новые файлы, которые будут загружены на детали [ Файлы и ссылки ] или прикреплены к письмам, сохранялись в S3, а не в базе данных, необходимо выполнить настройку на стороне BPMsoft:
1) Настройте подключение к хранилищу S3. Для этого в параметр connectionString конфигурационного файла ConnectionStrings.config добавьте строку с параметрами подключения к хранилищу S3:
<connectionStrings> ... <add name="s3Connection" connectionString="ServiceUrl=SOME_SERVICE_URL; AccessKey=SOME_ACCESS_KEY; SecretKey=SOME_SECRET_KEY; ObjectBucketName=SOME_OBJECT_BUCKET_NAME; RecycleBucketName=SOME_RECYCLE_BUCKET_NAME;" /> </connectionStrings>
- ServiceUrl — конечная точка для получения доступа к хранилищу S3.
- AccessKey — ключ доступа к аккаунту для выполнения авторизованного запроса к хранилищу S3.
- SecretKey — ключ к аккаунту для выполнения авторизованного запроса к хранилищу S3.
- ObjectBucketName — имя контейнера для хранения файлов.
- RecycleBucketName — имя контейнера для хранения файлов, которые были удалены и хранятся для резервных копий базы данных.
2) Чтобы при удалении записей разделов связанные файлы корректно переносились в “RecycleBucketName”, перейдите на страницу дополнительной функциональности и включите функциональность “UseBaseEntityFileDeleteListener”.
3) Установите хранилище S3 в качестве активного хранилища файлов. Для этого откройте системную настройку “Активное хранилище содержимого файлов” (код ActiveFileContentStorage). В поле [ Значение по умолчанию ] выберите “Хранилище S3”.
В результате все файлы, которые добавлены в BPMsoft после подключения S3, будут загружены во внешнее хранилище. Файлы, которые были добавлены в приложение ранее, останутся в прежнем хранилище.