Jump to content
Douglas Öak

Aplicação Cliente/Servidor para Desktop

Recommended Posts

Boa noite.

 

Perdoem-me pela dúvida que para muitos é coisa muito simples. Sou iniciante. Já havia feito aplicação web com acesso a banco de dados MySQL via PHP e sei que os arquivos de configuração para acesso ao banco de dados ficam no lado servidor, sendo retornado apenas os dados necessários ao navegador do usuário, ou seja, o usuário não tem acesso a tais dados. Se o tivesse, poderia ter acesso direto ao banco dados talvez (especulação). Bom, fato é que quando estava criando projeto WPF Application do VisualStudio para acessar banco de dados remotamente, veio a dúvida se colocaria em risco a segurança do servidor, pois, para acesso ao banco de dados o cliente necessita da "ConnectionString" na qual possui os dados de acesso ao servidor MySQL, inclusive a senha. Sendo assim é possível que alguém faça engenharia reversa e encontre a referida String. Então vai a pergunta:

 

Este raciocínio está correto? Há insegurança em fazer o projeto desta maneira? Se sim, qual o método mais recomendado?

 

Desculpem pela pergunta leiga. Obrigado pela atenção.

Share this post


Link to post
Share on other sites

Eu li e entendi sua preocupação que é pertinente.Mas deve levar em consideração que da mesma forma que fazendo engenharia reversa em arquivo compilado,a connection string também pode ser acessada via página PHP (como mostra o exemplo do link https://www.w3schools.com/php/php_mysql_connect.asp).Dessa forma um hacker experiente poderia tanto fraudar uma aplicação compilada da mesma forma que acessar a variável da conecction string de uma pagina PHP.Se você se sentiu seguro em criar aplicações com PHP + Servidor ,seu temor em fazer  uma aplicação cliente (desktop)/servidor deve ser menos temeroso ainda.Pois para um Hacker fraudar um arquivo compilado é mais trabalhoso.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Camilavip
      Queria saber como fazer esse select e quando eu trazer um estado ele já puxa as cidades contidos nele, e ao escolher a cidade ele trazer os bairros. Consegui pela internet mas só com estados e cidades. no caso em 2 níveis, e eu precisaria em 3, faço pelo mysqli
       
      Em estados no banco está assim
      CREATE TABLE `estados` ( `id_estado` int(10) NOT NULL, `estado` varchar(30) NOT NULL ) ENGINE=Aria DEFAULT CHARSET=latin1; -- -- Extraindo dados da tabela `estados` -- INSERT INTO `estados` (`id_estado`, `estado`) VALUES (1, 'Rio de Janeiro'), (2, 'Minas Gerais'); Cidades
      CREATE TABLE `cidades` ( `id_cidade` int(10) NOT NULL, `id_estado` int(10) NOT NULL, `cidade` varchar(255) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Extraindo dados da tabela `cidades` -- INSERT INTO `cidades` (`id_cidade`, `id_estado`, `cidade`) VALUES (1, 1, 'Rio de Janeiro'), (2, 2, 'Belo Horizonte'); E bairros
      CREATE TABLE `bairros` ( `id_bairro` int(10) NOT NULL, `id_cidade` int(10) NOT NULL, `bairro` varchar(255) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Extraindo dados da tabela `bairros` -- INSERT INTO `bairros` (`id_bairro`, `id_cidade`, `bairro`) VALUES (1, 1, 'Centro'), (2, 1, 'Tijuca'), (3, 1, 'Leblon'), (4, 2, 'Pampulha');  
    • By danilo759
      Estou com uma dúvida, em uma tabelinha é cadastrado a data em uma coluna e a hora em outra coluna, então para "juntar" podemos usar CONCAT() no SELECT. Tudo certo...
       
      SELECT id, CONCAT(data_ini, ' ', hora_ini) as inicio FROM tabela

      Retorna como esperado:

       

      Minha dúvida é, se eu quiser exibir o horário de término para ficar assim como seria a consulta? Lembrando que não existe as colunas data_final e horario_final.

      2020-09-13 03:00:00 2020-09-13 04:00:00
      2020-09-13 04:00:00 2020-09-13 05:00:00
      2020-09-13 05:00:00 ....
    • By slaoxx
      Não conseguir obter êxito, minha sintaxe foi a seguinte:
       
      CREATE FUNCTION precomed ()
      RETURNS decimal
      SELECT AVG(preco_cd);
       
      SELECT precomed ();
       
    • By fideles
      Fala pessoal, como anda as coisas?
       
      Meu conhecimento em JS e quase neutro, conheço algo, mais talvez não o suficiente para o que eu precise, por isso venho pedir ajuda a vocês,
       
      Tenho um pequeno programinha, simples mesmo que tem 4 areas (Administração, Compras, Financeiro, Almoxarifado).
       
      Quem fica na ADM solicita algo,  compras visualiza e da um "ok" e o financeiro tbm tem que dar um "ok" e no final, o almoxarifado dá um "Processo Concluido" (está parte está ok, funcionando, sem erro)
       
      Meu problema seria que quem está no almoxarifado consegue clicar no botão "Processo Concluido" mesmo o pessoal de compras e financeiro não dando um "ok" na solicitação ou ele tbm consegue dar "Processo Concluido" se um ou outro dar um "ok". Precisaria que ele so conseguisse dar "Processo Concluido" se os dois darem o "ok", se so um dar "ok" ele não pode dar "Processo Concluido".
       
      Alguém consegue pelo menos me dar um norte para que eu possa dar continuidade? Já tentei em PHP e nada.
       
    • By reginaldo.sacramento
      Tenho a tabela usuário ( id, nome, celular ) e logs ( id, data )
      Aí se eu faço um CONSTRANT.. ficaria
      Usuário ( id, nome, celular )
      Logs ( id, data, id_usuario )
      Como eu faria um insert (e depois um UPDATE ) na tabela Logs ?
      Como capturo essa alteração em log? 
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.