Skip to main content

qingstor

QingStor Object Storage

Project#

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

Configure#

Servicer#

Available Pairs#

NameRequiredComments
credentialYonly support hmac protocol
endpointY

Examples#

Init servicer (see this page for details)

import (    _ "github.com/beyondstorage/go-service-qingstor/v3"    "github.com/beyondstorage/go-storage/v4/services")
srv, err := services.NewServicerFromString("qingstor://?credential=hmac:access_key_id:secret_access_key&endpoint=https:qingstor.com")if err != nil {    log.Fatalf("qingstor 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-qingstor/v3"    "github.com/beyondstorage/go-storage/v4/services")
store, err := services.NewStoragerFromString("qingstor://<bucket_name>/path/to/workdir?credential=hmac:access_key_id:secret_access_key&endpoint=https:qingstor.com")if err != nil {    log.Fatalf("qingstor new service: %v", err)}

Implementation#

This service implements following interfaces:

Pairs#

Server-Side Encryption (SSE)#

Qingstor support server-side encryption with customer-provided encryption keys.

Refer to https://docs.qingcloud.com/qingstor/api/common/encryption.html for more details.

Encrypt Object#

NameComments
encryption_customer_algorithmthe encryption algorithm. Only AES256 is supported now.
encryption_customer_keythe customer-provided encryption key. For AES256 keys, the plaintext must be 32 bytes long.
Supported Operations#

Copy Encrypted Object#

NameComments
copy_source_encryption_customer_algorithmthe encryption algorithm for the source object. Only AES256 is supported now.
copy_source_encryption_customer_keythe customer-provided encryption key for the source object. For AES256 keys, the plaintext must be 32 bytes long.
copy_source_encryption_customer_key_md5the MD5 of the customer-provided key for the source object.
Supported Operations#