swift/doc/source/misc.rst
Richard (Rick) Hawkins 2c4bf81464 Added discoverable capabilities.
Swift can now optionally be configured to allow requests to '/info',
providing information about the swift cluster.  Additionally a HMAC
signed requests to
'/info?swiftinfo_sig=<sign>&swiftinfo_expires=<expires>' can be
configured allowing privileged access to more sensitive information
not meant to be public.

DocImpact
Change-Id: I2379360fbfe3d9e9e8b25f1dc34517d199574495
Implements: blueprint capabilities
Closes-Bug: #1245694
2013-11-22 15:54:13 -06:00

3.9 KiB

Misc

Exceptions

swift.common.exceptions

Constraints

swift.common.constraints

Utils

swift.common.utils

TempAuth

swift.common.middleware.tempauth

KeystoneAuth

swift.common.middleware.keystoneauth

ACLs

swift.common.middleware.acl

WSGI

swift.common.wsgi

Direct Client

swift.common.direct_client

Internal Client

swift.common.internal_client

Buffered HTTP

swift.common.bufferedhttp

Healthcheck

swift.common.middleware.healthcheck

Recon

swift.common.middleware.recon

MemCacheD

swift.common.memcached

Manager

swift.common.manager

Ratelimit

swift.common.middleware.ratelimit

StaticWeb

swift.common.middleware.staticweb

TempURL

swift.common.middleware.tempurl

FormPost

swift.common.middleware.formpost

Domain Remap

swift.common.middleware.domain_remap

CNAME Lookup

swift.common.middleware.cname_lookup

Proxy Logging

swift.common.middleware.proxy_logging

Bulk Operations (Delete and Archive Auto Extraction)

swift.common.middleware.bulk

Container Quotas

swift.common.middleware.container_quotas

Account Quotas

swift.common.middleware.account_quotas

Static Large Objects

swift.common.middleware.slo

List Endpoints

swift.common.middleware.list_endpoints

Discoverability

Swift can optionally be configured to provide clients with an interface providing details about the installation. If configured, a GET request to /info will return configuration data in JSON format. An example response:

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

This would signify to the client that swift version 1.8.1 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-temp-url GET 3600 /info secret 2>/dev/null | sed s/temp_url/swiftinfo/g