settings.py 文件设置
中间件的引进一般放在settings.py 文件中的 MIDDLEWARE 中, 权限中间件也是从这儿引进放进去。

自定义middleware文件解析
在上面截图中可以看到权限中间件是放在了vadmin.op_drf.middleware.PermissionModeMiddleware 里边 去到对应的 middleware 文件中,看中间件写的一些内容。

process_request: 恳求进来前的处理
process_view: 恳求进入到视图处理前的处理
process_response: 恳求处理完后的记载
这儿主要是在process_view进行逻辑处理,可以对这进行分析解析。
-
process_view 解析
-
假如开了接口权限校验,需求进行权限校验
- 获取恳求用户的基本信息
- 用户存在且用户不是AnonymousUser类型的用户,则持续进行校验。
- 恳求的是GET办法,一概不设置接口权限
- 解析恳求URL
- 经过has_interface_permission办法获取接口认证权限auth_code
-
解析 has_interface_permission
接口权限验证,优先级:
(1)接口是否接入权限办理, 是:持续; 否:经过
(2)认证的user是否superuser, 是:经过; 否:持续
(3)user的人物有该接口权限, 是:经过, 否:不经过- 先获取一切录入系统的接口
Menu.get_interface_dict() 相关代码- 判别此用户是否是superuser
- 获取此用户所恳求的接口
- 获取此用户关联人物一切有权限的接口
-
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。