当前位置: 首页 > news >正文

两个域名指向同一个网站东莞百度快速优化排名

两个域名指向同一个网站,东莞百度快速优化排名,wordpress模板友情链接添加,怎么查看网站是哪家公司做的将权限信息存储在数据库中#xff0c;支持动态调整。根据用户所属的角色、特定的功能模块#xff0c;动态加载权限” 1. 数据库设计 根据这种需求#xff0c;可以通过以下表设计#xff1a; 用户表 (Users)#xff1a;存储用户信息。角色表 (Roles)#xff1a;存储角色…将权限信息存储在数据库中支持动态调整。根据用户所属的角色、特定的功能模块动态加载权限” 1. 数据库设计 根据这种需求可以通过以下表设计 用户表 (Users)存储用户信息。角色表 (Roles)存储角色信息。模块表 (Modules)存储系统的功能模块。权限表 (Permissions)存储权限信息。用户角色表 (UserRoles)存储用户和角色的关系一个用户对应一个角色。角色权限表 (RolePermissions)存储角色与权限的关系允许不同用户的权限定制。用户权限表 (UserPermissions)为每个用户定制权限可覆盖角色权限。 表结构 -- 用户表 CREATE TABLE Users (UserId INT PRIMARY KEY,UserName VARCHAR(100) );-- 角色表 CREATE TABLE Roles (RoleId INT PRIMARY KEY,RoleName VARCHAR(100) );-- 模块表 CREATE TABLE Modules (ModuleId INT PRIMARY KEY,ModuleName VARCHAR(100) );-- 权限表 CREATE TABLE Permissions (PermissionId INT PRIMARY KEY,PermissionName VARCHAR(100) );-- 用户角色表每个用户对应一个角色 CREATE TABLE UserRoles (UserId INT,RoleId INT,FOREIGN KEY (UserId) REFERENCES Users(UserId),FOREIGN KEY (RoleId) REFERENCES Roles(RoleId) );-- 角色权限表角色与权限的关系一个角色可以有多个权限 CREATE TABLE RolePermissions (RoleId INT,PermissionId INT,ModuleId INT,FOREIGN KEY (RoleId) REFERENCES Roles(RoleId),FOREIGN KEY (PermissionId) REFERENCES Permissions(PermissionId),FOREIGN KEY (ModuleId) REFERENCES Modules(ModuleId) );-- 用户权限表为用户定制权限覆盖角色权限 CREATE TABLE UserPermissions (UserId INT,PermissionId INT,ModuleId INT,FOREIGN KEY (UserId) REFERENCES Users(UserId),FOREIGN KEY (PermissionId) REFERENCES Permissions(PermissionId),FOREIGN KEY (ModuleId) REFERENCES Modules(ModuleId) );2. 权限加载逻辑 用户角色每个用户通过 UserRoles 表与一个角色关联。角色权限通过 RolePermissions 表为角色分配权限。用户权限通过 UserPermissions 表为用户定制权限覆盖角色的默认权限。 3. 权限查询 查询用户权限首先通过 UserRoles 获取该用户的角色再通过 RolePermissions 查询该角色的权限。然后如果该用户有自定义权限可以通过 UserPermissions 覆盖角色权限。 查询用户权限的顺序 查询用户所属角色。查询该角色的权限。查询该用户是否有自定义权限。 示例查询 -- 查询用户的角色 SELECT r.RoleId, r.RoleName FROM Users u JOIN UserRoles ur ON u.UserId ur.UserId JOIN Roles r ON ur.RoleId r.RoleId WHERE u.UserId UserId;-- 查询角色的权限 SELECT p.PermissionName FROM RolePermissions rp JOIN Permissions p ON rp.PermissionId p.PermissionId WHERE rp.RoleId RoleId AND rp.ModuleId ModuleId;-- 查询用户的自定义权限如果有 SELECT p.PermissionName FROM UserPermissions up JOIN Permissions p ON up.PermissionId p.PermissionId WHERE up.UserId UserId AND up.ModuleId ModuleId;4. C# 代码实现 获取用户权限 public class PermissionService {private string connectionString your_connection_string;// 获取用户权限public Liststring GetPermissionsByUserId(int userId, int moduleId){Liststring permissions new Liststring();using (SqlConnection connection new SqlConnection(connectionString)){connection.Open();// 获取用户角色string roleQuery SELECT r.RoleIdFROM Users uJOIN UserRoles ur ON u.UserId ur.UserIdJOIN Roles r ON ur.RoleId r.RoleIdWHERE u.UserId UserId;SqlCommand roleCommand new SqlCommand(roleQuery, connection);roleCommand.Parameters.AddWithValue(UserId, userId);int roleId (int)roleCommand.ExecuteScalar();// 获取角色权限string rolePermissionQuery SELECT p.PermissionNameFROM RolePermissions rpJOIN Permissions p ON rp.PermissionId p.PermissionIdWHERE rp.RoleId RoleId AND rp.ModuleId ModuleId;SqlCommand rolePermissionCommand new SqlCommand(rolePermissionQuery, connection);rolePermissionCommand.Parameters.AddWithValue(RoleId, roleId);rolePermissionCommand.Parameters.AddWithValue(ModuleId, moduleId);SqlDataReader reader rolePermissionCommand.ExecuteReader();while (reader.Read()){permissions.Add(reader.GetString(0)); // 角色权限}reader.Close();// 获取用户自定义权限如果有string userPermissionQuery SELECT p.PermissionNameFROM UserPermissions upJOIN Permissions p ON up.PermissionId p.PermissionIdWHERE up.UserId UserId AND up.ModuleId ModuleId;SqlCommand userPermissionCommand new SqlCommand(userPermissionQuery, connection);userPermissionCommand.Parameters.AddWithValue(UserId, userId);userPermissionCommand.Parameters.AddWithValue(ModuleId, moduleId);SqlDataReader userReader userPermissionCommand.ExecuteReader();while (userReader.Read()){permissions.Add(userReader.GetString(0)); // 用户自定义权限}}return permissions;} }public class AccessControlService {private PermissionService permissionService new PermissionService();// 检查用户是否有权限public bool CanAccessModule(int userId, int moduleId, string requiredPermission){Liststring permissions permissionService.GetPermissionsByUserId(userId, moduleId);return permissions.Contains(requiredPermission); // 判断用户是否拥有特定权限} }5. 总结 用户与角色的关系一个用户对应一个角色多个用户可以对应相同角色。角色与权限的关系角色通过 RolePermissions 表分配权限一个角色可以对应多个权限。用户自定义权限通过 UserPermissions 表为用户定制权限覆盖角色的默认权限。灵活的权限控制用户的权限不仅继承自角色还可以根据需要定制确保权限控制的灵活性。
http://www.eeditor.cn/news/125624/

