码迷,mamicode.com
首页 > 其他好文 > 详细

权限组件之rbac

时间:2018-08-12 18:56:02      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:name   mission   inf   rmi   method   _id   ESS   用户   所有权   

rbac:基于角色的权限访问控制(Role-Based Access Control)。

 

def login(request):
    if request.method=="GET":
        return render(request,"login.html")

    else:
        user=request.POST.get("user")
        pwd=request.POST.get("pwd")
        user=UserInfo.objects.filter(name=user,pwd=pwd).first()
        if user:
            # 验证成功之后做什么?
            request.session["user_id"]=user.pk  # 拿到session

            # 当前登录用户的所有权限, distinct()是去掉重复的权限
       
            permission_info=user.roles.all().values("permissions__url","permissions__title").distinct()
            temp=[]  # url列表
            for i in permission_info:
                temp.append(i["permissions__url"])
            request.session["permission_list"]=temp

            #  {"user_id":1,"permission_list":[‘/users/‘,‘/orders/‘]}
            return HttpResponse("登录成功!")
        else:
            return redirect("/login/")

 

权限组件之rbac

标签:name   mission   inf   rmi   method   _id   ESS   用户   所有权   

原文地址:https://www.cnblogs.com/aaronthon/p/9463649.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!