请bang大哥指点一下JBoss的jaas授权过程!
jaas包括验证和授权两个过程
验证就是判断用户名密码是否正确
String username= request.getParameter("username");
String password= request.getParameter("password");
try{
SecurityAssociationHandler handler = new SecurityAssociationHandler();
SimplePrincipal user = new SimplePrincipal(username);
handler.setSecurityInfo(user, password.toCharArray());
LoginContext loginContext = new LoginContext("jaas_example",(CallbackHandler)handler);
loginContext.login();
Subject subject = loginContext.getSubject();
如果没有错误就表示验证通过
可是授权就比较麻烦了
本来是通过
Subject.doAs(subject, new PrivilegedAction(){public Object run(){}}); 去授权的,敏感的代码放到run()方法里
但是web模型下,如果保护的是url那么要如何进行授权呢,还有就是如果知道用户刚才请求的url呢
也就是说action="j_security_check" 这个j_security_check里的代码是怎么处理的,我找不到这个Servlet?
问这样的问题是因为:我想在第一次登陆的时候执行一些其他的初始化信息,并且放到用户session里, 如果用jboss自带的机制就没法实现,所以小弟想做一个类似j_security_check的Servlet,
请bang大哥帮忙,谢谢啦