##基于redis的AES加解密工具包
2/4/2020 Bruce 0.8.2 初始版本
2/5/2020 Bruce 0.8.3 补充调用及配置说明,更新引用方式
2/5/2020 Bruce 0.9.1 新增鉴权模块
3/9/2020 Bruce 0.9.9 bugfix
7/23/2020 Bruce 0.9.9.3 新增代理模块,用于修饰需要鉴权的函数
8/18/2020 Bruce 1.0 新增日志记录功能
###使用方法:
####1、配置全局变量
变量名|类型|用途|示例
REDIS_ADDRESS|字符串|redis服务器地址,需要带上ip、端口、库号|127.0.0.1:6379/1
COMMON_SALT|字符串|解密密钥|0648ea5562efffee
APPLICATION_NAME|字符串|cad应用名|mms
APP_CONFIG_PREFIX|字符串|cad配置前缀|app-config
####2、引入模块
from cad.cad_util import CadUtil # 数据获取模块
from cad.app_config_util import AppConfigUtil # 用户鉴权模块
from cad.proxy import cad_proxy # 鉴权代理模块
####3、使用
cad_util = CadUtil()
res = util.get(ak)
ak为应用对应的ak键
res 即得到的解析结果
结果格式如下
{ "ak": "0648ea5562efffee", "sk": "1e058d312eb61448", "permissions": { "app_1": ["auth_1", "auth_2"], "app_2': ["auth_3", "auth_4"] } }
格式说明:
- ak: 字符串,应用的ak
- sk: 字符串,应用的sk
- permissions: 字典,应用的权限清单
- permissions的每个键为该ak所拥有的其他应用的权限的应用名称
- permissions每个键的值为该ak所拥有的对应应用的权限列表
app_config_util = AppConfigUtil(app_id)
校验ak是否有某应用的某个权限权限
app_config_util.check(ak, sk, auth_code)
校验ak是否有某应用的任意权限
app_config_util.check(ak,sk)
参数说明:
- ak: 传入的ak
- sk: 传入的sk
- app_id: 判断ak是否有该应用的权限
- auth_code: 判断ak是否有app下auth_code的权限,如果不传则判断ak是否有app的任意权限
结果说明:
True: 校验成功
False: 校验失败,原因如下:
- aksk不匹配
- ak没有对应app的权限
- ak没有对应app的auth_code权限
抛出异常CadException:
- ak不存在
@cad_proxy(auth_code, error_response)
def view(self, request):
pass
auth_code 为被修饰方法view对应的权限code,由中台管理系统统一配置
error_response 为处理异常的对象,可以不传,默认抛出ProxyException类,可以自行定义。自行定义的对象需要接受一个参数,用于表示异常的原因
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file cad-1.1.2.tar.gz.
File metadata
- Download URL: cad-1.1.2.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c326e07d08982b5bed40f032d7af9079505324ddc5dbffff77e92723d928ed0
|
|
| MD5 |
ceb5dfd197fc02468a6f7c0aaa52c0b1
|
|
| BLAKE2b-256 |
ac9c82a64b16027bbd5c531f22d06bb7b5b4fd9a012f4b0997b6712c72b782ee
|