dev@glassfish.java.net

Strange behavior of deploy EJBs with same role but diffrent principal

From: alex Woo <alex.yueye_at_gmail.com>
Date: Mon, 3 Dec 2012 14:37:47 +0800

Hi, GF dev


First I deploy an EJB (hello.ear) with following security role mapping:

    *<security-role-mapping>*

* <role-name>Administrator</role-name>*

* <principal-name>j2ee</principal-name>*

* </security-role-mapping>*



the generated policy is like this:

    *grant principal org.glassfish.security.common.PrincipalImpl "j2ee"
{*

* permission javax.security.jacc.EJBRoleRefPermission "Hello", "
Administrator";*

* permission javax.security.jacc.EJBMethodPermission "Hello",
"sayHelloProtected,ServiceEndpoint,java.lang.String";*

* };*



*But*, when I undeploy the first EJB and deploy the second EJB (still
hello.ear) with following security role mapping:

    *<security-role-mapping>*

* <role-name>Administrator</role-name>*

* <principal-name>CN=CTS, OU=Java Software, O=Sun Microsystems Inc.,
L=Burlington, ST=MA, C=US</principal-name>*

* </security-role-mapping>*



*the generated policy is still as same as the first*. Is this behavior
right?

if I change the name hello.ear to hello1.ear, the generated policy is right.



My environment was listed as below:

------

 OS: Windows 7 sp 1

 JDK: jdk1.6.0_33

 GF: Open Source Edition 3.1.2.2 (build 5)

------





Alex