Skip to content

Commit e34f67d

Browse files
Merge pull request #9849 from strategicalliances/strategicalliances-azure-blob-storage-v1
Merging into my own branch so I can edit it more easily.
2 parents 6ff1d53 + d3c3c91 commit e34f67d

File tree

1 file changed

+110
-0
lines changed

1 file changed

+110
-0
lines changed
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
---
2+
title: "Azure Blob Storage"
3+
url: /appstore/modules/azure/azure-blob-storage/
4+
description: "Describes the configuration and usage of the Azure Blob Storage connector, which is available in the Mendix Marketplace. Azure Blob Storage is an object storage service offering industry-leading scalability, data availability, security, and performance."
5+
weight: 20
6+
aliases:
7+
- /appstore/connectors/azure-blob-storage-connector/
8+
- /appstore/connectors/azure/azure-blob-storage/
9+
#If moving or renaming this doc file, implement a temporary redirect and let the respective team know they should update the URL in the product. See Mapping to Products for more details.
10+
---
11+
12+
## Introduction
13+
14+
The [Azure Blob Storage](https://marketplace.mendix.com/link/component/<insert when published>) connector enables you to connect your app to [Azure Blob Storage](https://azure.microsoft.com/en-us/products/storage/blobs) and easily store objects.
15+
16+
### Typical Use Cases
17+
18+
The Azure Blob Storage service is an object storage service offering industry-leading scalability, data availability, security, and performance. Customers of all sizes and industries can store and protect any amount of data for virtually any use case. With cost-effective storage types and easy-to-use management features, you can optimize costs, organize data, and configure fine-tuned access controls to meet specific business, organizational, and compliance requirements. Some typical use cases of Azure Blob Storage are:
19+
20+
* Back up and restore critical data - Meet Recovery Time Objectives (RTO), Recovery Point Objectives (RPO), and compliance requirements with Bolb storage's robust replication features.
21+
* Archive data at the lowest cost - Move data archives to the Azure Blob Storage to eliminate operational complexities, and gain new insights.
22+
23+
### Prerequisites {#prerequisites}
24+
25+
The Azure Blob Storage Connector requires Mendix Studio Pro version 9.24.2 or above.
26+
27+
### Licensing and Cost
28+
29+
This connector is available as a free download from the Mendix Marketplace, but the Azure service to which it connects may incur a usage cost. For more information, refer to Azure documentation.
30+
31+
Depending on your use case, your deployment environment, and the type of app that you want to build, you may also need a license for your Mendix app. For more information, refer to [Licensing Apps](/developerportal/deploy/licensing-apps-outside-mxcloud/).
32+
33+
## Installation
34+
35+
Follow the instructions in [How to Use Marketplace Content](/appstore/use-content/) to import the Azure Blob Storage connector into your app.
36+
37+
## Configuration
38+
39+
After you install the connector, you can find it in the **App Explorer**, in the **AzureBlobStorageConnector** section. The connector provides a domain model and operations that you can use to connect your app to Azure Blob Storage. Each operation can be implemented using it in a microflow or nanoflow.
40+
41+
### Configuring Authentication {#authentication}
42+
43+
To interact with Azure Blob Storage, authentication can be performed using either a Shared Access Signature (SAS) or an Azure Entra ID Access Token.
44+
45+
#### SAS authorization
46+
A Shared Access Signature (SAS) provides secure, delegated access to resources in your storage account. Follow these steps:
47+
48+
1. Have your administrator generate a SAS for the target container or blob
49+
2. Create a `SASCredentials` object and populate its `SASToken` attribute
50+
3. Pass the `SASCredentials` object to the `AbstractCredentials` parameter in your operation microflow
51+
52+
#### Azure Entra ID Access Token
53+
For Azure Entra ID authentication:
54+
55+
1. Configure Single Sign-On (SSO) using the `OIDC SSO` marketplace module
56+
2. Utilize the `GetCurrentToken` microflow to obtain the required access token
57+
3. Create an `EntraCredentials` object and set its `BearerToken` attribute
58+
4. Supply the `EntraCredentials` object to the `AbstractCredentials` parameter in your operation microflow
59+
60+
### Configuring a Microflow for an AWS Service
61+
62+
You can implement the operations of the connector by using them in microflows. For example, to upload a Blob to the Azure Blob Storage, implement the **PUT_v1_Azure_PutBlob** operation by performing the following steps:
63+
64+
1. In the **App Explorer**, right-click on the name of your module, and then click **Add microflow**.
65+
2. Enter a name for your microflow, for example, *ACT_PutBlob*, and then click **OK**.
66+
3. In the **App Explorer**, in the **AzureBlobStorageConnector** section, find the **PUT_v1_Azure_PutBlob** operation microflow.
67+
4. Create a **SASCredentials** or **EntrCredentials** object and add the SAS or access token to the **SASToken** or **BearerToken** attribute.
68+
5. Drag the **PUT_v1_Azure_PutBlob** microflow in to your microflow.
69+
6. Double-click the **PUT_v1_Azure_PutBlob** operation to configure the required parameters.
70+
71+
For the `PUT_v1_Azure_PutBlob` operation, retrieve the `System.FileDocument` you want to store and provide a configured `SASCredentials` or `EntrCredentials` object. You must then create a `PutBlobRequest` object in your microflow as the last parameter. This entity requires the following parameters:
72+
73+
| Parameter | Description | Required |
74+
|-----------|-------------|----------|
75+
| `StorageAccount` | Storage account name you want to perform Blob storage operations on | Yes |
76+
| `VersionAPI` | API version for the Azure Storage service (e.g., '2021-04-01') | Yes |
77+
| `BlobName` | Desired name for the blob in storage | Yes |
78+
| `ContainerName` | Target container for blob storage | Yes |
79+
| `BlobType` | Type of blob (currently supports BlockBlob only) | Yes |
80+
81+
The following parameters are optional:
82+
83+
| Parameter | Description | Default |
84+
|-----------|-------------|----------|
85+
| `ContentType` | MIME content type specification | application/octet-stream |
86+
| `StorageType` | Storage tier configuration | Varies by blob type |
87+
88+
9. Configure a method to trigger the `ACT_PutBlob` microflow.
89+
For example, you can call the microflow with a custom button on a page in your app. For an example of how this can be implemented, see [Creating a Custom Save Button with a Microflow](/refguide/creating-a-custom-save-button/).
90+
91+
## Technical Reference {#technical-reference}
92+
93+
The module includes technical reference documentation for the available entities, enumerations, activities, and other items that you can use in your application. You can view the information about each object in context by using the **Documentation** pane in Studio Pro.
94+
95+
The **Documentation** pane displays the documentation for the currently selected element. To view it, perform the following steps:
96+
97+
1. In the [View menu](/refguide/view-menu/) of Studio Pro, select **Documentation**.
98+
2. Click on the element for which you want to view the documentation.
99+
100+
{{< figure src="/attachments/appstore/platform-supported-content/modules/technical-reference/doc-pane.png" class="no-border" >}}
101+
102+
For additional reference, the available activities are listed below.
103+
104+
### Operations
105+
106+
[Operations](/refguide/Operations/) define the operations that are executed in a microflow or a nanoflow.
107+
108+
The Azure Blob Storage connector contains the following activities:
109+
110+
* `PutBlob` - Allows you to upload, as a Blob, a file of any type, to Azure Blob Storage. For more information, see [Put Blob to Azure Blob Storage](https://learn.microsoft.com/en-us/rest/api/storageservices/put-blob).

0 commit comments

Comments
 (0)