首页 > 其他分享 >RBAC经典的五张表

RBAC经典的五张表

时间:2024-02-22 21:13:47浏览次数:21  
标签:set string get int StringLength RBAC 经典 public 五张

  • RBAC基于角色的访问控制(Role-Based Access Control),能更方便企业进行用户权限的管理。
    下面是RBAC经典的五张表:

    1.用户表:
点击查看代码
 /// <summary>
    /// 用户表
    /// </summary>
    [Table("Users")]
    public class Users
    {
        [Key]
        public int UserId { get; set; }
        [Required]
        [StringLength(50)]
        public string UserName { get; set; }
        [Required]
        [StringLength(50)]
        public string PassWord { get; set; }
        public int Age { get; set; }
        [StringLength(50)]
        public string? Email { get; set; }
        [StringLength(11)]
        public string? Phone { get; set; }
        [Required]
        [StringLength(50)]
        public string TrueName { get; set; }
    }
2.角色表:
点击查看代码
 /// <summary>
    /// 角色表
    /// </summary>
    [Table("Roles")]
    public class Roles
    {
        [Key]
        public int RoleId { get; set; }
        [Required]
        [StringLength(50)]
        public string RoleName { get; set; }
        [StringLength(50)]
        public string? Desc { get; set; }
    }
3.权限表:
点击查看代码
 /// <summary>
    /// 权限表
    /// </summary>
    [Table("Permision")]
    public class Permision
    {
        [DatabaseGenerated(DatabaseGeneratedOption.None)]
        public string PermisionId { get; set; }
        [Required]
        [StringLength(50)]
        public string PermisionName { get; set; }
        [Required]
        [StringLength(50)]
        public string ParentId { get; set; }
        [Required]
        [StringLength(500)]
        public string MenuUrl { get; set; }
        [Required]
        [StringLength(500)]
        public string Icon { get; set; }
    }
4.用户角色关系表:
点击查看代码
/// <summary>
    /// 用户角色关系表
    /// </summary>
    [Table("UserRole")]
    public class UserRole
    {
        [Key]
        public int UserRoleId { get; set; }
        public int UserId { get; set; }
        public int RoleId { get; set; }
    }
5.角色权限关系表:
点击查看代码
 /// <summary>
    /// 角色权限关系表
    /// </summary>
    [Table("RolePermision")]
    public class RolePermision
    {
        [Key]
        public int RolePermisionId { get; set; }

        public int RoleId { get; set; }
        public string PermisionId { get; set; }
    }

标签:set,string,get,int,StringLength,RBAC,经典,public,五张
From: https://www.cnblogs.com/liany920/p/18028141

相关文章

  • 一类经典问题的若干解法
    标题指的是这类问题:我们经常会看见求\(\sum\limits_{x=l}^r\sum\limits_{y=x}^rf(x,y)\)这类问题。我们常常能够通过智慧将\(f(x,y)\)转化为二维平面上的点,然后发现所有\(f\)可以用一些矩形加来表示。通常这里面矩形加的次数是\(\mathcalO(n)\)或者\(\mathcalO(n\log......
  • 【Java 并发】【应用】经典的生产者、消费者
    1  前言闲来无事,复习复习并发中常用到的一些协调多线程的工具哈。2 基于Java队列的实现生产者跟消费者之间要协调,他俩会出现碰撞的地方就是存放东西的容器,所以我们可以直接拿一个线程安全的队列来做容器即可,比如我这里用的ArrayBlockingQueue:/***@author:xjx*@d......
  • 算法竞赛经典入门(第2版)习题1
    目前在准备一个竞赛,头绪并不是很清楚,根据知乎的推荐入了一本书《算法竞赛入门经典》(第2版)...下面是写的例题和习题答案也算是简单记录一下学习过程吧。//三位数反转#include<stdio.h>intmain(){intn;scanf("%d",&n);printf("%d%d%d\n",n%10,n/10%10,n/100)......
  • 非对称加密的经典案例-ssh密码登录/免密登录
    我在给云服务器配置本地电脑免密登录的过程中,学习了一下SSH免密登录的实现原理。对SSH中输入密码登录和免密登录的原理根据自己的理解做了如下笔记,分享给大家希望能有所帮助。1.对称加密对称加密是加密过程中只有一个密钥,加密解密都只用这个密钥。加密通讯至少要有一对通讯对......
  • 在k8S中,Kubernetes RBAC及其特点(优势)是什么?
    在Kubernetes(k8S)中,Role-BasedAccessControl(RBAC)是一种强大的权限管理和访问控制机制。它允许集群管理员细粒度地控制用户、组或服务账户对KubernetesAPI资源的访问权限。特点和优势:细粒度授权:RBAC提供了一种基于角色的灵活授权模式,可以根据角色定义不同级别的API访问权限......
  • 三十三、RBAC+动态菜单
    rolebaseaccesscontrol基于角色的权限控制1、Modelsfromdjango.dbimportmodelsclassUser(models.Model):name=models.CharField(max_length=32)password=models.CharField(max_length=32)classMeta:verbose_name_plural='用户表'......
  • 面试经典 150 题 (十七)
    思路:1、先将下标和高度放入HashMap中,防止排序之后破坏高度和下标的映射关系2、将HashMap转成Map.Entry的列表并且重写Collections.sort中的sort方法实现将数组按照键值对的值从大到小排序。3、设置flag数组用于标识那些高度区间没有被访问过4、从排序好的数组中取出高度,再向......
  • 面试经典 150 题 (十六)
    classSolution{publicintcandy(int[]ratings){//从左侧和右侧分别扫描一遍,计算当前孩子是否是比两侧的孩子优秀intlength=ratings.length;int[]candyNum=newint[length];for(inti=0;i<length;i++){c......
  • 面试经典 150 题 (十五)
    画折线图,亏空最严重的一步要最后一步做,等着前面的增益补(总体收益大于等于0的情况),因为本题有解就唯一,当总gas大于总cost一定有解classSolution{publicintcanCompleteCircuit(int[]gas,int[]cost){intlen=gas.length;intspare=0;......
  • 使用经典技术的音乐网站
    项目地址技术栈后端SpringBoot+MyBatis+Redis前端Vue3.0+TypeScript+Vue-Router+Vuex+Axios+ElementPlus+Echarts简介是一个经典简单的音乐网站。后端基本也就是在CRUD,redis是当缓存用的,数据库用的是mysql.XML自定义(附加)mybatis-plus的mapper配置mapper......