Azure Blob Storage V2 Binary Provider
Configure azure-blob-storage-v2-direct or azure-blob-storage-v2 templates supporting SAS tokens and signed URL redirect.
The azure-blob-storage-v2 provider is used for configuring Azure Blob Storage as the remote filestore.
Note
The Azure Blob Storage V2 Binary Provider is supported in Artifactory version 7.49 and later.
This binary provider uses the following set of parameters.
binariesDir | The directory to store the artifacts. Applicable for direct upload only. The default is |
|---|---|
tempDir | A temporary folder into which files are written for internal use by Artifactory. If the value specified starts with a forward slash ("/") the value is considered the full path to the temporary folder. Otherwise, it is considered relative to fileStoreDir under baseDataDir. Applicable for direct upload only.
|
accountName | The storage account can be a general-purpose storage accountor a blob storage account which is specialized for storing objects/blobs. Your cloud storage provider identity. |
accountKey | Your cloud storage provider authentication credential. |
sasToken | This is a service SAS token, which is used as an authentication method and is an alternative to |
endpoint | The hostname. You should only use the default value unless you need to contact a different endpoint for testing or production purposes. Note: if the endpoint is not defined in the xml file it will be automatically generated with the default
|
container | Your globally unique container name on Azure Blob Storage. |
path | Default: data The path relative to the bucket where binary files are stored. |
httpsOnly | Default: true. When true, the cloud binary provider can be accessed using a secure HTTPS connection. |
testConnection | Default: true When true, Artifactory uploads and downloads a file when starting up to verify that the connection to the cloud storage provider is fully functional. |
enableSignedUrlRedirect | Enables direct cloud storage download (applicable for self-hosted JPD). |
signedUrlExpirySeconds | Default: 30 (optional) Specifies the number of seconds that a signed URL provided to a requesting client for direct download from cloud storage is valid. (applicable for self-hosted JPD) |
multiPartLimit | Default: 268,435,456. File size threshold (in bytes) over which file uploads are chunked and multi-threaded. |
multipartElementSize | Default: 104,857,600. The chunk size when multiPartLimit is used. If a tag is not set, the default value will be applied. |
maxConnections | Default: 5 Sets the maximum HTTP client connections for the client. |
You must configure the Azure Blob Storage provider with parameters specific to your account (but can leave all other parameters with the recommended values).
The snippets below show the basic template configuration and examples that use the Azure Blob Storage binary provider.
Azure Direct Upload V2 Template (Recommended)
The Azure direct (or eventual-less) template allows directly uploading to Azure, bypassing the eventual upload mechanism. For more information, see Direct (Eventual-less) versus Eventual Upload Mechanism.
The following example shows a template modified to support Azure direct upload.
<config version="3">
<chain template="azure-blob-storage-v2-direct"/>
<provider type="cache-fs" id="cache-fs">
<cacheProviderDir>/var/opt/jfrog/artifactory/data/cache</cacheProviderDir>
<maxCacheSize>10000000000</maxCacheSize>
</provider>
<provider id="azure-blob-storage-v2" type="azure-blob-storage-v2">
<accountName>myaccount</accountName>
<accountKey>somekey</accountKey>
<endpoint>https://artifactoryhaprod.blob.core.windows.net/</endpoint>
<container>mycontainer</container>
<multiPartLimit>256000000</multiPartLimit>
<multipartElementSize>100000000</multipartElementSize>
</provider>
</config>What's in the template?
The following snippet shows the default chain that uses azure-blob-storage-v2-direct as the binary provider:
<config version="1">
<chain> <!-- template="azure-blob-storage-v2-direct" -->
<provider id="cache-fs" type="cache-fs">
<provider id="azure-blob-storage-v2" type="azure-blob-storage-v2"/>
</provider>
</chain>
</config>For details about the cache-fs provider, see Cached Filesystem Binary Provider.
Azure Eventual Upload V2 Template
The following example shows a template modified to support Azure eventual upload.
<config version="1">
<chain template="azure-blob-storage-v2"/>
<provider id="azure-blob-storage-v2" type="azure-blob-storage-v2">
<accountName>XXXXXXXX</accountName>
<accountKey>XXXXXXXX</accountKey>
<endpoint>https://<ACCOUNT_NAME>.blob.core.windows.net/</endpoint>
<container><NAME></container>
</provider>
</config>What's in the template?
The following snippet shows the default chain that uses azure-blob-storage as the binary provider:
<config version="1">
<chain> <!-- template="azure-blob-storage-v2" -->
<provider id="cache-fs" type="cache-fs">
<provider id="eventual" type="eventual">
<provider id="retry" type="retry">
<provider id="azure-blob-storage-v2" type="azure-blob-storage-v2"/>
</provider>
</provider>
</provider>
</chain>
</config>For details about the cache-fs provider, see Cached Filesystem Binary Provider.
For details about the eventual provider, see Eventual Binary Provider.
For details about the retry provider, see Retry Binary Provider.
Related Topics
- Filestore Configuration
- Azure Blob Storage
- Azure Blob Storage V1 Binary Provider
- Azure Blob Storage Cluster V2 Binary Provider
- Azure Workload Identity
- Set Up Artifactory to Use Azure Blob Storage
- Direct Cloud Storage Download
Frequently Asked Questions
This section provides answers to frequently asked questions.
FAQs
Q: What Artifactory version introduced the Azure Blob Storage V2 binary provider?
A: The Azure Blob Storage V2 binary provider is supported in Artifactory version 7.49 and later.
Q: Can a SAS token be used instead of an account key for Azure authentication?
A: Yes. The sasToken parameter is a service SAS token that serves as an alternative authentication method to accountKey. Both parameters authenticate access to the Azure storage account.
Q: What is the default endpoint format if none is specified in binarystore.xml?
A: If the endpoint parameter is not defined, it is automatically generated using the format https://ACCOUNT_NAME.blob.core.windows.net. The blob.core.windows.net endpoint is supported for all JFrog subscriptions; additional endpoints require Enterprise or Enterprise+ subscriptions.
Q: Is direct cloud storage download supported with Azure Blob Storage V2?
A: Yes. Set enableSignedUrlRedirect to true to enable direct download. This feature is applicable for self-hosted JPD environments only. The signedUrlExpirySeconds parameter (default: 30) controls how long the signed URL remains valid.
Q: Which upload template is recommended for Azure Blob Storage V2?
A: The azure-blob-storage-v2-direct template is recommended. It uploads directly to Azure, bypassing the eventual upload mechanism. See Filestore Configuration for the complete list of available chain templates.
