FlowiseAI/Flowise · error · Error

Azure Blob Storage configuration is missing. Provide AZURE_B

Error message

Azure Blob Storage configuration is missing. Provide AZURE_BLOB_STORAGE_CONNECTION_STRING or AZURE_BLOB_STORAGE_ACCOUNT_NAME + AZURE_BLOB_STORAGE_ACCOUNT_KEY

What it means

Thrown by AzureBlobStorageProvider.initAzureConfig after the container-name check passes but no complete authentication credential set is present. The provider accepts either AZURE_BLOB_STORAGE_CONNECTION_STRING alone, or the pair AZURE_BLOB_STORAGE_ACCOUNT_NAME + AZURE_BLOB_STORAGE_ACCOUNT_KEY; anything else is rejected.

Source

Thrown at packages/components/src/storage/AzureBlobStorageProvider.ts:58

        const connectionString = process.env.AZURE_BLOB_STORAGE_CONNECTION_STRING
        const accountName = process.env.AZURE_BLOB_STORAGE_ACCOUNT_NAME
        const accountKey = process.env.AZURE_BLOB_STORAGE_ACCOUNT_KEY
        const containerName = process.env.AZURE_BLOB_STORAGE_CONTAINER_NAME

        if (!containerName || containerName.trim() === '') {
            throw new Error('AZURE_BLOB_STORAGE_CONTAINER_NAME env variable is required')
        }

        let blobServiceClient: BlobServiceClient

        // Authenticate either using connection string or account name and key
        if (connectionString && connectionString.trim() !== '') {
            blobServiceClient = BlobServiceClient.fromConnectionString(connectionString)
        } else if (accountName && accountName.trim() !== '' && accountKey && accountKey.trim() !== '') {
            const sharedKeyCredential = new StorageSharedKeyCredential(accountName, accountKey)
            blobServiceClient = new BlobServiceClient(`https://${accountName}.blob.core.windows.net`, sharedKeyCredential)
        } else {
            throw new Error(
                'Azure Blob Storage configuration is missing. Provide AZURE_BLOB_STORAGE_CONNECTION_STRING or AZURE_BLOB_STORAGE_ACCOUNT_NAME + AZURE_BLOB_STORAGE_ACCOUNT_KEY'
            )
        }

        const containerClient = blobServiceClient.getContainerClient(containerName)
        return { containerClient, containerName }
    }

    getStorageType(): string {
        return 'azure'
    }

    getConfig(): any {
        return {
            containerName: this.containerName
        }
    }

View on GitHub (pinned to abe4a8601a)

Solutions

  1. Provide AZURE_BLOB_STORAGE_CONNECTION_STRING and rely on connection-string auth, OR
  2. Provide both AZURE_BLOB_STORAGE_ACCOUNT_NAME and AZURE_BLOB_STORAGE_ACCOUNT_KEY.
  3. Verify the credentials are valid against the storage account (e.g. with az CLI) before starting Flowise.

Example fix

# before
AZURE_BLOB_STORAGE_CONTAINER_NAME=flowise
AZURE_BLOB_STORAGE_ACCOUNT_NAME=myaccount
# after
AZURE_BLOB_STORAGE_CONTAINER_NAME=flowise
AZURE_BLOB_STORAGE_ACCOUNT_NAME=myaccount
AZURE_BLOB_STORAGE_ACCOUNT_KEY=<base64-key>
Defensive patterns

Strategy: validation

Validate before calling

function validateAzureAuth(): void {
  const cs = process.env.AZURE_BLOB_STORAGE_CONNECTION_STRING
  const name = process.env.AZURE_BLOB_STORAGE_ACCOUNT_NAME
  const key = process.env.AZURE_BLOB_STORAGE_ACCOUNT_KEY
  const hasConnStr = cs && cs.trim() !== ''
  const hasPair = name && name.trim() !== '' && key && key.trim() !== ''
  if (!hasConnStr && !hasPair) {
    throw new Error('Azure auth incomplete: provide CONNECTION_STRING or ACCOUNT_NAME + ACCOUNT_KEY')
  }
}

Type guard

function hasAzureAuth(env: NodeJS.ProcessEnv): boolean {
  const cs = env.AZURE_BLOB_STORAGE_CONNECTION_STRING
  const name = env.AZURE_BLOB_STORAGE_ACCOUNT_NAME
  const key = env.AZURE_BLOB_STORAGE_ACCOUNT_KEY
  return (!!cs && cs.trim() !== '') || (!!name && !!key && name.trim() !== '' && key.trim() !== '')
}

Prevention

When it happens

Trigger: Container name is set but neither the connection string nor the account-name+account-key pair is fully supplied (e.g. only the account name is set, or only the key). The fall-through at AzureBlobStorageProvider.ts:57 throws.

Common situations: Partially filling in Azure credentials; rotating keys and forgetting to update one of the two env vars; switching from connection-string auth to key auth without providing both name and key.

Related errors


AI-assisted analysis of FlowiseAI/Flowise@abe4a8601a (2026-08-12). Data as JSON: /api/errors/78ad2c2af906541e. Report an issue: GitHub.