skip to navigation
skip to content

swauth 1.3.0

An alternative authentication system for Swift


An Auth Service for Swift as WSGI Middleware that uses Swift itself as a backing store. Docs at: <> or ask in #openstack-swauth on freenode [IRC](

See also <> for the standard OpenStack auth service.


Be sure to review the docs at: <>

Quick Install

  1. Install Swauth with sudo python install or sudo python develop or via whatever packaging system you may be using.

  2. Alter your proxy-server.conf pipeline to have swauth instead of tempauth:


    [pipeline:main] pipeline = catch_errors cache tempauth proxy-server

    Change To:

    [pipeline:main] pipeline = catch_errors cache swauth proxy-server

  3. Add to your proxy-server.conf the section for the Swauth WSGI filter:

    [filter:swauth] use = egg:swauth#swauth set log_name = swauth super_admin_key = swauthkey

  4. Be sure your proxy server allows account management:

    [app:proxy-server] … allow_account_management = true

  5. Restart your proxy server swift-init proxy reload

  6. Initialize the Swauth backing store in Swift swauth-prep -K swauthkey

  7. Add an account/user swauth-add-user -A -K swauthkey -a test tester testing

  8. Ensure it works swift -A -U test:tester -K testing stat -v

Web Admin Install

  1. If you installed from packages, you’ll need to cd to the webadmin directory the package installed. This is /usr/share/doc/python-swauth/webadmin with the Lucid packages. If you installed from source, you’ll need to cd to the webadmin directory in the source directory.
  2. Upload the Web Admin files with swift -A -U .super_admin:.super_admin -K swauthkey upload .webadmin .
  3. Open in your browser.

Swift3 Middleware Compatibility

[Swift3 middleware]( can be used with swauth when auth_type in swauth is configured to be Plaintext (default).

[pipeline:main] pipeline = catch_errors cache swift3 swauth proxy-server

It can be used with auth_type set to Sha1/Sha512 too but with certain caveats and security concern. Hence, s3 support is disabled by default and you have to explicitly enable it in your configuration. Refer to swift3 compatibility [section]( in documentation for further details

File Type Py Version Uploaded on Size
swauth-1.3.0-py2-none-any.whl (md5) Python Wheel py2 2017-12-09 37KB
swauth-1.3.0.tar.gz (md5) Source 2017-12-09 158KB