Настроить интеграцию с файловым хранилищем Azure Blob

Продукты
Все продукты

Возможность настроить интеграцию с файловым хранилищем Azure Blob доступна в Creatio версии 8.0.2 и выше.

Файловое хранилище Azure Blob — это облачное решение, которое разработано компанией Microsoft. Подробнее читайте в официальной документации вендора. Использование файлового хранилища Azure Blob позволяет уменьшить размер базы данных. Данные хранятся в виде BLOB-объектов. Подробнее: Википедия.

На заметку. Creatio позволяет подключить только одно хранилище Azure Blob.

Для настройки интеграции с файловым хранилищем Azure Blob для cloud приложений обратитесь в службу поддержки. Настройка интеграции с файловым хранилищем Azure Blob для on-site приложений выполняется администратором приложения по текущей инструкции.

В общем случае настройка интеграции с хранилищем Azure Blob состоит из следующих шагов:

  1. Настройки на стороне Azure Blob. Подробнее >>>
  2. Настройки на стороне Creatio. Подробнее >>>

Настройки на стороне Azure Blob 

  1. Создайте аккаунт на портале Microsoft Azure. Подробнее читайте в официальной документации вендора.
  2. Сгенерируйте параметр “Blob Service endpoint”, который позволит Creatio получить доступ к хранилищу Azure Blob.
  3. Сгенерируйте параметры “AccountName” и “AccountKey”, которые позволят выполнять авторизованный запрос к хранилищу Azure Blob. Подробнее читайте в официальной документации вендора.
  4. Создайте контейнеры “ObjectContainerName” и “RecycleContainerName” с уникальными именами.

    • “ObjectContainerName” — контейнер для хранения файлов. Файлы хранятся неограниченное количество времени.
    • “RecycleContainerName” — контейнер для хранения файлов, которые были удалены и хранятся для резервных копий базы данных. В основе работы с контейнерами лежит принцип мягкого удаления: после удаления файла из контейнера “ObjectContainerName” файл переносится в контейнер “RecycleContainerName”. Время хранения файлов в контейнере определяется настройками контейнера определенного сервиса. Например, файл может храниться в контейнере 90 дней, затем автоматически удаляться. В Creatio время хранения удаленных файлов равно времени хранения резервных копий базы данных.

    Подробнее читайте в официальной документации вендора.

Настройки на стороне Creatio 

Чтобы новые файлы, которые будут загружены на детали Файлы и ссылки или прикреплены к письмам, сохранялись в Azure Blob, а не в базе данных, необходимо выполнить настройку на стороне Creatio:

  1. Настройте подключение к хранилищу Azure Blob. Для этого в параметр connectionString конфигурационного файла ConnectionStrings.config добавьте строку с параметрами подключения к хранилищу Azure Blob:

    <connectionStrings>
        ...
        <add name="azureConnection" connectionString="AccountName=SOME_ACCOUNT_NAME; AccountKey=SOME_ACCOUNT_KEY; BlobEndpoint=SOME_BLOB_ENDPOINT; ObjectContainerName=SOME_OBJECT_CONTAINER_NAME; RecycleContainerName=SOME_RECYCLE_CONTAINER_NAME;" />
    </connectionStrings>
    

    где

    • AccountName — имя аккаунта для выполнения авторизованного запроса к хранилищу Azure Blob.
    • AccountKey — ключ к аккаунту для выполнения авторизованного запроса к хранилищу Azure Blob.
    • BlobEndpoint — конечная точка для получения доступа к хранилищу Azure Blob. Значение параметра “Blob Service endpoint”, которое получено на предыдущем шаге.
    • ObjectContainerName — имя контейнера для хранения файлов.
    • RecycleContainerName — имя контейнера для хранения файлов, которые были удалены и хранятся для резервных копий базы данных.
  2. Чтобы при удалении записей разделов связанные файлы корректно переносились в “RecycleContainerName”, перейдите на страницу дополнительной функциональности и включите функциональность “UseBaseEntityFileDeleteListener”. Подробнее: Механизм Feature Toggle (документация для разработчика).

  3. Установите хранилище Azure Blob в качестве активного хранилища файлов. Для этого откройте системную настройку “Активное хранилище содержимого файлов” (код ActiveFileContentStorage). В поле Значение по умолчанию выберите “Хранилище Azure Blob”.

В результате все файлы, которые добавлены в Creatio после подключения Azure Blob, будут загружены во внешнее хранилище. Файлы, которые были добавлены в приложение ранее, останутся в прежнем хранилище.