Python API client for Export Directory.
Project description
directory-sso-api-client
Installation
$ pip install directory-sso-api-client
The api client expects the following settings:
Setting | Notes |
---|---|
DIRECTORY_SSO_API_CLIENT_BASE_URL | |
DIRECTORY_SSO_API_CLIENT_API_KEY | Unique to client. Retrieved during the on-boarding process. |
DIRECTORY_SSO_API_CLIENT_SENDER_ID | Unique to client. Retrieved during the on-boarding process. |
DIRECTORY_SSO_API_CLIENT_DEFAULT_TIMEOUT |
Once that is done the API client can be used:
from directory_sso_api_client.client import sso_api_client
Authentication backend
Add the following to your settings
AUTHENTICATION_BACKENDS = ['directory_sso_api_client.backends.SSOUserBackend']
AUTH_USER_MODEL='directory_sso_api_client.SSOUser',
MIDDLEWARE_CLASSES = [
...
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
...
That will result in the user being authenticate via their sso session cookie and then attached to request.user
.
Development
$ git clone https://github.com/uktrade/directory-sso-api-client
$ cd directory-sso-api-client
$ [create virtual environment and activate]
$ pip install -r requirements_test.txt
Publish to PyPI
The package should be published to PyPI on merge to master. If you need to do it locally then get the credentials from rattic and add the environment variables to your host machine:
Setting |
---|
DIRECTORY_PYPI_USERNAME |
DIRECTORY_PYPI_PASSWORD |
Then run the following command:
make publish
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
File details
Details for the file directory_sso_api_client-7.2.7-py3-none-any.whl
.
File metadata
- Download URL: directory_sso_api_client-7.2.7-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/42.0 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.2.1 tqdm/4.66.2 importlib-metadata/7.0.1 keyring/24.3.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.9.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a31621012c4883a09377a6d9762e0508fa0144b81249c19d6e485bd4960657a4 |
|
MD5 | 94985d9516d45cc5d92d7871f511c47a |
|
BLAKE2b-256 | de88585c3d25416ee3da2517a88e20bfadbfd6ca13d8cae80d2c0eea7e3593cb |