Boa tarde,
O POST, apesar dos dados serem enviados por debaixo dos panos, não é "seguro". Por quê?
Boa tarde,
O POST, apesar dos dados serem enviados por debaixo dos panos, não é "seguro". Por quê?
Olá, Marcelo.
O protocolo HTTP é baseado em texto. O POST envia o texto com os dados normalmente, só não os mostra na URL.
Para tornar a comunicação entre o navegador e o servidor segura, temos que usar o HTTPS. Para isso, é preciso configurar um certificado digital no seu servidor Web.
Opa, tudo bom Marcello?
É um mito dizer que o POST é mais seguro que o método GET. Ambos são inseguros, pois expõem os dados da requisição. A tendência em achar que o POST é mais seguro é porque ele envia os valores no corpo da mensagem HTTP e não na URL, como é no caso do GET. Mas isso não o torna mais seguro, sequer o torna seguro.
O post pode impedir que usuários leigos tenham visão da informação da requisição, mas usuários mal intencionados ainda podem ter acesso a requisição, analisando o trafico na rede por um programa chamado Wireshark (link caso queira saber mais), o post, passa as informações pelo corpo da mensagem http, mas como o http se baseia em texto, não há nenhum tipo de criptografia, tanto o post quanto o get, são de fácil acesso, mas cada um tem um uso adequado para cada situação
Não existe "segurança" em nenhum dos 2 métodos, logo eles possuem o mesmo nível. Esta camada de "segurança" precisa ser implementada em ambos os casos. E fazemos isso com o HTTPS, o mesmo criptografa as requisições ao servidor, impossibilitando a ação de usuários mal intencionados.
Confira os seguintes links a respeito do correto uso do GET e do POST, e suas diferenças:
http://java.sapao.net/Home/usar-corretamente-post-e-get
Há também como criptografar a requisição GET! confira o link:
https://forum.imasters.com.br/topic/427112-resolvido%C2%A0criptografar-o-get-no-php/
Espero ter ajudado :D
Tudo bom Marcello?
Sua duvida foi sanada?