利用JAAS实现简单的页面验证与授权

注:我是在word里写的这篇文章,然后黏贴过来的,所以截图都没有,我已将该文档上传在我的资源中,需要的同学可以去下载,谢谢支持!

利用JAAS实现简单的页面验证与授权

开发环境NetBeans7.0.1+Glassfish3.1.1+mysql5.1

1.    首先,数据库里至少要有两张表,一张存放用户登录名和密码,另一张存放用户对应的角色

2.    下面加入数据

密码为8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918,该值为adminSHA-256加密结果

3.    在NetBeans里新建一个web项目

4.    新建一个JDBC资源,可以在NetBeans里完成,也可以在glassfish控制台完成。下面在NetBeans里操作。

右键点项目,新建,其他。GlassfishJDBC连接池

填写相应的属性并完成操作。在服务器资源中查看glassfish-resources.xml

再右键点项目,新建,其他。选择glassfishglassfish资源

完成操作。

5.    启动glassfish。进入控制台http://localhost:4848/。这个时候可以先验证一下刚刚建立的jdbc资源是否可用,运行一遍项目,然后再控制台选择资源->JDBC->jdbc连接池

选择刚刚建立的连接池,点击Ping按钮,如果出现Ping成功则没有问题。

选择配置->server-config->安全性

6.    展开安全性,选择领域

7.    点新建,建立安全域

完成后点击右上角确定

8.    在项目中打开web.xml,选择安全

添加安全角色,名称为数据库中的安全角色名

新建安全约束,约束名称随便。

添加web资源集合

启用安全验证约束

9.    新建登录页面login.jsp

页面中至少需要一个表单,actionj_security_check,用户名namej_username,密码框namej_password,其他布局可随意发挥。

10. 右键点项目,新建,其他。选择glassfishglassfish描述符

选择安全。

将登录后的用户组映射为该角色。

11. 此时如果再次运行项目访问index.jsp,页面将自动跳转到login.jsp

输入用户名密码,都是admin,登录,就有权限访问index.jsp了。

12. 如果想在程序中获取已经登录的用户信息。

可通过request对象的getRemoteUser()方法获得已登录用户的用户名。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值