Jboss + JAAS + WebService[jax-ws] (duvida configuração)

7 respostas
afffernando

Bom dia pessoal do Forum,
Não sei se esse é o local correto para a pergunta, qualquer coisa eu já pesso desculpas.
Bom minha duvida é quanto a configuração que deve ser feita para que seja necessaria autenticação quando o WS for chamado.
Andei lendo e percebi que o JAAS faz exatamente o tipo de autenticação que eu quero (quando o WS for chamado seja solicitado usuario e senha) porem eu não consigo fazer com que apareça essa solicitação, ele é chamado diretamente.
Por enquanto não achei nada explicando exatamente isso (WS + JAAS), a maioria é para aplicações web, talvez isso pode estar me atrapalhando (ou eu que não entendo as coisas direito mesmo…)
Então, como que se configura o Jboss e/ou o JAAS para que autentique o WS? Eu agradeço se for possivel passar um exemplo simples.
Grato por qualquer ajuda,
Fernando

7 Respostas

mauricioadl

vc vai ter que colocar o usuario e senha dentro das classes geradas pelo gerador ws que vc optar.

eu gosto de apache axis e uso ele bastante, caso vc opte por usa-lo basta adicionar no metodo createCall da classe …BindingStub o usuario e a senha

algo tipo assim:

_call.setUsername("user");
_call.setPassword("passwd");

[]´s

Alexandre_Saudate

mauricioadl,

Diga não às drogas: não use Axis.

afffernando,

Veja se ajuda: http://community.jboss.org/wiki/JBossWS-WS-SecurityOptions

[]'s

mauricioadl

asaudate:
mauricioadl,

Diga não às drogas: não use Axis.

afffernando,

Veja se ajuda: http://community.jboss.org/wiki/JBossWS-WS-SecurityOptions

[]'s

todos dizem isso, porem trabalho em um projeto que usa 3 web services de diferentes empresas é uma verdadeira bagunça.
no começo tentei jax-ws e tive muitos problemas, não gerava as classes, dava exception quando passava valores null ONDE DEVERIA IR NULL, e muitos outros.
O Apache Axis resolveu tudo isso e hoje sou um grande defensor dessa ferramenta.

Alexandre_Saudate

OK, mas JAX-WS é tão somente uma spec. É como se eu falasse que JPA não presta sendo que eu usei OpenJPA como implementação. JAX-WS tem diversas implementações: Metro, JBossWS, Apache CXF, o próprio Axis, JAX-WS RI, etc. Qual você usou na época? Tentou algum suporte, como o próprio forum?

[]'s

mauricioadl

Usei a implementacao da Sun.

afffernando

Ola pessoal,
embora o material que o asaudate passou seja bem completo, eu não consegui fazer o que eu queria (provavelmente eu não entendi alguma parte)

no login-config.xml eu já tenho uma policy que eu gostaria de utilizar, que é a seguinte:
<application-policy name = "seguranca">
        
        <authentication>
            <login-module code = "br.Seguranca"
                          flag = "required" >
             <module-option name = "dsJndiName">java:/DB2</module-option>
              <module-option name = "hashAlgorithm">MD5</module-option>
              <module-option name = "hashEncoding">base64</module-option>

        </login-module>
        </authentication>
    </application-policy>
então eu configuro o meu jboss-web.xml da seguinte forma:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
  <security-domain>java:/jaas/seguranca</security-domain>
  <context-root></context-root>
</jboss-web>
e nada acontece, ele continua acessando normalmente. estou com o jboss 5.1.0 GA, o jbossws-native-3.4.1.GA, quais arquivos mais devo alterar? e principalmente quais alterações devo fazer? Att. Fernando de Almeida
Alexandre_Saudate

Tem que anotar o web service, também. Não lembro de cabeça quais são as anotações, mas uma busca no Google deve ajudar.

[]'s

Criado 21 de novembro de 2011
Ultima resposta 13 de dez. de 2011
Respostas 7
Participantes 3