Installation
$ pip install mbq.client
Getting Started
Key Concepts
ServiceClient wraps python’s requests library to enable token based service to service authentication
Authenticator provides Auth0 token based authentication
TokenManager A manager that stores refreshable tokens with support for different persistent storage backends.
Django Integration
DjangoCacheStorage is a thin wrapper that stores token in your django project’s cache.
Example
from django.core.cache import cache
from mbq.client import ServiceClient, Authenticator, TokenManager, DjangoCacheStorage
token_manager = TokenManager(
settings={
'api_ids': {'my_service': 'id'},
'client_id': 'client_id',
'client_secret': 'your_secret'
'domain': 'auth0domain'
},
storage=DjangoCacheStorage(cache),
)
my_service_client = ServiceClient(
auth=Authenticator(
service_name='my_service',
token_manager=token_manager
)
)
my_service_client.get()
my_service_client.post()
my_service_client.patch()
my_service_client.put()
my_service_client.delete()
access_token.refresh()
access_token() #retrieves token
The Permissions Client
OSCore = ServiceClient(
settings.OS_CORE_API_URL,
auth=Authenticator(
service_name="os-core",
token_manager=token_manager
),
)
from mbq.client.contrib import permissions
permissions_client = permissions.PermissionsClient(
permissions.OSCoreServiceClient(OSCore),
cache_period_seconds=0
)
# query for a user's permission at company 15
permissions_client.has_permission(person_id, "read:messages", 15, "company") # returns True if person_id has that permission
You can find additional information in the permissions documentation for developers here
Release files for mbq.client 1.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mbq.client-1.5.1.tar.gz | 13.7 kB | Details |
Release files / mbq.client-1.5.1.tar.gz
| Download URL | mbq.client-1.5.1.tar.gz |
|---|---|
| Size | 13.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ab3c8f60baeddac51ebb510361d208ad1ed4e77b614ad97396c1bdde869b0253
|
|
BLAKE2b-256 checksum How to use checksums |
92d5d86b2839a2876f9c258c6150c8e970dee34f3216a9f4d756faa14b474902
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.1.0 requests-toolbelt/0.9.1 tqdm/4.34.0 CPython/3.6.7
|