一步步教你如何用疯狂.NET架构中的通用权限系统 -- 分级管理

简介:
   例如我们公司是有几百个员工的大型IT上市公司,在北京、宁波、杭州都有规模比较大的分公司,在这个规模的集团里总公司的管理员根本没精力去管里各个分公司的员工的详细权限等,说白了,他也不清楚分公司的具体情况,他又不是千里眼,最熟悉分公司运作实际情况的还是属于在分公司工作的员工,当然我们分公司也有专门管人事方面的人力资源管理专员,分公司也进行自主招聘工作,当然分公司都是各管理各的分公司,不大会有A分公司的人去管理B分公司的事务的情况,当然也不排除特殊兼职情况。
    有些大型的管理类软件系统需要一个分级管理授权的功能,被设定权限的人, 只能在指定的范围内有某些相应的权限 ,若无法集中制管理那就只好选择分布式管理了,分布式管理的效率也会很高,更及时更准确一些。
    说的再俗一些,就是他有员工管理的权限,但是不能管理集团公司的所有的员工,只能管理某个分公司的员工,或者某个部门的员工,这样就更容易懂了。

    具体管理操作在通用权限软件中的配置如下操作界面:

1:首先需要在配置文件里告诉系统,我的软件系统是需要有分级授权功能,当然并不是所有的系统都需要这么复杂的功能,这个也是只设置一次就可以了,不是每次操作都要这么设置。



2:超级管理员是整个系统的入口,这个用户是系统默认的用户,拥有所有的权限,拥有管理所有数据的权限。


3:我在用户管理里,设置某个员工的权限,例如我们要设置吉日嘎拉的权限-“系统管理”的范围,他能管理哪些组织机构、能管理哪些角色等等,把他的管理范围给限制住,只能在指定的范围内进行管理。


3:用“吉日嘎拉”帐号登录系统,看他能管理哪些数据?


4:接着在用这个账户进入系统管理,那就只能管理指定的那些角色,其他角色就不能管理了。


5:进入组织机构管理页面,也就只能管理那么几个被指定的组织机构了,你自己动手实现,会不太容易的,呵呵。


6:进入职员管理页面,也就只能管理那么几个被指定的组织机构里的职员了,管理的范围被限制住了。


[ 总结 ]
   其实不管哪个功能,未必是非常难实现的,但是你自己动手实现才会发现会遇到很多问题,还要考虑多种数据库的兼容性、同一个程序页面里实现多种功能的兼容性,代码会越写越复杂、方法会越写越多、运行起来会越来越慢、实现的功能会越来越不稳定,前后思路冲突混乱的局面会产生。
   当时为了实现这些功能,足足测试了2个月,所有的功能才全部稳定下来,设计思路也严谨了,逐渐变成了一个经得起考验的功能模块。
   这一节讲了分级管理,下一节接着讲分级授权、接着再讲分级管理+分级授权的组合授权模式,系统不是说用C\S实现了就落后了,B\S实现了就先进了,其实更重要的设计思路、管理思想、开发架构经验,例如你有B\S的需求愿意花钱购买软件,那也很快就能实现B\S的一整套完美实现,每个人想要做的事情千头万绪,总不能把其中的每个事情都去做了,只能先去做那些经济效益最好的,再接着去做对将来的定位目标吻合的事儿。
   
   希望以上文章,能对初学者有所帮助,我折腾过的很可能也是你不远的将来马上要接着折腾的事情。

IT软件创业之 -- 培训费风波 (赚钱不容易、创业不容易)
IT软件创业之 -- 小软件项目也有风险、也会失败、也会损兵折将

IT软件创业之 -- 电脑设备买过来都是钱,卖出去都是废铁





本文转自 jirigala 51CTO博客,原文链接:http://blog.51cto.com/2347979/448296,如需转载请自行联系原作者

