0 Replies Latest reply on Feb 9, 2011 4:14 PM by mikemil

    JBoss 4.2.3 stateless-rmi-invoker vs stateless-ssl-invoker

    mikemil

      I hope this is the correct forum, but if not please let me know which forum would be the correct place to post.

       

      We are running JBoss 4.2.3 with Java 1.5 with EJB2 on both Windows and Linux.   We recently had a audit run that indicated that for security purposes, we need to be running our RMI calls using SSL.   I found the [JBoss 4 Guide Security Chapter 8 | http://docs.jboss.org/jbossas/jboss4guide/r5/html/ch8.chapter.html]  and have copied the invoker definition from the documentation to create the "stateless-ssl-invoker" from Section 8.8 of the documentation.

       

      My concern is the differences I see between the "statelss-rmi-invoker" found in my standardjboss.xml file and the "stateless-ssl-invoker" from the documentation.   I won't pretend to know or understand all of this configuration but the stateless-ssl-invoker from the documentation appears to be missing the MarshallingInvokerInterceptor for both the home and bean whereas it is included in the stateless-rmi-invoker.   The other difference I see is that the stateless-rmi-invoker contains "call-by-value=false" for the InvokerInterceptor and the stateless-ssl-invoker does not.

       

      Is this correct?  Are these differences due to SSL being in the picture?

       

      Stateless-rmi-invoker

      {code:xml}

      <invoker-proxy-binding>

            <name>stateless-rmi-invoker</name>

            <invoker-mbean>jboss:service=invoker,type=jrmp</invoker-mbean>

            <proxy-factory>org.jboss.proxy.ejb.ProxyFactory</proxy-factory>

            <proxy-factory-config>

              <client-interceptors>

                <home>

                  <interceptor>org.jboss.proxy.ejb.HomeInterceptor</interceptor>

                  <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>

                  <interceptor>org.jboss.proxy.TransactionInterceptor</interceptor>

                  <interceptor call-by-value="false">org.jboss.invocation.InvokerInterceptor</interceptor>

                  <interceptor call-by-value="true">org.jboss.invocation.MarshallingInvokerInterceptor</interceptor>

                </home>

                <bean>

                  <interceptor>org.jboss.proxy.ejb.StatelessSessionInterceptor</interceptor>

                  <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>

                  <interceptor>org.jboss.proxy.TransactionInterceptor</interceptor>

                  <interceptor call-by-value="false">org.jboss.invocation.InvokerInterceptor</interceptor>

                  <interceptor call-by-value="true">org.jboss.invocation.MarshallingInvokerInterceptor</interceptor>

                </bean>

              </client-interceptors>

            </proxy-factory-config>

          </invoker-proxy-binding>

      {code}

       

      Statelss-ssl-invoker from doc

      {code:xml}

      <invoker-proxy-bindings>

              <invoker-proxy-binding>

                  <name>stateless-ssl-invoker</name>

                  <invoker-mbean>jboss:service=invoker,type=jrmp,socketType=SSL</invoker-mbean>

                  <proxy-factory>org.jboss.proxy.ejb.ProxyFactory</proxy-factory>

                  <proxy-factory-config>

                  <client-interceptors>

                      <home>

                          <interceptor>org.jboss.proxy.ejb.HomeInterceptor</interceptor>

                          <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>

                          <interceptor>org.jboss.proxy.TransactionInterceptor</interceptor>

                          <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>

                      </home>

                      <bean>

                          <interceptor>org.jboss.proxy.ejb.StatelessSessionInterceptor</interceptor>

                          <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>

                          <interceptor>org.jboss.proxy.TransactionInterceptor</interceptor>

                          <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>

                      </bean>

                  </client-interceptors>

                  </proxy-factory-config>

              </invoker-proxy-binding>

          </invoker-proxy-bindings>

      {code}

       

      Thanks in advance!