4D v16

Sobre a segurança da aplicação 4D Mobile

Página Inicial

 
4D v16
Sobre a segurança da aplicação 4D Mobile

Sobre a segurança da aplicação 4D Mobile    


 

 

Uma vez que os dados das tabelas das bases 4D expostas em 4D Mobile se integram ao catálogo Wakanda, deve restringir o acesso a determinados recursos "sensíveis".

A diferença das aplicações 4D, com as aplicações web não pode utilizar a interface para controlar os dados expostos, por exemplo, (só porque um campo não se mostre no formulário não significa que seja inacessível para o usuário) simplesmente não mostrar um campo em um formulário não é feito/não pode ser só Não mostrar um campo em um formulário para que seja inacessível para o de usuário. As petições HTTP e o uso de JavaScript podem permitir que usuários maliciosos possam obter potencialmente qualquer informação de uma proteção insuficiente do servidor web.

O propósito desta seção não é enumerar todas as medidas de segurança a tomar com as aplicações 4D mobile e sim lhe oferecer pistas para ajudar a garantir os dados expostos de uma maneira mínima.

  • Controle da exposição REST do lado 4D:  cada tabela, atributos e método podem estar expostos (ou não) através de 4D Mobile. Só exponha os dados e métodos que sejam estritamente necessários, por exemplo, não há necessidade de expor os campos não utilizados.

  • Proteção dos dados expostos: deve utilizar os sistemas de segurança oferecidos por Wakanda para controlar os conteúdos que são acessíveis por meios de navegadores. Há várias formas de
    fazer isso (não exclusivo):
    • Ajuste do alcance  dos atributos e métodos da base 4D em Wakanda a nível do modelo (consulte a propriedade alcance para atributos ou para métodos na documentação Wakanda). Em particular, pode definir seu alcance como Público no servidor, o que significa que podem ser de acesso livre para o código de execução no servidor, mas não vão ser acessíveis nos clientes web.
      Este ajuste se realiza no arquivo .js
      do modelo externo (ver Modificar o arquivo externo).
    • Usar atributos calculados:  os atributos calculados trabalham como atributos padrão, mas seus valores são devolvidos por funções específicas (onGet, onSet...) que se executam quando acessam aos campos. Isto significa que pode expor só os atributos calculados necessários sem expor os campos da base 4D. O acesso aos campos 4D se realiza desde o servidor Wakanda de uma forma segura.
      Pode adicionar campos calculados no arquivo adicional .js que é executado pelo método mergeOutsideCatalog(). Para obter mais informação, consulte a página Attributes da documentação Wakanda.
    • Combinar classes de dados estendidas e pesquisas restritivas: este poderoso conceito lhe permite controlar não só os atributos expostos, mas sim também os dados que podem mostrar. Estender uma classe de dados significa criar uma cópia (a classe derivada) que pode modificar mediante a adição de atributos calculados ou mediante a supressão dos atributos existentes. Também pode associar uma pesquisa restritiva a ela: neste caso, todos os acessos aos dados da classe derivada desencadeiam automaticamente esta pesquisa, que devolve só os registros que coincidem com os critérios. Este princípio permite relacionar os dados ao usuário conectado ao servidor Wakanda. Por exemplo, no contexto de uma base comercial, a pesquisa devolve todos os clientes relacionados com o vendedor atual. É claro, a classe derivada pode ser acessada pelos clientes web.
      Podem ser criadas classes de dados estendidas e adicionar as pesquisas restritivas no arquivo .
      js de configuração do modelo externo (ver Modificar o arquivo externo). Para obter mais informação, consulte a página Programação de pesquisas restritivas na documentação Wakanda.

   

Nota: se requer a seguinte configuração mínima para suportar a restrição de consultas em 4D Mobile:
- 4D y 4D Server v14.1
- Wakanda Enterprise Server v8

 
 

 
PROPRIEDADES 

Produto: 4D
Tema: Sobre a segurança da aplicação 4D Mobile

 
HISTÓRIA 

 
ARTICLE USAGE

4D Mobile ( 4D v16)