...
Aviso |
---|
title | Alteração de comportamento 2 |
---|
|
A partir da LIB Label 20201019release 12.1.31 do Protheus, a ser liberada em Outubro Abril de 20202021, o comportamento padrão de autenticação de WebServices SOAP e REST será alterado. A partir desta versão, caso a chave Security não seja informada no arquivo appserver.ini, os serviços serão iniciados exigindo autenticação de usuário. Caso seja necessário trabalhar sem autenticação, a chave deverá ser configurada com o valor 0 (exemplo Exemplo: Security=0). |
...
Informações |
---|
|
A partir da LIB 20201123 o WS SOAP do Protheus passa a trabalhar também com a autenticação do tipo BEARER. Para a geração do token, foi disponibilizado o serviço FWAuthentication, método token.
| Para Protheus 11, clique aqui... | - Portal do Cliente: http://suporte.totvs.com
- Menu Downloads e Atualizações
- Linha Protheus
- Microsiga Protheus Versão 11
- Todos
- Categoria: Arquivos de portais
- Baixe o arquivo ARQUIVOS DE PORTAIS
Obs.: se não estiverem aparecendo as versões, em "Filtros de pacotes" selecione "Todos pacotes disponíveis" e selecione a categoria novamente.
| Bloco de código |
---|
language | actionscript3 |
---|
theme | RDark |
---|
title | SOAP - Bearer |
---|
| #include "protheus.ch"
#define URL_BASE_SOAP "http://localhost:8080/ws/"
//-------------------------------------------------------------------
/*{Protheus.doc} soapBearer
Consumo de serviço SOAP do Protheus com autenticação bearer
WSINDEX.apw?cOp=02&WSVCNAME=FWAUTHENTICATION
@author Daniel Mendes
@since 07/10/2020
@version 1.0
*/
//-------------------------------------------------------------------
user function soapBearer()
local oWsdl as object
local oXml as object
local cSoapResponse as char
local cError as char
local cWarning as char
oWsdl := TWsdlManager():New()
//Geração do token
oWsdl:ParseURL(URL_BASE_SOAP + "FWAUTHENTICATION.apw?WSDL")
oWsdl:SetOperation("TOKEN")
oWsdl:SetValue(0, "password")
oWsdl:SetValue(3, "admin")
oWsdl:SetValue(4, "1")
oWsdl:SendSoapMsg()
cError := ""
cWarning := ""
cSoapResponse := oWsdl:GetSoapResponse()
oXml := XmlParser(cSoapResponse, "_", @cError, @cWarning )
FreeObj(oWsdl)
oWsdl := nil
//Atualização do token
oWsdl := TWsdlManager():New()
//Verifica o endereço, se existe algum serviço disponível e se existe o serviço que quero utilizar
oWsdl:ParseURL(URL_BASE_SOAP + "FWAUTHENTICATION.apw?WSDL")
oWsdl:SetOperation("TOKEN")
oWsdl:SetValue(0, "refresh_token")
oWsdl:SetValue(5, oXml:_SOAP_ENVELOPE:_SOAP_BODY:_TOKENRESPONSE:_TOKENRESULT:_REFRESH_TOKEN:Text)
oWsdl:SendSoapMsg()
FWFreeVar(@oXml)
cError := ""
cWarning := ""
cSoapResponse := oWsdl:GetSoapResponse()
oXml := XmlParser(cSoapResponse, "_", @cError, @cWarning )
FreeObj(oWsdl)
oWsdl := nil
//Consome um serviço autenticado
oWsdl := TWsdlManager():New()
oWsdl:ParseURL(URL_BASE_SOAP + "FWDICTIONARY.apw?WSDL")
oWsdl:SetOperation("GETTABLELIST")
oWsdl:AddHttpHeader("Authorization", "Bearer " + oXml:_SOAP_ENVELOPE:_SOAP_BODY:_TOKENRESPONSE:_TOKENRESULT:_ACCESS_TOKEN:Text)
oWsdl:SetValue(0, "SED")
oWsdl:SendSoapMsg()
ConOut("GetSoapResponse:", oWsdl:GetSoapResponse())
FreeObj(oWsdl)
oWsdl := nil
return |
|
|
Para configurar, siga o procedimento abaixo:
Section |
---|
|
Expandir |
---|
title | Para Protheus 12, clique aqui...
- Primeiramente, baixe os Arquivos de portais no Portal do Cliente, e descompacte na pasta Systemload | - Portal do Cliente: http://suporte.totvs.com - Clique em Downloads - Na opção Outras linhas de Produto selecione Protheus - MICROSIGA PROTHEUS VERSÃO 12.1.XX (onde XX é a versão da sua release) - Todos - Categoria: Arquivos de portais - Baixe o arquivo ARQUIVOS DE PORTAIS Obs.: se não estiverem aparecendo as versões, em "Filtros de pacotes" selecione "Todos pacotes disponíveis" e selecione a categoria novamente.
|
---|
...
Bloco de código |
---|
[JOB_WS]
TYPE=WEBEX
ONSTART=__WSSTART
ONCONNECT=__WSCONNECT
SECURITY=1 |
Aviso |
---|
|
Fique atento ao utilizar o parâmetro de configuração com a chave Security=0, pois isso fará com que as integrações (APIs) não exijam autenticação, consequentemente dados do seu ambiente poderão ser consultados sem qualquer controle de autorização. |