ralasafe2.0下载 role.rls 怎么对应 jsp

实战ralasafe――使用ralasafe实现多系统共享同一权限库-java-电脑编程网实战ralasafe――使用ralasafe实现多系统共享同一权限库作者:windelk 和相关&&正在做的2个系统都是采用ralasafe中间件来实现权限的控制,不过都是各自有独立的应用库和ralasafe权限库。但是考虑到未来有可能2个系统会整合或有更多的系统会采用相同的权限控制,这时会遇到的问题是:1、ralasafe的权限、查询、用户分类等等表在增加相应记录时是采用sequence增长的(在ralasafe_sequence表里有处理各表的当前值),那么如果各个系统各自拥有自己的ralasafe库,在系统整合时会导致这些表的id值冲突。2、另外在权限库里的ralasafe_ralasafe_userrole里保存的userid也会存在冲突。3、即时userid不冲突,但是登录时若不采用userid,而是用户自己申请的针对不同系统的登录帐号,也可能存在冲突(如两个系统都有&admin&帐号&)于是考虑做集中权限控制:让不同系统应用使用同一个权限库!(通过更改配置文件ralasafe-db.properties指定同一个权限库即可)采用同一个权限库,可以解决上述的问题1,但是对于问题2就要设法保证各个系统的userid都不冲突!最简单的可以把userid设计为保存UUID值的varchar(32)类型,这样要实现的就是更改元数据映射类型(可参考另一篇博文):&table ds="app" name="mainTable" sqlName="UserView"&&& &&& uniqueFields="loginName"&&&& &&& &field name="id" columnName="id" sqlType="varchar(32)" Type=".lang.String" /&&&&&&&& &field name="loginName" columnName="loginName" sqlType="varchar(12)"&&& &&& &&& javaType="java.lang.String" /&&&& &&& &field name="password" columnName="password" sqlType="varchar(100)"&&& &&& &&& javaType="java.lang.String" /&若不是初始化ralasafe元数据,要手动修改的话则要把ralasafe_ralasafe_userrole的userid类型也更改成varchar(32)。但是对于登录名和密码的冲突,我参考了ralasafe的配置手册,发现可以通过组合键进行登录控制。1、在元数据上设置uniqueFields为组合键,appName为应用模块的标识值,如&OA&,&CRM&等等&table ds="app" name="mainTable" sqlName="UserView"&&& &&& uniqueFields="appName,loginName"&&&& &&& &field name="id" columnName="id" sqlType="varchar(10)" javaType="java.lang.String" /&&&& &&& &field name="appName" columnName="appName" sqlType="varchar(3)"&&& &&& &&& javaType="java.lang.String" displayName="appName" show="true" /&&&& &&& &&& &&& &field name="loginName" columnName="loginName" sqlType="varchar(12)"&&& &&& &&& javaType="java.lang.String" /&&2、在web.xml配置登录的Filter & & &filter&&&& &&& &filter-name&ralasafe/LoginFilter&/filter-name&&&& &&& &filter-class&org.ralasafe.webFilter.LoginFilter&/filter-class&&&& &&& &init-param&&&& &&& &&& &param-name&loginPage&/param-name&&&& &&& &&& &param-value&//admin/login.&/param-value&&&& &&& &/init-param&&&& &&& &init-param&&&& &&& &&& &param-name&uniqueFieldsParams&/param-name&&&& &&& &&& &param-value&appName,loginName&/param-value&&& &!--此处增加组合登录验证--&&&& &&& &/init-param&3、jsp的登录表单上除了loginName,password,还要增加一个appName(不同的应用系统的值会不同)&&&& &form id="_form" method="post" action="admin_base/loginAdmin_login.action" &&&& &&& &&& &&& &&& &input type="hidden" name="appName" value="CRM"/&4、记录demo:&&& ralasafe_ralasafe_userrole表数据:&&& 而应用系统的userview视图数据:&OA库:&& CRM库:&& && &&& &&& &&& && 这样,使用ralasafe自带的登录验证时,会根据appName和loginName来进行验证,获取唯一的id(此处我没采用UUID了,直接使用appName作为前缀)后处理获取各自应用系统的userid值即可!5、对于要部署一个应用时只需要把相关的数据导出来。所以在配置权限、查询时需要注意的是:一个应用里的相关配置要设置一个根节点,这样方便导出。如:权限树里配置一个OA系统节点,然后OA系统相关的权限都在此节点下配置。目前先这么解决了(我们环境:只在开发系统阶段有更新ralasafe权限等表,部署阶段只是导出。),而且ralasafe表现很好,权限放上,应用库放开发机器上也没有问题,呵呵~ 不知有没有其他更好的方式哈!另:做的过程遇到一个问题,就是userview视图的设计上,如果采用select `sysuser`.`userRsNo` AS `id`,'CRM' AS `appName`,... from `sysuser`& 创建视图时程序都运行正常。但是如果采用select concat('OA.',`sysuser`.`userNo`) AS `id` AS `id`,'CRM' AS `appName`,... from `sysuser` 来创建,会抛异常。操作异常:java.lang.ClassCastException: [B cannot be cast to java.lang.String调试跟踪ralasafe,发现对于id的值,从ResultSet获取出来后不能强转为String类型,有空再研究一下看看相关资料:|||||||实战ralasafe――使用ralasafe实现多系统共享同一权限库来源网络,如有侵权请告知,即处理!编程Tags:                &                    1266人阅读
Ralasafe1.2 MySQLDome部署
下面分别讲部署到Tomcat,和在Eclipse中开发
Tomcat中的部署
1.&&&&下载页面
/2011/09/ralasafe-1-2%E7%89%88%E6%9C%AC%E5%8F%91%E5%B8%83/
一共有4项,下载其中的” ”
2. & &解压,得到” ralasafe_demo(zh)-1.2-v”文件夹(注意,这个文件夹下有一个xml文件夹,后面还要用到)
3.&&&& 在你的tomcat/webapps创建demo目录;
4.&&&& 然后将 ”ralasafe_demo(zh)-1.2-v”中的内容(包括上面提到的xml文件夹)复制到demo目录下;
5.&&&& 将sql/demo-mysql(zh).sql 导入到mysql数据库(其实sql这个文件夹是可以不复制的,只需把demo-mysql(zh).sql导入mysql即可),此脚本可创建zh_mydemo(业务)和zh_ralasafe(ralasafe权限管理),2个Schema(在MySQL中相当于MSSQL中数据库的概念)
6.&&&& 修改WEB-INF/ralasafe/app-ds.properties 和 ralasafe-db.properties,修改jdbcUser和jdbcPassword属性值(对应mysql数据库的登录用户名与密码)
7.&&&& 修改WEB-INF/web.xml第66行(即repositoryDir的参数值),配置成你的tomcat路径下面的webapps/demo/xml(即xml文件夹的绝对路径,形如:D:\\ tomcat\webapps/demo/xml)
8.&&&& 浏览器打开:
http://localhost:8080/demo/ralasafe/designer.rls&
Ralasafe Web控制端界面
http://localhost:8080/demo/ralasafe/demo/login.jsp&
Ralasafe演示营业登录界面
在Eclipse中开发
1-2和上面一样
3. 在Eclipse中新建动态网站工程(例:工程名为a05)
4. 然后将 ” ralasafe_demo(zh)-1.2-v”中的内容复制到工程的WebContent目录下, ralasafe文件夹上可能会有小红X,不必在意;
5-6和上面一样
7.修改WEB-INF/web.xml第66行(即repositoryDir的参数值),配置成实际的xml路径(即xml文件夹的绝对路径,形如:D:\\ javaapp\a05\WebContent\xml)
8. 工程run onserver-&Tomcat-&finish
9.&&&& 浏览器打开:
http://localhost:8080/a05/ralasafe/designer.rls
可以看到eclipse的console输出如下信息:
****Starting Ralasafe ......
**** Ralasafedatasource started successfully!
看到” successfully”大家都懂的.
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:334566次
积分:4845
积分:4845
排名:第4021名
原创:139篇
转载:32篇
评论:48条
(1)(2)(1)(1)(4)(1)(4)(1)(2)(2)(5)(1)(1)(1)(3)(1)(1)(1)(1)(1)(4)(3)(4)(3)(2)(2)(1)(2)(1)(6)(2)(2)(2)(1)(1)(1)(4)(3)(4)(18)(19)(10)(4)(8)(10)(16)(1)(2)(1)Ralasafe 快速入门(使用篇)_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Ralasafe 快速入门(使用篇)
上传于||文档简介
&&R​a​l​a​s​a​f​e​访​问​控​制​(​数​据​级​权​限​管​理​)​中​间​件​,​是​M​I​T​协​议​开​源​免​费​软​件​产​品​。​它​使​用​图​形​化​方​式​处​理​各​种​数​据​级​权​限​管​理​问​题​,​包​括​数​据​库​行​列​级​、​字​段​内​容​级​权​限​问​题​;​它​还​能​处​理​登​录​控​制​、​功​能​级​权​限​控​制​和​U​R​L​权​限​认​证​。
阅读已结束,如果下载本文需要使用2下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩7页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢问题补充&&
本页链接:
猜你感兴趣The page is temporarily unavailable
nginx error!
The page you are looking for is temporarily unavailable.
Please try again later.
Website Administrator
Something has triggered an error on your
This is the default error page for
nginx that is distributed with
It is located
/usr/share/nginx/html/50x.html
You should customize this error page for your own
site or edit the error_page directive in
the nginx configuration file
/etc/nginx/nginx.conf.

我要回帖

更多关于 ralasafe2.0下载 的文章

 

随机推荐