Metadata-Version: 2.1
Name: jsa-auth-middleware
Version: 0.0.2
Summary: JetStream Authentication MiddleWare
Home-page: https://github.com/JetstreamAfrica/jsa_sdks/tree/master/jsa_auth_middleware
Author: Kunsam002 :: Olukunle Ogunmokun
Author-email: kunsam002@gmail.com
License: MIT License
Platform: UNKNOWN
Classifier: Framework :: Django
Classifier: Framework :: Django :: 2.2
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.6
Requires-Dist: Django (==2.2.8)
Requires-Dist: requests (>=2.22)

====================================
JetStream Authentication Middleware
====================================

JSA Auth Middleware is a python package built
for integrating with JetStream across multiple
micro-services, with the aim of handling
authentication and Single-Sign-On while ensuring API security.


Quick start
-----------
1. Configure `AUTH_BASE_URL` in project `settings` pointing to the Authentication server **without trailing slash** 

2. Add `jsa_auth_middleware.JSAMiddleware` to your `MIDDLEWARE` configuration in `settings.py` to validate authentication of all incoming requests::

    MIDDLEWARE = [
        ...
        'jsa_auth_middleware.JSAMiddleware',
    ]

3. Import Query Response across application to define and process API response::

    from jsa_auth_middleware.query_response import Response


    resp = Response()
    resp.failed() # on failure, using default failure status_code
    resp.message = '<<Some response message>>'
    resp.add_params('<<data_key>>', <<data_value>>)


    resp = Response()
    resp.passed() # on success, using default success status_code
    resp.message = '<<Some response message>>'
    resp.add_params('<<data_key>>', <<data_value>>)


    # Setting response status code
    resp.status_code = <<CustomStatusCode>>



