General restrictions: Azure storage is not a file system, but an object storage. The folder is more like a prefix of the object name. That is why renaming folders is not supported. Folder moves are only possible through copy and deletion.

1. Azure File Share
#


CrushFTP supports Microsoft Azure Shares as a VFS item, it requires a Storage Account: https://learn.microsoft.com/en-us/azure/storage/common/storage-account-overview. About Azure file share: https://learn.microsoft.com/en-us/azure/storage/files/storage-how-to-create-file-share?tabs=azure-portal

The URL should look like (Replace the URL with your corresponding data!):

azure://STORAGE_ACCOUNT_NAME:ACCESSKEY@file.core.windows.net/SHARE_NAME/

You can find those on the Azure portal, under Storage Account. From the left-side menu select Access keys to reveal them.

attachments

Then paste them on the appropriate fields in CrushFTP.

attachments

When using “Browse…” in the Jobs interface, or plugin interfaces, the UI is slightly different:

There is an input field for the file service share: Share Name
attachments

2. Azure Blob Container
#


CrushFTP supports Azure Blobs(https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blobs-introduction) as VFS item, it requires a Storage Account: https://learn.microsoft.com/en-us/azure/storage/common/storage-account-overview.
Azure Blob Storage is not like a normal filesystem with folders and deeper levels you can go into.  It's more like S3 where a file’s name contains slashes, which simulate a folder structure but with many limitations when it comes to renaming and truly simulating a normal file system. Folder rename is not supported.

The URL should look like this (Replace the URL with your corresponding data!):
azure://STORAGE_ACCOUNT_NAME:ACCESSKEY@blob.core.windows.net/BLOB_CONTAINER_NAME/

attachments

Data Lake storage Gen2: More info on the official website: https://learn.microsoft.com/en-us/azure/storage/blobs/data-lake-storage-introduction.
Turn on the flag if the storage type is the data lake. It connects through Azure Blob Storage REST API https://learn.microsoft.com/en-us/rest/api/storageservices/blob-service-rest-api.
(This is not Azure Data Lake Storage Gen2 REST API: https://learn.microsoft.com/en-us/rest/api/storageservices/data-lake-storage-gen2)

When using “Browse…” in the Jobs interface, or plugin interfaces, the UI is slightly different:

To specify the blob container use the input field: Share Name
attachments

You need to select the blob type (append blob or block blobs - page blobs are not supported) specified when creating the blob on Azure.

3. SAS token
#


Azure also can delegate access with a shared access signature (SAS) https://learn.microsoft.com/en-us/azure/storage/common/storage-sas-overview.
In this case, the URL should look like:
azure://STORAGE_ACCOUNT_NAME:@blob.core.windows.net/BLOB_CONTAINER_NAME/

Or
azure://STORAGE_ACCOUNT_NAME:@file.core.windows.net/SHARE_NAME/


attachments

The password field should be empty and put the SAS token to the "Shared access signature token" input field.

attachments

4. Authorize access to blobs using Microsoft Entra ID
#


Azure Storage supports using Microsoft Entra ID to authorize requests to blob data. (see more info : https://learn.microsoft.com/en-us/azure/storage/blobs/authorize-access-azure-active-directory)

You will start at the Microsoft Azure portal:
https://azure.microsoft.com/en-us/features/azure-portal/

Application registration: Go to the App registrations and click on New registration:

attachments

Name it. Select the Microsoft account types. The redirect URL must end with "register_microsoft_graph_api/". Then click on register.

http://localhost:9090/register_microsoft_graph_api/

attachments

Under the redirect URL configuration enable the Access Token to be issued by the authorization endpoint:

attachments

Configure the API permissions:

attachments

attachments

On your Storage Account at Access Control (IAM) assign the role "Storage Account Contributor" and "Storage Blob Data Contributor" to the specified user.

Restriction: It only works with blob storage.

attachments

Access the user's VFS settings and configure the Refresh Token for the remote Azure connection. At User Delegation Settings click the "Get Refresh Token" button.

attachments


Client id : You can find it at Azure portal -> App Registration -> Overview:

attachments

Secret key: A new client secret also needs to be created. Go to the "Certificate & secrets" and generate a new secret key. Click on New client secret.

attachments

attachments

Sign in as the specified Microsoft user grant access, and obtain the refresh token.

attachments

!!!Provide the storage account name as the "User name" input field.

To get a newly created SAS token for your storage, you need to run the following job example: CrushTaskExample18

Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
png
AzureConfiguration.png 78.7 kB 3 05-Dec-2023 05:32 krivacsz
png
AzureConfiguration2.png 77.5 kB 3 05-Dec-2023 05:32 krivacsz
png
AzureConfiguration3.png 27.4 kB 3 05-Dec-2023 05:32 Sandor new UI elements
png
AzurePortalAccessKey.png 57.7 kB 2 05-Dec-2023 05:32 Sandor blurred more
png
SAS.png 97.0 kB 1 05-Dec-2023 05:32 Sandor
png
Screen Shot 2017-08-09 at 9.08... 113.4 kB 1 05-Dec-2023 05:32 krivacsz Azure configuration
png
azureRemoteItem.png 57.5 kB 2 05-Dec-2023 05:32 krivacsz
png
azureRemoteItem2.png 53.5 kB 2 05-Dec-2023 05:32 krivacsz
png
azureRemoteItem3.png 20.3 kB 2 05-Dec-2023 05:32 Sandor new UI elements
png
azure_VFS_SAS.png 26.4 kB 1 05-Dec-2023 05:32 Sandor
png
azure_access_control_roles.png 132.8 kB 1 07-Oct-2024 04:38 krivacsz
png
azure_api_permission_blob.png 130.2 kB 1 07-Oct-2024 04:17 krivacsz
png
azure_blob.png 74.0 kB 3 05-Dec-2023 05:32 krivacsz
png
azure_blob3.png 29.6 kB 4 05-Dec-2023 05:32 Sandor new UI elements
png
azure_blobRemoteItem.png 21.5 kB 4 05-Dec-2023 05:32 Sandor new UI elements
png
azure_refresh_token_form.png 48.4 kB 1 07-Oct-2024 04:50 krivacsz
png
azure_user_impersonation.png 152.5 kB 1 07-Oct-2024 04:17 krivacsz
png
user_delegation_settings.png 94.4 kB 2 07-Oct-2024 04:49 krivacsz
« This page (revision-132) was last changed on 07-Oct-2024 05:04 by krivacsz
G’day (anonymous guest)
CrushFTP11 | What's New

Referenced by
LeftMenu
VFS Protocols

JSPWiki