RBAC原则       (1)最小权限原则之所以被RBAC所支持,是因为RBAC可以将其角色配置成其完成任务所需要的最小的权限集.       (2)责任分离原则可以通过调用相互独立互斥的角色来共同完成敏感的任务而体现,比如要求一个计帐员和财务管理员共参与同一过帐.       (3)数据抽象可以通过权限的抽象来体现,如财务操作用借款.存款等抽象权限,而不用操作系统提供的典型的读.写.执行权限.然而这些原则必须通过RBAC各部件的详细配置才能得以体现      RBAC(Role-Based…
敏捷开发体系   软件构件技术:所谓软件构件化,就是要让软件开发像机械制造工业一样,可以用各种标准和非标准的零件来进行组装.软件的构件化和集成技术的目标是:软件系统可以由不同厂商提供的,用不同语言开发的,在不同硬件平台上实现的软件构件,方便地.动态地集成.这些构件要求能互操作,它们可以放在本地的计算机上,也可以分布式地放置在网上异构环境下的不同结点上. 软件复用技术:软件复用就是将已有的软件成分用于构造新的软件系统.可以被复用的软件成分一般称作可复用构件,无论对可复用构件原封不动地使用还是作适当…
脚本管理组件用于管理系统查询脚本,由于数据查询的复杂性和可变性,平台规范要求使用查询使用建立在脚本管理器中的SQL语句.新增.更新.删除数据采用数据访问支持库API. 示例如下: 首先在脚本管理器中定义查询脚本,例如”2001”号脚本,调用方法ScriptById(int Id) 示例如下: Product product = Context.ScriptById().QuerySingle<Product>(); 或者 Product product = Context.ScriptById…
Agile.DataAccess.dll 文件为系统平台数据访问支持库,基于FluentData扩展重写,提供高效的性能与风格简洁的API,支持多种主流数据库访问. 当前市面上的 ORM 框架,如 Entity Framework 和 NHibernate,都过于复杂而且难于学习.此外,由于这些框架自身抽象的查询语言以及从数据库到 .NET 对象的映射太过麻烦,导致它们生成的 SQL 都很低效. Agile.DataAccess是一个轻量级框架,采用函数式编程风格以及简单的 API 并且很容易学…
所谓组件式开发平台,它所有的功能模块都是以组件的形式扩展的,下面我来演示一个简单的组件开发例程. Agile.Net开发管理平台项目,已经托管在开源中国码云平台(http://git.oschina.net) 登陆码云平台进入项目主页(http://git.oschina.net/MuAgile/AgileDevelop)即可浏览下载源代码. 1.开发环境搭建    软件安装请参考文章<Agile.Net 组件式开发平台 - 开发环境部署> 下载项目[AgileDevelop]->[附件…
平台介绍 Agile.Net 组件式开发平台是一款针对企业级产品的开发框架,平台架构基于SOA服务体系,多层组件式架构打造.平台提供企业应用开发所需的诸如ORM.IOC.WCF.EBS.SOA等分布式架构,消息总线.二级缓存.数据报表.代码生成.自动更新一系统的快速开发工具,涵盖开发过程中的设计.编码.集成.部署.运维等各个环节. Agile.Net 组件式开发平台是一款基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立…
首先讲一下概念,此驱动非彼驱动.在Agle.Net中我们将组件规划成两种类型,一种是基于业务的窗体组件,一种是提供扩展功能的驱动组件. 打个比方例如一般系统中需要提供身份证读卡功能,然而市面上有很多种身份证读卡器,我们无法约束客户都是用同一种读卡器,为了扩展性我们将身份证读卡功能封装为驱动组件. 那么是用不同的身份证读卡器设备,我们提供相应的封装实现就可以了.下面我来演示一个简单的驱动型组件开发例程. Agile.Net开发管理平台项目,已经托管在开源中国码云平台(http://git.osch…
在上一篇文章中已经讲解了组件的开发,这篇文章讲解平台服务开发. Agile.Net开发管理平台项目,已经托管在开源中国码云平台(http://git.oschina.net) 登陆码云平台进入项目主页(http://git.oschina.net/MuAgile/AgileDevelop)即可浏览下载源代码. 1.开发环境搭建    软件安装请参考文章<Agile.Net 组件式开发平台 - 开发环境部署> 下载项目[AgileDevelop]->[附件]中的数据库备份文件,恢复数据库到…
Agile.Report.dll 文件为平台数据报表支持库,基于FasstReport.Net扩展重写,提供了非常强大的自定义报表的功能使开发者为应用程序快速有效地生成报表.报表类库提供了创建报表所需的所有工具,包括报表引擎,报表设计工具,预览器,对话框设计工具等二次开发功能,是一款全方面的报表生成解决方案. 报表管理: 报表配置: 报表查询: 报表调用预览: 报表调用示例 //声明报表对象 var report = new Agile.Report.ReportEx(); //添加自定义数据源…
Agile.Debgu.exe 文件为平台文档中心应用程序,该程序集成了数据库结构文档查询.数据库结构文档浏览.实时系统日志监控等功能.  数据库结构文档浏览 数据库结构文档查询 系统平台日志监控…
应用服务器: 操作系统要求推荐Windows Server 2008,服务器硬件如果支持64位建议安装64位操作系统产品以最大化发挥服务器性能. 安装操作系统Windows Server 2008,其次对操作系统做必要安全设置,详情请咨询产品经销商.本项目基于.Net FrameWork 4.0开发,请首先安装.Net FrameWork 4.0运行框架,然后将平台服务端安装至D盘AgileServer文件夹内,运行AgileServer.exe,安装 ” Agile.Net 分布式服务端 -…
环境准备: Windows 7 (32/64) Windows Server 2008 (32/64) Microsoft SQL Server 2008 R2 (32/64) Microsoft Visual Studio 2013 Update DevExpress 16.1.4 .Net FrameWork 4.0 关于DevExpress的安装步骤: 1.安装VS2013(DevExpress最低支持的版本是2012). 2.安装DevExpress,安装时仅选择 WinForm Con…
什么是组件式开发: 组件式开发就是将单个组件组合起来,形成一个大的组件进行页面的开发完成 什么是复合型组件: 复合型组件就是将相同的功能写成一个公用的组件(单元组件),供其他组件使用,就类似于后台开发中写的一个公共类 什么是单元组件: 单元组件就是一个Vue文件,里面包含div,b,p等标签组成 如果一个项目中有多个相同的功能可以写成脚本形式如:js文件css文件.然后进行导入使用…
原文地址:JAVAWEB开发之权限管理(二)——shiro入门详解以及使用方法.shiro认证与shiro授权 以下是部分内容,具体见原文. shiro介绍 什么是shiro shiro是Apache的一个开源框架,它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权限授权.加密.会话管理等功能,组成了一个通用的安全认证框架.它可以实现如下的功能:1.验证用户2.对用户执行访问控制,如:判断用户是否具有角色admin,判断用户是否拥有访问的资源权限.3.在任何环境下使用SessionA…
1. 功能概述 关于PIE SDK的功能开发,在我们的博客上已经分门别类的进行了展示,点击PIESat博客就可以访问,为了初学者入门,本章节将对从PIE SDK组件式二次开发如何搭建界面.如何综合开发进行详细的讲解. 目录树图 2. 功能实现 2.1.界面搭建 最终的界面如下图所示: 图1最终结果图 2.1.1 新建项目 选择“Window窗体应用程序”,设置程序的名称和保存路径即可.(新建完成后可以将程序的窗体名称右键重命名为“FormMain”,,将窗体界面的属性的Text设置名称为“PIE…
了解FineUIMvc的都知道,FineUIMvc中采用了大量的IFrame框架,对于IFrame的优缺点网上也有很多的讨论,这里我要说它的一个优点“有助于隔离代码逻辑”,这也是FineUIMvc官网对它的描述.IFrame在网页上下文中是完全独立的,这样也就不存在了样式及脚本之间的冲突问题.但由于IFrame与上下文之间是隔离的,在交互上也给我们带来了一些不便. 在接下来的文章中,我将主要介绍如何使用TypeScript对FineUIMvc进行组件式开发,而这里的组件就是基于IFrame,同时…
随着智能手机及APP应用程序的普及,越来越多的企业和个人意识到APP的营销价值,出于对技术的敬畏,很多企业下意识认为开发APP是一个有难度的技术活,所以很多时候有心无力,也担心APP的后续的技术支持.内容管理.维护等问题. 现在是时候打消这种顾虑了,目前国内应用之星技术开发团队开发了一款手机应用开发平台,它能帮助企业创建简单APP应用的平台,通过这个平台,就算是一个对程序一窍不通的普通网民都可以很容易的创建一个企业的APP程序或者个人app,并可以对程序进行应用更新维护,开展营销等活动. 下面给…
最近在做公司内部的物流业务平台的权限管理,感触颇多.记录一下 权限管理分两部分:数据权限和操作权限. 数据权限: 这个是和用户相关的. 因为平台是多机构的,所以再考虑数据权限的时候,是按照机构来管理的,每个机构下对应的人员,只能查看到自己有权限的机构下的数据. 操作权限: 这个是和角色相关的. 每个用户登录进去,只能看到自己对应角色的菜单,每一次点击按钮,也会校验有没有操作权限. 实现原理大概是这样: 机构.菜单.按钮都作为资源. 为用户分配机构资源,为角色分配菜单资源,分配按钮资源. 然后每一…
初识组件 组件(Component)绝对是 Vue 最强大的功能之一.它可以扩展HTML元素,封装可复用代码.从较高层面讲,可以理解组件为自定义的HTML元素,Vue 的编译器为它添加了特殊强大的功能.所有的 Vue 组件同时也都是 Vue 的实例,因此可以接受相同的选项对象(除了一些特有的选项)并提供相同的生命周期函数. 再来回顾下 你也许不知道的Vuejs - 花式渲染目标元素 中的代码: 123 <div id="app1"> <helloworld/>&…
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vue 的官方调试工具 devtools extension,提供了诸如零配置的 time-travel 调试.状态快照导入导出等高级调试功能. 以上是vuex的官方文档对vuex的介绍,官方文档对vuex的用法进行了详细的说明.这里就不再细讲vuex的各个用法,写这篇博客的目的只是帮助部分同学更快地理解并上手vuex.…
在传统的前后端不分的开发中,权限管理主要通过过滤器或者拦截器来进行(权限管理框架本身也是通过过滤器来实现功能),如果用户不具备某一个角色或者某一个权限,则无法访问某一个页面. 但是在前后端分离中,页面的跳转统统交给前端去做,后端只提供数据,这种时候,权限管理不能再按照之前的思路来. 首先要明确一点,前端是展示给用户看的,所有的菜单显示或者隐藏目的不是为了实现权限管理,而是为了给用户一个良好的体验,不能依靠前端隐藏控件来实现权限管理,即数据安全不能依靠前端. 这点就像普通的表单提交一样,前端做数据…
---恢复内容开始--- 经过DyOS.BraveOS1.0再到BraveOS2.0,系统现在已经开发了下载. 我们的目标是,网页版操作系统,可以在线安装更新软件,并提供二次开发平台,提供基础的逻辑和控件,我们将在后期公开开发文档,如果您不会html5,不会自己写js插件,那么这将是您的福音,因为,这些事我们会为你来更新完善!您只管用就行,哈哈. 我们的系统不支持IE这个老东西,支持谷歌内核所有浏览器. 由于官方网站即将发布,将随官方网站和二次开发文档一起发布,请持续关注www.braveos.…
WebForm与Mvc 我简单说一下WebForm与Mvc,WebForm是微软很早就推出的一种WEB开发架构,微软对其进行了大量的封装,使开发人员可以像开发桌面程序一样去开发WEB程序,虽然开发效率得到了提高,但可控性会一差.而MVC框架的出现,使WEB开发又回到了请求与响应的开发模式下,可控性增强了,但开发难度也增加了,所以说在架构的选择上没有好与坏,只有适合自己的才是最好的. FineUIMvc与IFrame 虽然FineUIMvc基于MVC架构,但是也沿用了WebForm页面开发的方式,…
前言 研究了下别人的 vue 多页面框架, 都是直接复制 package.json 文件,然后在本地 npm install 一下即可, 或者使用官网 vue-cli 工具生成一个项目, 觉得这样虽然看的懂, 但是记不住, 因此有必要从零开始搭建一个使用 .vue 作为组件的项目练习一下, 因此有了这个项目. 既然使用了 .vue 组件, 就不能像之前使用 jQuery 一样把 vue.js 引入页面中, 而是使用配套的 webpack + babel + 各种 loader 工具编译 .vue…
前言 vue作为一个轻量级前端框架,其核心就是组件化开发.我们一般常用的是用脚手架vue-cli来进行开发和管理,一个个组件即为一个个vue页面,这种叫单文件组件.我们在引用组件之时只需将组件页面引入,再注册即可使用.那么不用脚手架,如何进行组件开发呢,本文先介绍一下基础知识吧. 组件使用流程1.组件构建1.1 extend构建法调用Vue.extend()方法,构建一个名字为myCom的组件 var myCom = Vue.extend({ template: '<div>这是我的组件<…
什么是 git-flow? Git Flow是一套使用Git进行源代码管理时的一套行为规范 主分支Master 首先,代码库应该有一个.且仅有一个主分支.所有提供给用户使用的正式版本,都在这个主分支上发布.Git主分支的名字,默认叫做Master.它是自动建立的,版本库初始化以后,默认就是在主分支在进行开发. 开发分支Develop 主分支只用来分布重大版本,日常开发应该在另一条分支上完成.我们把开发用的分支,叫做Develop 这个分支可以用来生成代码的最新隔夜版本(nightly).如果想正…
rbac: Role_Based Access Control,基于角色的权限控制 权限:一个包含正则表达式 的url就是一个权限 目录结构: rbac这个app中的文件代码如下: rbac/models.py from django.db import models # Create your models here. class User(models.Model): # 这个User要和 app 中的 用户信息表 一对一关联: from rbac.models import * name…
2.1               访问控制安全规则 1 访问控制必须只能在服务器端执行. 2 只通过session来判定用户的真实身份,避免使用其它数据域的参数(比如来自cookie.hidden域.form和URL参数等)来做访问控制. 3 对web/应用服务器进行安全配置以防止用户对静态文件的无鉴权访问(参考附录11.6). 4 对每一个请求页面都执行严格的访问控制检查(参考附录11.2). 5 应建立集中式的权限验证接口(参考附录) 2.2               纵向越权 简要描述…
事件中心 这个可以是一个空的全局的Vue实例,其他的组件利用这个实例emit和on自定义事件,这样组件定义了自己的事件处理方法. import Vue from 'Vue' window.eventHub = new Vue(); 事件监听和注销监听 事件监听应在根组件的created钩子函数中进行,在组件销毁前应注销事件监听 //hook created: function () { //listen event window.eventHub.$on('switchComments',thi…
21.1   数据服务 21.1.1基本操作功能 Phenixヾ的数据服务,提供了如下的基本操作: 功能 Type URI 参数 完整获取实体集合对象 GET api/Data 分页获取实体集合对象 GET api/Data pageSize=[分页大小]&pageNo=[分页号] 按条件获取实体集合对象 GET api/Data id=[条件对象] 按条件分页获取实体集合对象 GET api/Data id=[条件对象]&pageSize=[分页大小]&pageNo=[分页号]…