zoukankan      html  css  js  c++  java
  • RBAC流程

    本人  php技术小白,今天做rbac  以前接触的不是太多  于是便吧自己 今天做的整理一下

    首先呢  创建五张表

    2.1、用户表

    CREATE TABLE t_user(
      user_id NUMBER(10) PRIMARY KEY,
      user_name VARCHAR2(30),
      gender NUMBER(1),
      birthday DATE,
      create_time DATE DEFAULT SYSDATE
    );
    COMMENT ON TABLE t_user IS '用户表';
    COMMENT ON COLUMN t_user.user_id IS '用户ID';
    COMMENT ON COLUMN t_user.user_name IS '用户姓名';
    COMMENT ON COLUMN t_user.gender IS '性别{1男/0女}';
    COMMENT ON COLUMN t_user.birthday IS '出生日期';
    COMMENT ON COLUMN t_user.create_time '创建时间';

    2.2、角色表

    CREATE TABLE t_role(
      role_id NUMBER(10) PRIMARY KEY,
      role_name VARCHAR2(30),
      create_time DATE DEFAULT SYSDATE
    );
    COMMENT ON TABLE t_role IS '角色表';
    COMMENT ON COLUMN t_role.role_id IS '角色ID';
    COMMENT ON COLUMN t_role.role_name IS '角色名称';
    COMMENT ON COLUMN t_role.create_time '创建时间';

    2.3、权限表

    CREATE TABLE t_power(
      power_id NUMBER(10) PRIMARY KEY,
     power_url varchar(30), power_name VARCHAR2(30), create_time DATE DEFAULT SYSDATE ); COMMENT ON TABLE t_power IS '权限表'; COMMENT ON COLUMN t_power.power_id IS '权限ID'; COMMENT ON COLUMN t_power.power_name IS '权限名称';
    COMMENT ON COLUMN t_power.power_url IS '权限名称相对应的路径'; COMMENT ON COLUMN t_power.create_time '创建时间';

    2.4、用户角色(关系)表

    CREATE TABLE t_user_role(
      user_id NUMBER(10) NOT NULL,
      role_id NUMBER(10) NOT NULL ,
      create_time DATE DEFAULT SYSDATE
    );
    COMMENT ON TABLE t_user_role IS '用户角色(关系)表';
    COMMENT ON COLUMN t_user_role.user_id IS '用户ID';
    COMMENT ON COLUMN t_user_role.role_id IS '角色ID';
    COMMENT ON COLUMN t_user_role.create_time '创建时间';

    2.5、角色权限(关系)表

    CREATE TABLE t_role_power(
      role_id NUMBER(10) NOT NULL,
      power_id NUMBER(10) NOT NULL
    );
    COMMENT ON TABLE t_role_power IS '角色权限(关系)表';
    COMMENT ON COLUMN t_role_power.role_id IS '角色ID';
    COMMENT ON COLUMN t_role_power.power_id IS '权限ID';
    COMMENT ON COLUMN t_role_power.create_time '创建时间';
    创建完以上几张表之后
    进行登录的操作
    登录存cookie或session根据name或id查询此用户的权限 然后根据对应权限展示对应信息
    查询sql
    select * from power //权限表表名
    where power_id //权限表id
    in(select power_id from role_power where role_id in (select role_id from user_role where user_id = 1))
    还不完善,,后续改进


  • 相关阅读:
    中南财经政法大学深圳校友会政法分会上线
    我们为什么需要校友录 人脈存摺
    北京印刷学院校友录试运行
    南京理工大学校友会正式上线
    我们为什么需要校友录 校友录的传播学解读
    CC校友录贴吧 CCBarV0908 正式发布
    我们为什么需要校友录 快捷的校友信息云图
    我们为什么需要校友录 精英圈子准入证 一辈子的学分
    我们为什么需要校友录 某某大学深圳校友录年底盘点
    我们为什么需要校友录 又到一年毕业时毕业感怀文集
  • 原文地址:https://www.cnblogs.com/dbwen/p/8335300.html
Copyright © 2011-2022 走看看