Autenticação e autorização (WebService)

1 resposta
lilirc

Pessoal,

Espero que possam tirar uma dúvida, já que não tenho grande experiência com WS…

Desenvolvi um webservice utilizando jax-ws e estou rodando no tomcat… a parte de segurança, na mensagem estou seguindo o padrão ws-security… fazendo autenticação de nome de usuário com chaves simétricas… e no transporte utilizando comunicação SSL, eu gostaria de segmentar a autorização dos clientes por serviço, tem alguma outra forma “limpa” (leia-se, sem gambiarra…rs) de fazer isso sem ser por EJB?

Implementei uma classe PasswordValidationCallback para validar a senha do usuário no banco também…

Tenho lido bastante material na internet e só achei implementações de autorização no nível da aplicação com EJB, principalmente utilizando JBOSS… o que vcs me indicam? :roll:

1 Resposta

lilirc

Consegui resolver meu problema faz um tempo, mas só lembrei de postar a solução aki agora:

Para segmentar a autorização também no nível dos métodos, eu verifico se a credencial do usuário autenticado através das chaves tem permissão para acessar aquele serviço (faço a validação de permissões no BD), segue abaixo como pegar a credencial da chave:

WebServiceContext context;

[...]

SubjectAccessor.getRequesterSubject(context).getPublicCredentials().toString().replaceAll(".([^$]*).", "$1")

Espero que possa ajduar alguém tbm… :smiley:

Abraço

Criado 14 de julho de 2009
Ultima resposta 28 de ago. de 2009
Respostas 1
Participantes 1