声明式安全
不需要在jsp或servlet中写入安全性相关代码,这两个层面的安全性都由web服务器来处理,内容包括:
- 限制角色访问
- 是否需要SSL访问
- 是否开启invoker servlet
编程式安全
- 与声明式安全不冲突,而且servlet规范在HttpServletRequest类中提供了三个方法来获取声明式安全中的用户名、密码、角色:
- isUserInRole
- getRemoteUser
- getUserPrincipal
此外可以通过web.xml中的security-role-ref来为服务器中的角色声明一个别名,这样便增强了代码的可移植性。
- BASIC编程式安全,修改响应头即可要求浏览器进行BASIC验证弹窗,用户填写的用户名、密码都存放于request头部,也可编程获取,从而进行验证。
- SSL编程式安全,请求方式、url、加密方式均可获得,进行修改或验证之后重定向(redirect)便可。
网友评论