Skip to main content

Azure Blob Storage Connector

note

For information about setting up and configuring a Blob Storage in Azure, see Azure product documentation for Blob Storage.

This package provides functionality to send and download files (blobs) to and from an Azure Blob Storage. The configuration is made on a Partner in iCore, divided into two different Partner attribute groups.

Package contents

Partner attribute groups

Attribute group nameDescription
_Azure_Send StorageBlobDefines the settings for sending files to a Blob Storage in Azure.
_Azure_Receive StorageBlobDefines the setting for downloading files (blobs) from a Blob Storage in Azure.

Parameters and attributes

This section contains reference information about the parameters and attributes used in the Azure Blob Storage Connector package. The template Partner is called _Azure_BlobStorage Template and has the following attribute groups:

_Azure_Send StorageBlob

Attribute nameDefault valueDescription
Authentication configurationConnectionStringConnectionString, ServiceURIBlobStorage or ServiceURIBlobContainer. Specifies how connection and authentication with the Blob Storage is established.
Blob container nameThe name of the blob container to which the blob will be uploaded.
ConnectionStringThe connection string to the Blob Storage, including account key for authentication. Mandatory if Authentication configuration is set to ConnectionString. See also note below.
Date FormatyyyyMMdd hhmmss_fffffFormat on datetime to use in variable %Date%
Destination FileName%NodeProp:Name% %Date%.txtThe name of the blob once it ihas been uploaded.
OverwriteNIndicates whether the blob is overwritten if a blob with the same name already exists. Y / N.
Service URI for BlobStorageURI referencing the blob service with access to the whole Blob Storage. Mandatory if Authentication configuration is set to ServiceURIBlobStorage. See also note below.
Service URI for BlobContainerURI referencing the blob service with access to a specific Blob Container. Mandatory if Authentication configuration is set to ServiceURIBlobContainer. See also note below.

_Azure_Receive StorageBlob

Attribute nameDefault valueDescription
Authentication configurationConnectionStringConnectionString, ServiceURIBlobStorage or ServiceURIBlobContainer. Specifies how connection and authentication with the Blob Storage is established.
ConnectionStringThe connection string to the Blob Storage, including account key for authentication. Mandatory if Authentication configuration is set to ConnectionString. See also note below.
Create event on outnodeYCreate event on outnode. Y/N
Delete files after downloadYOverrides the Move file after download setting. Y / N
Event on created NodeName of the Event created Node. Mandatory if Create event on outnode is set to Y.
Move file after downloadNSpecifies if the blob be moved in the storage after it has been fetched. Only applies within the same container and only if Delete files after download is set to N. Y / N.
Move file target locationdownloaded/Path to where the downloaded files will be moved. Only applies if Move files after download is set to Y.
Node TypenoneNode Type to set on created Node.
Node Type VersionnoneNode Type Version to set on created Node.
PartnerPartner identity to set on the created Node.
RecursiveNFetch files (blobs) recursivly in source folder, Y / N.
Service URI for BlobStorageURI referencing the blob service with access to the whole Blob Storage. Mandatory if Authentication configuration is set to ServiceURIBlobStorage. See also note below.
Service URI for BlobContainerURI referencing the blob service with access to a specific Blob Container. Mandatory if Authentication configuration is set to ServiceURIBlobContainer. See also note below.
Source blob container nameThe name of the blob container to download files (blobs) from.
Source file filter*.*Source file filter
Source folderFolder in the Source blob container to fetch files (blobs) from.
Target blob container nameThe name of the blob container to which files (blobs) will be moved after download. If unspecified, the container used for fetching files will be used. Only applicable if Move files after download is set to 'Y'.
note

The connection string must be on the following format: DefaultEndpointsProtocol=defaultEndpointsProtocol;AccountName=accountName;AccountKey=AccountKey;EndpointSuffix=EndpointSuffix

note

The service URI must be on the following format: https://{account_name}.blob.core.windows.net/?{shared_access_token}

Workflows

The Blob Storage client can be managed in Workflows or WebAPIs. The package contains a template for Workflows. It requires the name of a configured Partner is passed as Run, Init or Event parameter.

_Azure_BlobStorage Send

This template Workflow uploads files or file content to the Blob Storage. It executes when the Event _Azure_Send BlobStorage is fired on a Node in iCIS. The Node content will then be sent to the Blob Storage.

_Azure_BlobStorage Receive

This template Workflow runs a client that fetches files from the Blob Storage. It executes when the Event _Azure_Fetch BlobStorage is fired. For each message the client receives, a Node is created in iCIS.

Setting up the package

  1. Export your iCore system to a backup file.
  2. Import the Azure Connector Blob Storage package.
  3. Compile Workflows _Azure_BlobStorage Receive and _Azure_BlobStorage Send.
  4. Create a new Partner where _Azure_BlobStorage Template is used as template Partner.
  5. Edit the settings on the newly created Partner.
    • To enable uploading of files to an Azure Blob Storage, configure the settings under _Azure_Send StorageBlob attribute group.
    • To enable downloading of files from an Azure Blob Storage, configure the settings under _Azure_Receive StorageBlob attribute group.
  6. Restart the iCore system.

Running the connector

Once you have set up the package, you can start uploading / downloading files to / from an Azure Blob Storage. Uploads and downloads are triggered by iCore events.

Uploading files to Azure Blob Storage

Uploading of files is triggered when the Event _Azure_Send BlobStorage is fired on a Node in iCore. The Node content will then be uploaded to the Blob Storage. The identity of the Partner that holds the configuration for uploading files to Azure Blob Storage should be passed as Event parameter.

Downloading files from Azure Blob Storage

Downloading of files is triggered when the Event _Azure_Fetch BlobStorage is fired in iCore. The identity of the Partner that holds the configuration for downloading the file from Azure Blob Storage should be passed on as Event parameter.

note

For both upload and download, it is possible to pass the Partner identity as Run parameter instead of as Event parameter.

Change log

VersionDateAreaDescription
1.12024-11-29_Azure_Receive StorageBlobFixes issue with blob copy after download.

See Also

Azure Service Bus
Azure Event hub