swiftonfile/gluster/swift/common/middleware/gswauth
Luis Pabon ac1ac5bd21 GSWauth authentication to be based on SWauth
We are planning on creating a GlusterFS aware authentication
system for gluster-swift based on SWauth.

We forked from SWauth commit
41d36ebe160aa3346f6f45197fff0c80f38fde58

Change-Id: Ia28730d21e04fc8d9ce0cb317fc04d0d97583fca
Signed-off-by: Luis Pabon <lpabon@redhat.com>
Reviewed-on: http://review.gluster.org/6069
2013-10-13 19:36:20 -07:00
..
bin GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
doc/source GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
etc GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
locale GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
swauth GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
test_swauth GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
webadmin GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
.gitignore GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
.unittests GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
AUTHORS GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
babel.cfg GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
CHANGELOG GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
LICENSE GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
MANIFEST.in GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
README.md GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
setup.cfg GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00
setup.py GSWauth authentication to be based on SWauth 2013-10-13 19:36:20 -07:00

Swauth

An Auth Service for Swift as WSGI Middleware that uses Swift itself as a backing store. Sphinx-built docs at: http://gholt.github.com/swauth/

See also https://github.com/openstack/keystone for the standard OpenStack auth service.

NOTE

Be sure to review the Sphinx-built docs at: http://gholt.github.com/swauth/

Quick Install

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

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

    Was:

     [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 http://127.0.0.1:8080/auth/ -K swauthkey -a test tester testing

  8. Ensure it works swift -A http://127.0.0.1:8080/auth/v1.0 -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 http://127.0.0.1:8080/auth/v1.0 -U .super_admin:.super_admin -K swauthkey upload .webadmin .

  3. Open http://127.0.0.1:8080/auth/ in your browser.