Client library for accessing GaaP services
Python package providing a WSGI middleware for accessing GaaP services.
You can’t do this yet, but soon will.
pip install ags_client
You will need a client ID and client secret from the GaaP Identity Broker. You can’t get these yet, but soon will by emailing us with a brief summary of:
- who you are
- what project you’re going to be using it on
For example: given your Flask app is defined in webservice.py in a variable named app, create a file called wsgi.py:
import ags from webservice import app app.wsgi_app = ags.Client(app.wsgi_app)
Then start your app with a WSGI server such as Gunicorn or uWSGI. Eg:
The middleware looks for certain environment variables for settings. The following variables are REQUIRED:
- The client ID that you have been issued
- The client secret that you have been issued
- Comma separated list of paths in your web application that require authentication. May include regular expressions.
The following variables are OPTIONAL:
- Path to sign out view in your application - default: sign-out
The following variables can be used to override defaults, but usually should not be used:
- The path to the OIDC authentication endpoint on the broker
- The path to the OIDC jwks_uri endpoint on the broker
- The path to the OIDC token endpoint on the broker
- The URL of the OIDC identity broker
- Overrides default OIDC callback path
This source code is provided as-is, with no incident response or support levels. Please log all questions, issues, and feature requests in the Github issue tracker for this repo, and we’ll take a look as soon as we can. If you’re reporting a bug, then it really helps if you can provide the smallest possible bit of code that reproduces the issue. A failing test is even better!
- Check out the latest master to make sure the feature hasn’t been implemented or the bug hasn’t been fixed
- Check the issue tracker to make sure someone hasn’t already requested and/or contributed the feature
- Fork the project
- Start a feature/bugfix branch
- Commit and push until you are happy with your contribution
- Make sure your changes are covered by unit tests, so that we don’t break it unintentionally in the future.
- Please don’t mess with setup.py, version or history.
Copyright © 2015 HM Government (Government Digital Service). See LICENSE for further details.