ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

drf篇:接口文档、RBAC介绍

2022-06-22 15:02:00  阅读:176  来源: 互联网

标签:--- 角色 auth RBAC 文档 接口 权限 drf


1 自动生成接口文档

# 后端人员,写好接口,提供接口文档给前端用

# 如何编写接口文档
	-使用word写,md写----》提交到git上
    -公司有接口文档平台---》后端人员在文档平台录入数据---》公司自己开发,yapi(百度开源),第三方
        -https://zhuanlan.zhihu.com/p/366025001  自己搭建yapi
        -https://www.showdoc.com.cn/  第三方平台
    - 自动生成接口文档---》项目写好了,一键生成接口文档----》一键生成---》导出---》导入到yapi

# drf中自动生成接口文档
	-coreapi,swagger(更通用一些,go,java)
	-安装 pip3 install coreapi
    -在项目中配置	
    	-加入路由:
        from rest_framework.documentation import include_docs_urls
        urlpatterns = [
            path('docs/', include_docs_urls(title='站点页面标题'))
        ]
        -配置文件中配置
        REST_FRAMEWORK = {
         'DEFAULT_SCHEMA_CLASS': 'rest_framework.schemas.coreapi.AutoSchema',

        }
        
        -尽管写接口,写注释,会自动生成
    

2 RBAC介绍(面试)

# RBAC  是基于角色的访问控制(Role-Based Access Control )在 RBAC  中,
权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。这样管理都是层级相互依赖的,权限赋予给角色,而把角色又赋予用户,这样的权限设计很清楚,管理起来很方便


# 这种设计,在公司内部系统用的多,对外的系统基本不用

# 权限:真正的权限,比如发工资,招人,申请测试机
# 角色:(组,部门) 角色下有很多员工
# 用户:一个个的人

# 用户和角色关系是多对多,中间表
# 权限和角色关系是多对多,中间表
# 权限和用户的中间表


#前后端分离项目控制权限---》权限类中
#前后端混合
    -django框架在公司里用的很多,写内部项目,肯定要用权限控制,用的就是rbac,自己实现一套,django内置了后台管理,自带rbac(admin+auth)
    -基于django的admin二次开发
    -美化:xadmin(基本不用了,2.x以后django不兼容多,作者弃坑了)
    -simpleui:
    -django+drf+vue=djagnovueadmin  一款前后端分离的自带rbac的后台管理框架
    
    
    
# django的admin基于rbac
    -auth_user  #用户表
    -auth_permission #权限表
    -auth_group  #组,角色表
    
    -auth_user_groups   # 用户和组中间表
    -auth_group_permissions  #组和权限中间表
    -auth_user_user_permissions #用户和权限中间表


标签:---,角色,auth,RBAC,文档,接口,权限,drf
来源: https://www.cnblogs.com/williama/p/16400558.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有