swift/doc/source/middleware.rst

7.5 KiB

Middleware

Account Quotas

swift.common.middleware.account_quotas

AWS S3 Api

swift.common.middleware.s3api.s3api

swift.common.middleware.s3api.s3token

swift.common.middleware.s3api.s3request

swift.common.middleware.s3api.s3response

swift.common.middleware.s3api.exception

swift.common.middleware.s3api.etree

swift.common.middleware.s3api.utils

swift.common.middleware.s3api.subresource

swift.common.middleware.s3api.acl_handlers

swift.common.middleware.s3api.acl_utils

swift.common.middleware.s3api.controllers.base

swift.common.middleware.s3api.controllers.service

swift.common.middleware.s3api.controllers.bucket

swift.common.middleware.s3api.controllers.obj

swift.common.middleware.s3api.controllers.acl

swift.common.middleware.s3api.controllers.s3_acl

swift.common.middleware.s3api.controllers.multi_upload

swift.common.middleware.s3api.controllers.multi_delete

swift.common.middleware.s3api.controllers.versioning

swift.common.middleware.s3api.controllers.location

swift.common.middleware.s3api.controllers.logging

Bulk Operations (Delete and Archive Auto Extraction)

swift.common.middleware.bulk

CatchErrors

swift.common.middleware.catch_errors

CNAME Lookup

swift.common.middleware.cname_lookup

Container Quotas

swift.common.middleware.container_quotas

Container Sync Middleware

swift.common.middleware.container_sync

Cross Domain Policies

swift.common.middleware.crossdomain

Discoverability

Swift will by default provide clients with an interface providing details about the installation. Unless disabled (i.e expose_info=false in proxy-server-config), a GET request to /info will return configuration data in JSON format. An example response:

{"swift": {"version": "1.11.0"}, "staticweb": {}, "tempurl": {}}

This would signify to the client that swift version 1.11.0 is running and that staticweb and tempurl are available in this installation.

There may be administrator-only information available via /info. To retrieve it, one must use an HMAC-signed request, similar to TempURL. The signature may be produced like so:

swift tempurl GET 3600 /info secret 2>/dev/null | sed s/temp_url/swiftinfo/g

Domain Remap

swift.common.middleware.domain_remap

Dynamic Large Objects

DLO support centers around a user specified filter that matches segments and concatenates them together in object listing order. Please see the DLO docs for dlo-doc further details.

Encryption

Encryption middleware should be deployed in conjunction with the keymaster middleware.

swift.common.middleware.crypto

swift.common.middleware.crypto.encrypter

swift.common.middleware.crypto.decrypter

Etag Quoter

swift.common.middleware.etag_quoter

FormPost

swift.common.middleware.formpost

GateKeeper

swift.common.middleware.gatekeeper

Healthcheck

swift.common.middleware.healthcheck

Keymaster

Keymaster middleware should be deployed in conjunction with the encryption middleware.

swift.common.middleware.crypto.keymaster

KeystoneAuth

swift.common.middleware.keystoneauth

List Endpoints

swift.common.middleware.list_endpoints

Memcache

swift.common.middleware.memcache

Name Check (Forbidden Character Filter)

swift.common.middleware.name_check

Object Versioning

swift.common.middleware.versioned_writes.object_versioning

Proxy Logging

swift.common.middleware.proxy_logging

Ratelimit

swift.common.middleware.ratelimit

Read Only

swift.common.middleware.read_only

Recon

swift.common.middleware.recon

Server Side Copy

swift.common.middleware.copy

Static Large Objects

Please see the SLO docs for slo-doc further details.

StaticWeb

swift.common.middleware.staticweb

swift.common.middleware.symlink

TempAuth

swift.common.middleware.tempauth

TempURL

swift.common.middleware.tempurl

Versioned Writes

swift.common.middleware.versioned_writes.legacy

XProfile

swift.common.middleware.xprofile