Webservice com login

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…

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

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;
}

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.

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

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: