day4 crm客户管理之初始化权限校验
2021/12/16 23:14:06
本文主要是介绍day4 crm客户管理之初始化权限校验,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
用户访问,在中间件从session中获取用户权限信息,并进行权限验证
目录
# -*- encoding: utf-8 -*- """ @File : midle.py @Time : 2021-12-16 8:59 @Author : tangsai @Email : 294168604@qq.com @Software: PyCharm """ import re from django.utils.deprecation import MiddlewareMixin from django.shortcuts import HttpResponse class CheckPermission(MiddlewareMixin): """ 用户权限信息校验 """ def process_request(self, request): """ 当用户请求刚进入时候出发执行 :param request: :return: """ """ 1. 获取当前用户请求的URL 2. 获取当前用户在session中保存的权限列表 ['/customer/list/','/customer/list/(?P<cid>\\d+)/'] 3. 权限信息匹配 """ valid_url_list = [ '/login/', '/admin/.*' ] current_url = request.path_info for valid_url in valid_url_list: if re.match(valid_url, current_url): print(valid_url,current_url) # 白名单中的URL无需权限验证即可访问 return None permission_list = request.session.get('luffy_permission_url_list_key') if not permission_list: return HttpResponse('未获取到用户权限信息,请登录!') flag = False for url in permission_list: reg = "^%s$" % url if re.match(reg, current_url): flag = True break if not flag: return HttpResponse('无权访问')
setting.py中间件配置新增路径
'web.md.midle.CheckPermission'
这篇关于day4 crm客户管理之初始化权限校验的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享