Security exception for service endpoint
abozzetto Oct 17, 2006 11:04 AMHi,
I have deployed a web service using service end point.
The services were deployed correctly. The services works fine with RMI. But when I try to invoke it from client app by setting Call.USERNAME_PROPERTY and Call.PASSWORD_PROPERTY, it throws up a security exception as below.
java.rmi.AccessException: SecurityException; nested exception is: java.lang.SecurityException: Insufficient method permissions, principal=f.fabi, ejbName=EuclideManager, method=getPatients, interface=SERVICE_ENDPOINT, requiredRoles=[], principalRoles=[807C, 807O, 807, 807H, Administrator, 807B, 807I, 807F, 8070, 807G, 807A, VEDITUTTO, 807E, create, 8073, 807S, 807D]
this is my login-config.xml
<application-policy name = "solinfo"> <authentication> <login-module code = "it.solinfo.euclide.jaas.SSOLoginModule" flag = "required"> <module-option name = "principalClass">it.solinfo.euclide.jaas.SSOPrincipal</module-option> <module-option name = "context">/META-INF/SSOapplicationContext.xml</module-option> </login-module> </authentication> </application-policy>
and my ejb-jar.xml
<session > <description><![CDATA[EuclideManager interfaccia generica con parametri String]]></description> <display-name>EuclideManager</display-name> <ejb-name>EuclideManager</ejb-name> <home>it.solinfo.euclide.ejb.EuclideManagerHome</home> <remote>it.solinfo.euclide.ejb.EuclideManager</remote> <service-endpoint>it.solinfo.euclide.ws.EuclideManagerWSIntf</service-endpoint> <ejb-class>it.solinfo.euclide.ejb.EuclideManagerBean</ejb-class> <session-type>Stateless</session-type> <transaction-type>Container</transaction-type> <env-entry> <env-entry-name>ejb/BeanFactoryPath</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value><![CDATA[/META-INF/applicationContext.xml]]></env-entry-value> </env-entry> </session>
this my jboss.xml
<security-domain>java:/jaas/solinfo</security-domain> ..... <session> <ejb-name>EuclideManager</ejb-name> <jndi-name>EuclideManager</jndi-name> <clustered>true</clustered> <cluster-config> <partition-name>EuclidePartition</partition-name> <home-load-balance-policy>org.jboss.ha.framework.interfaces.RoundRobin</home-load-balance-policy> <bean-load-balance-policy>org.jboss.ha.framework.interfaces.RoundRobin</bean-load-balance-policy> </cluster-config> <method-attributes> </method-attributes> <port-component> <port-component-name>EuclideManagerWSIntf</port-component-name> <port-component-uri>/EuclideEJB/EuclideManager</port-component-uri> <auth-method>BASIC</auth-method> </port-component> </session>
bye
Thanks a lot
Andrea Bozzetto