JSecurity: web QuickStart
安全架构中现在比较知名的就是JSecurity以及Spring Security。
之前折腾JSecurity里面的Sample例子的时候各种不顺利,今天一怒之下全部删掉重新加载,居然一路顺利。原来之前的demo code居然不是最新的,难道是因为中途我给各种增删了??无所谓了,好在最后一切顺利。
最近主要是要构架一个测试环境,用来测试已有的安全架构部分的代码是否可以正常的使用。同时也需要分别针对不同的集中方式:没有安全架构、已有的安全架构、以及自写的安全架构来进行分别得测试,以得到实验数据。在最近对于Mashup等一些概念的集中重新攻关之后,昨天也把第一个测试环境基本做好。今天自然是要试验一下已有的安全架构。
JSecurity上学期第一次接触的时候着实吓了我一大跳,网上资料少的可怜。所幸资料还算多,跌跌撞撞的,看呗。最近看王坚的书:结网。里面有一句话挺有意思——不要自己造轮子。仔细研究多去学习和借鉴,比自己闭门造轮子要好的多。呵呵,深以为意,今天就来实践下。
JSecurity的优点和性能不多说,那个是要写到论文里的-。- 这里就是简单说下跑jsecurity-0[1].9.0-RC2-with-dependencies里面的sample的时候注意事情。这里选取四个sample中的web。
1、解压jsecurity-0[1].9.0-RC2-with-dependencies。解压之后可以看到里面的文件夹很多。不是所有的都需要。可以先看一下web文件夹里面的内容。尤其不要忘记读web.xml。
2、新建一个web project。取名为web就行了。把web文件夹下的文件直接copy到WebRoot下面。接下来就会报一堆的错了。其实主要就是包引用的原因。文件夹里自带的Jsecurity.jar不能用。不过第一步的文件夹里面的src文件夹里就有Jsecurity的所有类库了。直接复制黏贴到web project中。
3、src中的各个类,还需要引用其他类。一一进行排查,然后把需要的类加进去。需要的类在jsecurity-0[1].9.0-RC2-with-dependencies文件夹里都有。尤其注意commons-beanutils.jar、commons-logging.jar、jsecurity.jar、jstl.jar、log4j-1.2.15.jar、standard.jar是依赖库,不要忘记了。
4、接下来就是deploy、run tomcat。打开浏览器访问啦~一切正常,但是,用户名和密码在哪里放着呢?
JSecurity缺省使用org.jsecurity.realm.text下的default-jsecurity-users.properties进行认证。查看default-jsecurity-users.properties后,可以对里面的用户名和密码进行修改,测试后通过。
访问okay。今晚了弟弟又回来,估计不会在学校继续研究了。明天了研究下jdbc情况下的访问。
p.s 在返璞归真补了一阵基础概念之后,确实重新看这些东西有了新的感觉。JSecurity框架写的确实蛮精致,细细的再看看吧。