I know that protecting all pages with SSL will slow down the website
and add overhead to the server resources.
Isso é verdade. Você não deve apenas jogar em SSL por capricho. Você deve tomar uma decisão informada sobre isso. Embora o SSL introduza benefícios de segurança, isso ocorre ao custo do desempenho. É importante lembrar que você sempre pode lançar soluções de tecnologia em um problema de desempenho para que eu tenha certeza de que você está satisfeito com a sua segurança primeiro e, em seguida, tente lidar com qualquer problema de desempenho que possa encontrar.
O principal objetivo é se o SSL resolver suas preocupações de segurança e usá-lo .
Why is it considered bad practice to only protect only pages where the
user's password is entered instead of the whole site?
Não é. Bem, não necessariamente. Você realmente precisa dar uma olhada nos dados que está tentando proteger e nos ataques que está tentando evitar.
Áreas comuns a considerar:
- Existem dados confidenciais em todo o seu site ou apenas em um conjunto finito de páginas?
- Será fácil implementar o SSL em algumas páginas, em vez de todas as páginas?
- Você está lidando com dados de cartão de crédito
- Você tem usuários que fazem login no seu site & páginas de membros com dados privados
- Você captura dados por meio de formulários, que tipo de dados são?
Às vezes, você só pode proteger partes de seu site, como uma página de login e qualquer página de membro. As partes voltadas para o público em seu site podem não exigir SSL e torná-las HTTP podem fornecer benefícios de desempenho consideráveis.
Algumas pessoas implementam o SSL em todo o site porque simplifica as coisas .
É claro que a implementação do SSL pode ser complicada e, às vezes, o esforço de tentar ter SSL em uma página, mas não em outra, pode significar consideravelmente mais trabalho. O SSL em todo o seu site ajuda a comprovar isso no futuro, reduz o desempenho do desenvolvedor, pode evitar erros e mensagens de erro para os usuários (ou pior ainda expor acidentalmente dados confidenciais por HTTP).
Also, instead of using something like https://mysite.com/login.php,
should I maybe change to https in this way:
https://secure.mysite.com/login.php?
Existem muitas maneiras de implementar um login (e segurança) com o PHP, mas você não entrou em detalhes suficientes aqui para comentar com segurança. Você deve primeiro delinear o que você está tentando alcançar, e então dar uma visão geral de como você vai fazer isso, e então você pode começar a considerar os prós e contras das alternativas.