- 浏览: 693957 次
- 性别:
- 来自: 长沙
文章分类
- 全部博客 (364)
- quick start (57)
- bboss aop (43)
- bboss mvc (48)
- bboss persistent (96)
- bboss taglib (30)
- bboss event (10)
- bbossgroups (52)
- bboss (32)
- bboss会话共享 (17)
- bboss rpc (7)
- bboss 国际化 (5)
- bboss 序列化 (9)
- bboss cxf webservice (8)
- bboss hessian (3)
- bboss 安全认证SSO (15)
- bboss 工作流 (6)
- 平台 (18)
- bboss quartz (3)
- 杂谈 (5)
- 大数据 (1)
- bboss elastic (24)
- bboss http (1)
- bboss kafka (1)
- Elasticsearch Scroll和Slice Scroll查询API使用案例 (1)
最新评论
-
qianhao123:
...
采用gradle构建和发布bboss方法介绍 -
qianhao123:
[img][/img]
采用gradle构建和发布bboss方法介绍 -
yin_bp:
欢迎大家参与working
高性能elasticsearch ORM开发库使用介绍 -
qq641879434:
万分感谢
bboss 持久层sql xml配置文件编写和加载方法介绍 -
yin_bp:
qq641879434 写道怎么设置配置文件 可以查看执行的S ...
bboss 持久层sql xml配置文件编写和加载方法介绍
新版本平台登录插件开发和配置
编写自己的插件,以便在登录后执行相应的操作:
写好自己的登录插件后,就可以修改文件resources/config-manager.xml的内容:
为:
即可。
备注
平台后台java程序中获取当前登录用户会话对象及用户属性方法:
获取用户登录信息
新版平台获取用户
同时系统可以扩展自己的用户loginmodule,在buildCallback方法中添加自己的用户属性。
2.老版本平台登录插件开发和配置
编写自己的插件,以便在登录后执行相应的操作:
写好自己的登录插件后,就可以修改文件resources/config-manager.xml的内容:
为:
即可。
备注
平台后台java程序中获取当前登录用户会话对象及用户属性方法:
获取用户登录信息
老版本平台
accesscontroler.getUserAttribute能够获取到的所有默认属性清单:
同时系统可以扩展自己的用户loginmodule,在buildCallback方法中添加自己的用户属性。
bboss为了方便系统在jsp页面上获取当前用户的会话属性,特意定义了一个accesscontrol标签,使用方法如下:
先在jsp头部导入标签:
接着就可以使用标签了:
检查资源操作权限的方法:
编写自己的插件,以便在登录后执行相应的操作:
public class TicketUserPasswordLoginModule extends UserPasswordLoginModule { private static Logger logger = Logger.getLogger(TicketUserPasswordLoginModule.class); @Override protected void buildCallback(CheckCallBackWrapper checkCallBack, User user, String userName, String password, String password_i, Organization org) throws ManagerException { super.buildCallback(checkCallBack, user, userName, password, password_i, org); try { //dosomething here 业务 //获取业务信息设置到会话对象中(登录时可以在这里将登录的酒店信息设置到会话属性中) String ticket = AppHelper.getTicket(userName, user.getUserWorknumber()); checkCallBack.setUserAttribute("ticket", ticket); //系统中获取ticket对象的方法: AccessControl accesscontroler = AccessControl.getAccessControl(); String ticket_ = accesscontroler.getUserAttribute("ticket"); } catch (Exception e) { logger.error(e); } } /** * 重置用户属性 * 业务中使用方法:AccessControl.getAccessControl().resetUserAttribute("hotelcode"); */ @Override public void resetUserAttribute(HttpServletRequest request, CheckCallBack checkCallBack, String userAttribute) { String userName = (String)checkCallBack.getUserAttribute("userAccount"); String userAttributevalue = "";//........;//获取最新的属性值 checkCallBack.setUserAttribute(userAttribute, userAttributevalue);//更新属性值 // TODO Auto-generated method stub //super.resetUserAttribute(request, checkCallBack, userAttribute); } /** * 更新用户会话属性,酒店切换时可以调用下面的方法更新登录的酒店信息: * 业务中调用方法:AccessControl.getAccessControl().resetUserAttributes(); */ @Override public void resetUserAttributes(HttpServletRequest request, CheckCallBack checkCallBack) { //根据需要更新属性值 try { String userName = (String)checkCallBack.getUserAttribute("userAccount"); String userWorknumber = (String)checkCallBack.getUserAttribute("userWorknumber"); String ticket = AppHelper.getTicket(userName, userWorknumber); checkCallBack.setUserAttribute("ticket", ticket); } catch (Exception e) { logger.error(e); } } }
写好自己的登录插件后,就可以修改文件resources/config-manager.xml的内容:
<loginModule name="console" controlFlag="required" debug="true" registTable="DB" class="org.frameworkset.platform.security.authenticate.UserPasswordLoginModule" />
为:
<loginModule name="console" controlFlag="required" debug="true" registTable="DB" class="com.bboss.application.util.TicketUserPasswordLoginModule" />
即可。
备注
平台后台java程序中获取当前登录用户会话对象及用户属性方法:
com.frameworkset.platform.security.AccessControl accesscontroler = com.frameworkset.platform.security.AccessControl.getAccessControl(); String userID = accesscontroler.getUserID();//获取用户id String userName = accesscontroler.getUserName();//获取用户中文名 accesscontroler.getUserAttribute(userAttribute) String worknumber = accesscontroler.getUserAttribute("userWorknumber");//获取用户工号 String fullorgjob = accesscontroler.getUserAttribute("fullorgjob");//获取用户带层级的机构岗位信息 String orgjob = accesscontroler.getUserAttribute("orgjob");//获取用户直属机构岗位信息
获取用户登录信息
新版平台获取用户
userAccount:用户账号 userID:用户唯一标识 depart:部门名称 departId:部门id job:用户岗位信息 title:中文名称(userAccount); userName:用户中文名称 userSex:用户性别 worknumber:工号 telphone:手机号码 userLeaderid:主管id userLeaderName:主管名称 userLeaderAccount:主管账号
同时系统可以扩展自己的用户loginmodule,在buildCallback方法中添加自己的用户属性。
2.老版本平台登录插件开发和配置
编写自己的插件,以便在登录后执行相应的操作:
package com.bboss.application.util; import javax.servlet.http.HttpServletRequest; import org.apache.log4j.Logger; import com.frameworkset.platform.security.AccessControl; import com.frameworkset.platform.security.authentication.CheckCallBack; import com.frameworkset.platform.security.authentication.CheckCallBackWrapper; import com.frameworkset.platform.sysmgrcore.authenticate.UserPasswordLoginModule; import com.frameworkset.platform.sysmgrcore.entity.Organization; import com.frameworkset.platform.sysmgrcore.entity.User; import com.frameworkset.platform.sysmgrcore.exception.ManagerException; public class TicketUserPasswordLoginModule extends UserPasswordLoginModule { private static Logger logger = Logger.getLogger(TicketUserPasswordLoginModule.class); @Override protected void buildCallback(CheckCallBackWrapper checkCallBack, User user, String userName, String password, String password_i, Organization org) throws ManagerException { super.buildCallback(checkCallBack, user, userName, password, password_i, org); try { //dosomething here 业务 //获取业务信息设置到会话对象中(登录时可以在这里将登录的酒店信息设置到会话属性中) String ticket = AppHelper.getTicket(userName, user.getUserWorknumber()); checkCallBack.setUserAttribute("ticket", ticket); //系统中获取ticket对象的方法: AccessControl accesscontroler = AccessControl.getAccessControl(); String ticket_ = accesscontroler.getUserAttribute("ticket"); } catch (Exception e) { logger.error(e); } } /** * 重置用户属性 * 业务中使用方法:AccessControl.getAccessControl().resetUserAttribute("hotelcode"); */ @Override public void resetUserAttribute(HttpServletRequest request, CheckCallBack checkCallBack, String userAttribute) { String userName = (String)checkCallBack.getUserAttribute("userAccount"); String userAttributevalue = "";//........;//获取最新的属性值 checkCallBack.setUserAttribute(userAttribute, userAttributevalue);//更新属性值 // TODO Auto-generated method stub //super.resetUserAttribute(request, checkCallBack, userAttribute); } /** * 更新用户会话属性,酒店切换时可以调用下面的方法更新登录的酒店信息: * 业务中调用方法:AccessControl.getAccessControl().resetUserAttributes(); */ @Override public void resetUserAttributes(HttpServletRequest request, CheckCallBack checkCallBack) { //根据需要更新属性值 try { String userName = (String)checkCallBack.getUserAttribute("userAccount"); String userWorknumber = (String)checkCallBack.getUserAttribute("userWorknumber"); String ticket = AppHelper.getTicket(userName, userWorknumber); checkCallBack.setUserAttribute("ticket", ticket); } catch (Exception e) { logger.error(e); } } }
写好自己的登录插件后,就可以修改文件resources/config-manager.xml的内容:
<loginModule name="console" controlFlag="required" debug="true" registTable="DB" class="com.frameworkset.platform.sysmgrcore.authenticate.UserPasswordLoginModule" />
为:
<loginModule name="console" controlFlag="required" debug="true" registTable="DB" class="com.bboss.application.util.TicketUserPasswordLoginModule" />
即可。
备注
平台后台java程序中获取当前登录用户会话对象及用户属性方法:
com.frameworkset.platform.security.AccessControl accesscontroler = com.frameworkset.platform.security.AccessControl.getAccessControl(); String userID = accesscontroler.getUserID();//获取用户id String userName = accesscontroler.getUserName();//获取用户中文名 accesscontroler.getUserAttribute(userAttribute) String worknumber = accesscontroler.getUserAttribute("userWorknumber");//获取用户工号 String fullorgjob = accesscontroler.getUserAttribute("fullorgjob");//获取用户带层级的机构岗位信息 String orgjob = accesscontroler.getUserAttribute("orgjob");//获取用户直属机构岗位信息
获取用户登录信息
老版本平台
accesscontroler.getUserAttribute能够获取到的所有默认属性清单:
userName:用户真实名称 userID:用户id logincount:登录次数 userAccount:用户帐号 remark1:备注1 remark2:备注2 remark3:备注3 remark4:备注4 remark5:备注5 userAddress:地址 userEmail:邮箱 userFax:传真 userHometel:家庭电话 userIdcard:身份证 userMobiletel1:手机1 userMobiletel2:手机2 userOicq:oicq userPinyin:用户名拼音 userPostalcode:邮编 userSex:性别 userType:用户类型 userWorknumber:工号 userWorktel:工作电话 userBirthday:生日 userRegdate:注册日期 userSn:用户排序号 userIsvalid:用户是否有效 orgjob:用户直属机构岗位信息 fullorgjob:用户带层级的机构岗位信息 CHARGEORGID:com.frameworkset.platform.sysmgrcore.entity.Organization用户所属机构对象
同时系统可以扩展自己的用户loginmodule,在buildCallback方法中添加自己的用户属性。
bboss为了方便系统在jsp页面上获取当前用户的会话属性,特意定义了一个accesscontrol标签,使用方法如下:
先在jsp头部导入标签:
<%@ taglib uri="/WEB-INF/sany-taglib.tld" prefix="sany"%>
接着就可以使用标签了:
<sany:accesscontrol userattribute="userName"/> <sany:accesscontrol userattribute="userAccount"/> <sany:accesscontrol userattribute="orgjob"/>
检查资源操作权限的方法:
boolean hasaddpermission = accesscontroler.checkPermission("testid",//资源id "add",//资源操作 "testresource"//资源类型 ); boolean hasupdatepermission = accesscontroler.checkPermission("testid","write","testresource"); boolean hasdeletepermission = accesscontroler.checkPermission("testid","delete","testresource"); boolean hasreadpermission = accesscontroler.checkPermission("testid","read","testresource"); boolean hasglobaltestreadpermission = accesscontroler.checkPermission("globaltest","read","testresource"); boolean hasglobaltestdeletepermission = accesscontroler.checkPermission("globaltest","delete","testresource");
发表评论
-
bboss平台部门管理员配置指南
2018-01-21 22:39 1245bboss平台部门管理员配置指南 第一部分 为部门分配管理员 ... -
bboss新版开发平台开发环境搭建和代码生成工具使用视频教程
2017-02-12 09:31 4477bboss新版开发平台开发环境搭建和代码生成工具使用视频教程 ... -
如何快速高效地开发和调试基于gradle管理的web应用
2016-09-28 23:39 1471本文探讨如何高效快速地开发和调试基于gradle管理的web应 ... -
bboss平台子系统切换方法
2016-06-29 20:24 1043bboss平台子系统切换方法 用户登录bboss平台后,可以 ... -
bboss 票据实现系统SSO功能介绍
2016-03-10 16:50 1693测试环境应用账号: app ... -
平台主要配置文件一览表
2016-01-31 22:58 981平台主要配置文件一览表 相关文档的 ... -
平台系统管理用户和机构以及用户角色初始化操作指南
2015-12-30 22:17 2162摘要 平台系统管理用户和机构以及用户角色初始化操作指南 ... -
bboss平台子系统配置及系统登录以及其它常用配置介绍
2015-09-29 12:16 2151bboss平台子系统配置及系统登录以及其它常用配置介绍 bb ... -
bboss平台demo开发详解
2015-09-07 22:25 1213bboss,开发平台,demo详解 ... -
bboss内容管理模板宏用法介绍
2015-08-11 22:41 833bboss内容管理模板宏用法介绍 本文介绍bboss内容管理模 ... -
bboss内容管理outline标签嵌套使用方法示例
2015-08-11 22:26 792bboss内容管理outline标签嵌套使用方法示例 bbo ... -
基于bboss开发平台eclipse开发工程生成工具介绍
2015-07-26 22:17 5743基于bboss开发平台eclipse开发工程生成工具介绍 一 ... -
平台中用户查找、用户角色查询、用户权限查询、部门管理设置方法
2015-03-25 15:33 14751.平台中用户查找 菜单导航路径 系统管理-权限管理-用户和 ... -
平台自定义资源权限控制使用方法
2014-10-23 11:17 1688本文以一个简单的实例来介绍bboss平台自定义资源权限控制使用 ... -
平台字典标签使用方法
2014-10-16 13:03 1325平台字典标签使用方法: 导入标签定义文件: <%@ ta ... -
平台登录账号口令加密机制设置方法
2014-10-13 16:35 1143平台登录账号口令加密机制设置方法 平台加密机制: ... -
平台日志组件使用介绍
2014-09-30 08:52 931平台日志组件使用介绍 需要导入的类: import com.f ...
相关推荐
在开始dede插件开发之前,确保你已安装了dede CMS,并对其基本结构和工作原理有一定了解。你需要一个本地开发环境,包括PHP运行环境(如XAMPP或WAMP)、文本编辑器(如Visual Studio Code或Sublime Text)以及对PHP...
以下是对"android插件开发配置"的详细解析: 1. **Android插件化原理**: - Android插件化开发基于组件化思想,主要涉及四大组件(Activity、Service、BroadcastReceiver、ContentProvider)的隔离和动态加载。...
### Eclipse插件开发指南...对于希望深入了解Eclipse插件开发的读者来说,《Eclipse插件开发指南》是一本不可多得的好书,它详细介绍了Eclipse插件开发的各个方面,包括基础知识、开发流程和技术细节等,非常值得一读。
Openfire 安装配置和插件开发详解 Openfire 是一个基于 XMPP 协议的即时通信服务器,可以实现实时的聊天服务。在本文中,我们将详细介绍 Openfire 的安装和配置过程,并探讨如何使用 Eclipse 进行插件开发。 一、...
- **实现业务逻辑**:在插件项目中编写具体业务代码,实现插件接口,并配置好SpringBoot的自动配置和依赖注入。 - **插件打包**:根据框架要求打包插件,通常可以是JAR、WAR或其他格式,确保包含所有运行时依赖。 ...
本实例以"谷歌插件开发实例(CSDN快速登陆)"为主题,将介绍如何构建一个能够帮助用户便捷登录CSDN(China Software Developer Network)的Chrome扩展。 首先,了解谷歌插件的基本结构至关重要。一个基本的Chrome插件...
金蝶K3BOS插件开发入门教程是金蝶K3业务操作系统(BOS)的扩展开发指南,本文将指导读者从零开始学习BOS插件开发的基本流程和步骤。 一、BOS插件开发的基本概念 BOS插件是一种基于VB语言开发的动态链接库(DLL)...
Eclipse是一款广泛使用的开源集成开发环境(IDE),其...通过深入学习和实践Eclipse插件开发教程PPT中的内容,开发者不仅可以提升自身技能,还能更好地利用Eclipse平台满足特定开发需求,实现个性化和高效的开发环境。
本文将详细介绍如何使用 SuperMap 进行插件开发,包括插件的创建、配置、开发和测试等方面。 创建插件 首先,需要在 Visual Studio 中创建一个新的插件项目,选择 SuperMap Deskpro Plugin 作为目标框架,并命名为...
本文将深入探讨Eclipse插件开发的相关知识点,结合提供的"全书分为4篇共24章"的学习笔记和源码,帮助你更全面地理解和实践Eclipse插件开发。 第一篇:基础篇 在这一篇中,你将学习到Eclipse插件开发的基础知识,...
在IT行业中,K3 WISE BOS(Business Operating System)...在"K3 WISE BOS插件开发培训(2018版)"中,学员将通过理论学习和实践操作,全面掌握上述知识点,具备独立开发和维护BOS插件的能力,为企业信息化建设贡献价值。
本指南主要聚焦于金蝶云星空的二次开发,特别是插件开发的学习,帮助开发者深入理解并掌握如何在金蝶云星空平台上构建个性化的业务功能。 一、插件开发基础 1. 插件定义:插件是金蝶云星空系统中的一个重要组成...
### Kettle插件开发 #### 一、Kettle简介与组件 Kettle,又称为PDI(Pentaho Data Integration),是一款开源的数据集成工具,它主要用于数据抽取、转换和加载(ETL)。Kettle最初由一家名为Pentaho的公司开发,并...
本教程将专注于自定义语言的插件开发,特别是如何利用properties文件和customLanguage API来实现这一目标。以下是一些核心知识点: 1. **IntelliJ IDEA 插件开发环境搭建** 在开始开发之前,首先需要安装IntelliJ ...
k3wise插件开发 Kingdee Wise 插件开发手册提供了详细的指导,帮助...通过对插件开发环境、插件建立、代码演示、插件事件处理和插件测试和部署的详细解释,我们可以更好地理解 Kingdee Wise 插件开发的整个过程。
本文档“IntelliJ IDEA插件开发基础(中文)”将指导开发者如何利用其开放的API和插件系统来扩展IDE的功能。 首先,插件开发的基础在于理解IntelliJ IDEA的架构。IDE是基于插件构建的,每个功能模块都是一个独立的...
Eclipse提供了一些内置的插件开发工具,如PDE(Plug-in Development Environment),用于创建、编辑和管理插件项目,以及透视图和视图的开发。 8. **命令框架**: Eclipse的命令框架允许开发者定义可执行的动作,...
Eclipse插件开发是为这个平台添加新功能或定制工作环境的关键技术。以下将详细介绍Eclipse插件开发的相关知识点。 一、Eclipse插件体系结构 Eclipse基于OSGi(Open Service Gateway Initiative)框架构建,它将整个...
通过学习《Eclipse插件开发方法与实战》,开发者可以掌握插件开发的核心知识,并能够根据自己的需求开发出实用的插件,从而提升个人和团队的开发效率,丰富Eclipse这一强大的开发平台。同时,对于有志于参与开源项目...
本教程提供了相关的资源链接,如 Chrome 官方插件开发文档、360 极速浏览器应用开放平台的中文开发文档等。 本教程旨在为开发者提供一个快速入门 Chrome 插件开发的指南,涵盖了插件开发的基本概念、Manifest 文件...