相关文章
|
16天前
|
关系型数据库 C# 数据库
.NET 8.0 开源在线考试系统(支持移动端)
【10月更文挑战第27天】以下是适用于 .NET 8.0 的开源在线考试系统(支持移动端)的简介: 1. **基于 .NET Core**:跨平台,支持多种数据库,前后端分离,适用于多操作系统。 2. **结合 Blazor**:使用 C# 开发 Web 应用,支持响应式设计,优化移动端体验。 3. **基于 .NET MAUI**:跨平台移动应用开发,一套代码多平台运行,提高开发效率。 开发时需关注界面设计、安全性与稳定性。
|
23天前
|
Windows
.NET 隐藏/自定义windows系统光标
【10月更文挑战第20天】在.NET中,可以使用`Cursor`类来控制光标。要隐藏光标,可将光标设置为`Cursors.None`。此外,还可以通过从文件或资源加载自定义光标来更改光标的样式。例如,在表单加载时设置`this.Cursor = Cursors.None`隐藏光标,或使用`Cursor.FromFile`方法加载自定义光标文件,也可以将光标文件添加到项目资源中并通过资源管理器加载。这些方法适用于整个表单或特定控件。
|
2月前
|
JSON 安全 数据安全/隐私保护
从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用
【9月更文挑战第22天】在.NET 8中,从零开始搭建权限管理系统并使用JWT(JSON Web Tokens)创建Token是关键步骤。JWT是一种开放标准(RFC 7519),用于安全传输信息,由头部、载荷和签名三部分组成。首先需安装`Microsoft.AspNetCore.Authentication.JwtBearer`包,并在`Program.cs`中配置JWT服务。接着,创建一个静态方法`GenerateToken`生成包含用户名和角色的Token。最后,在控制器中使用`[Authorize]`属性验证和解析Token,从而实现身份验证和授权功能。
116 3
|
27天前
|
存储 消息中间件 前端开发
.NET常见的几种项目架构模式,你知道几种?
.NET常见的几种项目架构模式,你知道几种?
|
3月前
|
设计模式 存储 前端开发
揭秘.NET架构设计模式:如何构建坚不可摧的系统?掌握这些,让你的项目无懈可击!
【8月更文挑战第28天】在软件开发中,设计模式是解决常见问题的经典方案,助力构建可维护、可扩展的系统。本文探讨了.NET中三种关键架构设计模式:MVC、依赖注入与仓储模式,并提供了示例代码。MVC通过模型、视图和控制器分离关注点;依赖注入则通过外部管理组件依赖提升复用性和可测性;仓储模式则统一数据访问接口,分离数据逻辑与业务逻辑。掌握这些模式有助于开发者优化系统架构,提升软件质量。
52 5
|
3月前
|
XML 开发框架 .NET
.NET框架:软件开发领域的瑞士军刀,如何让初学者变身代码艺术家——从基础架构到独特优势,一篇不可错过的深度解读。
【8月更文挑战第28天】.NET框架是由微软推出的统一开发平台,支持多种编程语言,简化应用程序的开发与部署。其核心组件包括公共语言运行库(CLR)和类库(FCL)。CLR负责内存管理、线程管理和异常处理等任务,确保代码稳定运行;FCL则提供了丰富的类和接口,涵盖网络、数据访问、安全性等多个领域,提高开发效率。此外,.NET框架还支持跨语言互操作,允许开发者使用C#、VB.NET等语言编写代码并无缝集成。这一框架凭借其强大的功能和广泛的社区支持,已成为软件开发领域的重要工具,适合初学者深入学习以奠定职业生涯基础。
99 1
|
3月前
|
C# Windows 开发者
超越选择焦虑:深入解析WinForms、WPF与UWP——谁才是打造顶级.NET桌面应用的终极利器?从开发效率到视觉享受,全面解读三大框架优劣,助你精准匹配项目需求,构建完美桌面应用生态系统
【8月更文挑战第31天】.NET框架为开发者提供了多种桌面应用开发选项,包括WinForms、WPF和UWP。WinForms简单易用,适合快速开发基本应用;WPF提供强大的UI设计工具和丰富的视觉体验,支持XAML,易于实现复杂布局;UWP专为Windows 10设计,支持多设备,充分利用现代硬件特性。本文通过示例代码详细介绍这三种框架的特点,帮助读者根据项目需求做出明智选择。以下是各框架的简单示例代码,便于理解其基本用法。
132 0
|
3月前
|
前端开发 数据安全/隐私保护 UED
.NET 8 通用权限框架 前后端分离,开箱即用
【8月更文挑战第1天】基于.NET 8 的通用权限框架,采用前后端分离设计,实现真正的开箱即用!无需繁琐配置,一键启动权限管理新体验。利用.NET 8 的高性能与稳定性,结合灵活的前后端开发模式,显著提升开发效率,缩短项目周期。无论大小项目,皆能轻松应对,立即体验高效开发的新篇章!
|
4月前
|
Cloud Native Devops 数据库
云原生架构:未来软件开发的引擎深入理解操作系统的虚拟内存管理
【7月更文挑战第30天】在这篇文章中,我们将深入探讨云原生架构的概念,以及它如何改变软件开发的世界。我们将从云原生的基本概念开始,然后深入到它的关键技术和实践,最后讨论它对软件开发的未来影响。无论你是软件开发者,还是IT专业人士,这篇文章都将为你提供深入理解和掌握云原生架构的重要信息。 【7月更文挑战第30天】在数字世界的构建中,虚拟内存是操作系统不可或缺的一环。本文将探索虚拟内存的核心概念、工作机制及其对现代计算环境的重要性,同时揭示其背后的技术细节和面临的挑战。
40 3
|
4月前
|
机器学习/深度学习 SQL 自然语言处理
现代深度学习框架构建问题之深度学习通用架构的定义如何解决
现代深度学习框架构建问题之深度学习通用架构的定义如何解决
49 3
下一篇
无影云桌面