Protheus :: Autenticação WebService versão 3.0
Bem, acredito que com a versão 3.0 finalmente conclua os meus exemplos de autenticação para consumo de um método de WS no Protheus. Ela é uma evolução e variante das versões 1.0 e 2.0 anteriormente publicadas.
As mudanças significativas foram:
- Proteção do método GetMessage: que passou a ser uma função "protegida" (Static Function, sem acesso público);
- O método ValidUserWs, do WS u_wsUserValid, passou a receber como parâmetros de entrada: UserWs, UserWsPwd, CheckSum, HASHMD5UserAndPsw, Language e Embaralha; e como parâmetro de saída: Token. Agora, e diferente das versões anteriores, é esse método quem retorna as mensagens (token) para autenticação.
- Incluido o método IsAuthenticated no Ws u_wsUserValid que receberá como parâmetro de entrada o Token gerado pelo método ValidUserWs e retornará lAuthenticated como true, se usuário foi devidamente autenticado e, false, caso contrário.
- O método ClearStackMD5Hash, do Ws u_wsClearMessages, também foi modificado. Ele deixou de receber as informações de usuário e senha. Passando a ser autenticado apenas pelo Token gerado pela ValidUserWs.
- Todos os exemplos constantes no WS u_wsTstUserValid, usado para testar o método de validação, foram modificados para trabalharem com o novo conceito de autenticação.
- Toda a troca de mensagens entre o WsServer e Client, no que diz respeito à autenticação, passou a ser codificada via Encode64. Consultem o WS de exemplo, o u_wsTSTUserValid para maiores referências.
Bem, considerando que tudo o que escrevi para a versão 2.0 serve, também, para essa versão, excetuando-se as mudanças aqui apresentadas, e que, para um bom entendedor basta o código, serei breve nesse post.
E, como sempre, clique aqui para obter a versão 3.o do ws de autenticação.
Bom Proveito.
[]s
иαldσ dj
Olá amigos do BlackTDN, sou novo em advpl e estou desenvolvendo um webservice para integração com SAP.
ResponderExcluirMinha Ws está rodando perfeita, mas agora eu preciso fazer autenticação via header no endereço do webserver. Como eu faço?
Abs
http://www.blacktdn.com.br/2012/03/blacktdn-autenticando-via-tsocketclient.html
Excluirhttp://www.blacktdn.com.br/2012/03/blacktdn-autenticando-via-httpget.html
Willian, provavelmente o que procura é a segunda opção.
ExcluirMaiores detalhes:
Excluirhttp://tdn.totvs.com.br/display/tec/TSocketClient
http://tdn.totvs.com.br/display/tec/HTTPGet
Olá.
ResponderExcluirVocê teria algum tutorial sobre um Portal do Cliente, assim como tem o Portal do RH?
Grata