Olá.
Estou desenvolvendo algumas APIs para disponibilizar para clientes para que eles tenham acesso de forma atualizada a lista de produtos e tabela de preço de cada um. Porem meu receio é que ele possa acessar as outras API’s que tem no Protheus.
Gostaria de restringir o acesso desse usuário (__cUserID) apenas as API’s que desenvolvi para ele.
Tentei utilizar o " user function loadrest()" porem ele trata na inicialização do serviço e aplica de forma global. Preciso de uma solução aplicada apenas nas APIs desejadas. há algum ponto de entrada de validação Antes de executar o WSRESTFUL nativo do protheus?
**Já tentei alterar o nivel de acesso do usuário para não permitir nada, deixei apenas o Modulo necessário para acessar o REST.
Alguem já fez algo similar ou tem uma solução para minha questão?
Não existe um limitador para isso, se liberar, ele terá acesso a todas as API’s, se vc colocar uma validação na sua api, ela valerá somente para ela, as outras serão acessadas normalmente.
Mas … funcionam com o REST nativo do binário (https://tdn.totvs.com.br/display/tec/REST).
Não sei se funcionam com o REST do Framework Protheus (WSRestful).
Se não funcionar com o WSRestful, seria o caso de abrir um chamado para eles implementarem.
Olá ZVS, eu havia feito testes já com o OnBlock e OnAllow. Elas funcionam para scripts em TLPP, da mesma forma que o LoadRest roda em ADVPL.
Porem infelizmente no meu scenário não tenho essa implementação ainda por conta da versão. Ainda não migramos totalemnte para o WebApp.
Eles tratam de forma global ao iniciar o serviço appRest. Oque eu quero é que tudo seja liberado para o ‘user administrador’, e quero fornecer para meus clientes um login com apenas 2 ou 3 apis liberadas… Mas não posso ter bloqueio total das API’s do protheus.
Olá @marco vejo que sua necessidade é muito importante, sugiro abrir uma solicitação na Central Colaborativa da Totvs, e posta aqui o link para gente também votar.
Apenas para titulo de curiosidade para quem interessar possa:
Aqui é um artigo que fala sobre esse controle de exposição de API…
Porem, resalto que o controle é na inicialização do serviço rest e de forma Global. no meu caso, eu necessito de forma individual uma validação de acesso para a API.