|
我们知道,JAAS包括了Authentication和Authorization,下面我们分别看看:
Authentication分析如下:
1)类的annotate如下 @SecurityDomain("other") public
class CalculatorBean implements
Calculator 这样将从users.properties中读取Authentication信息: kabir=validpassword
2)使用的jboss类如下: import
org.jboss.security.SecurityAssociation; import
org.jboss.security.SimplePrincipal;
3)SimplePrincipal用来设置验证原则: SecurityAssociation.setPrincipal(new
SimplePrincipal("kabir"));
4)SecurityAssociation用来根据原则进行验证:
SecurityAssociation.setCredential("invalidpassword".toCharArray());
5)验证不通过,会抛exception
Authorization分析如下:
1)方法中指明角色 @MethodPermissions({"teacher"}) public
int divide(int x, int y) { return x /
y; }
2)roles.properties中设置角色 kabir=student
3)运行中判断权限,并提示: [java]
Insufficient method permissions, principal=kabir,
interface=org.jboss.ejb3.EJBContainerInvocation, requiredR oles=[teacher],
principalRoles=[student] [@more@]
|