MBQ服务客户端
mbq.client的Python项目详细描述
安装
$ pip install mbq.client
开始
关键概念
- serviceclient包装python的请求库以启用基于令牌的服务到服务身份验证
- authenticator提供基于auth0令牌的身份验证
- tokenmanager存储可刷新令牌并支持不同持久性存储后端的管理器。
django积分
djangocachestorage是一个薄包装器,用于在django项目的缓存中存储令牌。
示例
fromdjango.core.cacheimportcachefrommbq.clientimportServiceClient,Authenticator,TokenManager,DjangoCacheStoragetoken_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
权限客户端
OSCore=ServiceClient(settings.OS_CORE_API_URL,auth=Authenticator(service_name="os-core",token_manager=token_manager),)frommbq.client.contribimportpermissionspermissions_client=permissions.PermissionsClient(permissions.OSCoreServiceClient(OSCore),cache_period_seconds=0)# query for a user's permission at company 15permissions_client.has_permission(person_id,"read:messages",15,"company")# returns True if person_id has that permission
您可以在开发人员的权限文档中找到其他信息here