相关文章:

  • 简述建设iis网站的基本过程wordpress 画展主题
  • c2c网站页面设计特点企业邮箱登录入口
  • 贵阳网站建asp做的网站数据库在哪里
  • 知名营销网站网页设计师网站大全
  • 有关设计的网站seo挖关键词
  • 成都网站建设前50强网站建设方案网站安全
  • 中铁建设集团门户网登录网站工作服定做厂家 成都
  • 展示型装饰网站模板下载中航鑫源建设集团有限公司网站
  • 高端定制网站速度公司网络组建方案设计
  • 在服务器网站上做跳转页面跳转汕头代理注册公司
  • 不能进入建设银行网站app平台搭建
  • 建设网站找哪家物流网站 源码
  • 网站 案例展示王建设医生个人网站
  • 小程序制作开发如意推莱芜seo
  • 网站统计代码怎么添加做个有用网站
  • 网站建设与维护书籍app开发费用一般多少钱
  • 中山网站建设托管wordpress的安装注意
  • 中国建设银行舟山分行网站有几家做网站的公司好
  • iis架设网站教程族谱网站建设方案
  • 网站建设在线视频网站被百度删除的原因
  • 食品公司网站源码京东购物平台
  • 如何招聘软件网站开发人员网页无法访问是什么意思
  • 免费网站建设联系电话很简单的网站
  • 网站开发私人培训梁平网站建设
  • 招标网站怎么做星级酒店网站建设公司
  • 免费网站建站排行榜网上做代销上哪个网站
  • 许昌网站建设哪家最好wordpress中home page
  • 无锡网站设网站 改版 建议
  • 网站设计论文参考文献开网店需要什么准备
  • 网站怎么重建wordpress汉化教程视频