Webservice com login

5 respostas
kaio_sergio

Estou criando pela primeira vez um webservice e querendo colocar um login para só quem tiver autorizado recuperar os dados XML. Alguém pode me ajudar? só fiz o webservice rodando ate agora…

Li uns tutoriais sobre wss4j mas nao consegui implementar da erro em umas bibliotecas

org.apache.ws.axis.security
org.apache.ws.security

nem sei qual jar q pode ser encontrado isso…

5 Respostas

marciobarroso

uma solução simples, seria vc receber os dados de login para altenticação. Se os dados forem válidos, vc retorna o xml com os dados, senão, devolve um xml com mensagem de erro.

[]'s

Pedrosa

Algo mais ou menos assim:

public String getLotesImpressaoWS(String usuario, String senha,int idEmpresa) throws XFireFault {
		try {
			if(validaLogin(usuario, senha)){
				return new LotesImpressaoDAO().getLotesImpressao(idEmpresa);
			}else{
				return getErroAcesso();
			}	
		} catch (Exception e) {
			throw XFireFault.createFault(e);
		}
}
public String getErroAcesso(){
    String mensagem = "<erro>Acesso não autorizado!</erro>";
    return mensagem;
}
P

Evite autenticação no código !!!

Deixe a autenticação para o container, e defina a restrição de acesso via web.xml. Use o mecanismo BASIC ou DIGEST e, em produção, adote https como transporte.

Qualquer API cliente de webservices tem suporte ao envio de usuário/senha junto com os headers da chamada SOAP.

kaio_sergio

Valeu pela ajuda, fiz a autenticação por método, mas gostaria d aprender como fazer por SOAP pelo headers.

chun

Com o NetBeans vc pode clicar com o botao direito em cima do seu webService e “edit security options” , ele funciona perfeiramente… no GlassFish… pelo menos q eu testei :slight_smile:

Criado 11 de maio de 2007
Ultima resposta 14 de mai. de 2007
Respostas 5
Participantes 5