Skip to main content

azblob

Azure Blob storage

Project#

https://github.com/beyondstorage/go-service-azblob

Config#

Servicer#

Available Pairs#

NameRequiredComments
credentialYonly support hmac protocol
endpointYendpoint provided by azure

Examples#

Init servicer (see this page for details)

import (    _ "github.com/beyondstorage/go-service-azblob/v3"    "github.com/beyondstorage/go-storage/v4/services")
srv, err := services.NewServicerFromString("azblob://?credential=hmac:<account_name>:<account_key>&endpoint=https:<account_name>.<endpoint_suffix>")if err != nil {    log.Fatalf("azblob new service: %v", err)}

Storager#

Available Pairs#

NameRequiredComments
nameYbucket name
work_dirNwork dir

Examples#

Init storager (see this page for details)

import (    _ "github.com/beyondstorage/go-service-azblob/v3"    "github.com/beyondstorage/go-storage/v4/services")
store, err := services.NewStoragerFromString("azblob://<container_name>/<work_dir>?credential=hmac:<account_name>:<account_key>&endpoint=https:<account_name>.<endpoint_suffix>")if err != nil {    log.Fatalf("azblob new service: %v", err)}

Implementation#

This service implements following interfaces:

Pairs#

Server-Side Encryption (SSE)#

Azure Blob storage supports three options for Server-Side Encryption:

  • Microsoft-managed keys: This is default behaviour, needs no configuration.
  • Customer-managed keys: Configure customer-managed keys for the storage account, and then data will always be protected.
  • Customer-provided keys

Refer to https://docs.microsoft.com/en-us/azure/storage/common/storage-service-encryption for more details.

Customer-provided keys#

NameComments
encryption_keythe 32-byte customer-provided AES256 key
encryption_scopeSpecifies the name of the encryption scope. See https://docs.microsoft.com/en-us/azure/storage/blobs/encryption-scope-overview for details.
Supported Operations#