J'ai été assez paranoïaque d'apprendre à "faire de la sécurité" pour ce site que je construis (le premier site non trivial que j'ai créé), et j'ai remarqué quelque chose qui me dérange: SSL.
J'ai lu de nombreux fils de sécurité ici, sur StackOverflow et ailleurs, sur la régénération d'identifiants de session après n utilisations et sur la manière dont vos mots de passe doivent être salés, hachés et jamais stockés en texte brut. J'ai beaucoup lu sur la manière de détecter le piratage d'une session, en effectuant un suivi des adresses IP, des agents utilisateurs et des cookies de suivi.
Ce que je ne comprends pas, c’est ce qui importe en tout cas lorsque le site Web vous enregistre via un protocole HTTP POST normal _ et vous envoie votre mot de passe par câble en texte brut.
Je comprends que toutes les autres méthodes que j'ai énumérées sont nécessaires pour réduire votre exposition globale. Peut-être que certains sites n'ont pas besoin de autant de sécurité, mais je suppose que ce que je vous demande, c'est:
Des sites tels que Gmail, votre banque et LinkedIn, je vois très bien pourquoi SSL est une bonne chose, mais ce qui fait qu'il est normal que des sites comme Facebook et reddit ne se dérangent pas (diable, PlentyOfFish stocke même votre mot de passe en clair et l'envoie même par e-mail. à vous chaque semaine pour rappel!?!)?
À quel point devrais-je me préoccuper de la configuration de SSL (surtout que je commencerais par un hôte partagé et que je suis assez bon marché pour commencer)? Mon site ne contient aucune information personnelle, si cela peut vous aider. Si le site devenait un succès, je penserais sérieusement à payer un supplément pour la sécurité supplémentaire.
Cela compte autant que vous et vos utilisateurs le pensez. Envoyer des mots de passe via http sous forme de texte brut les laisse vulnérables au reniflement de paquets. Maintenant, le fait de savoir si quelqu'un va réellement déranger ces paquets est une toute autre histoire. Si vous voulez assurer à vos utilisateurs l'expérience la plus sécurisée possible, utilisez SSL pour leurs envois de connexion. Si vous pensez que vos utilisateurs seront plus heureux et plus susceptibles d’interagir de manière positive avec votre site Web (par exemple, acheter des choses, faire des choses, etc.), utilisez SSL pour leurs envois de connexion. Si vous avez quelque chose qui vaille la peine d'être volé (c'est-à-dire les informations utilisateur), utilisez alors SSL.
Si vous n'avez rien d'intéressant à voler, ne pensez pas que SSL améliorera considérablement la sécurité, ou que vos utilisateurs ne la verront pas comme une fonctionnalité utile, alors vous voudrez peut-être envisager de ne pas utiliser SSL.
Pour ce qu'il en coûte d'installer un certificat SSL, à moins que votre budget ne soit minime, il n'est jamais mauvais de sécuriser la connexion d'un site. Et ne laissez pas ce que les autres sites font vous, car de nombreux sites plus importants ne suivent pas nécessairement les meilleures pratiques. C'est pourquoi il semble y avoir un flot continu de reportages sur le fait que l'un d'entre eux soit compromis d'une manière ou d'une autre.
En adoptant l’approche opposée à la réponse de John, je pense que vous devriez sérieusement envisager SSL si vous manipulez toute information personnellement identifiable - y compris: les noms avec des adresses physiques, adresses de messagerie, informations financières et communications que les utilisateurs pourraient raisonnablement s'attendre à voir être privées.
À moins que votre site ne fournisse aux utilisateurs un moyen de publier des informations les concernant, vous devez considérer que les informations personnellement identifiables fournies par vos utilisateurs sont conservées par vous et que vous les gardez dans la plus stricte confidentialité, à moins que la politique de confidentialité de votre site n'informe autrement vos utilisateurs.
Empêchez les tiers non autorisés de consulter les informations de vos visiteurs et tenez vos utilisateurs informés de la manière dont vous utilisez leurs informations pour maintenir la confiance de vos visiteurs.
Même Facebook le fait, autant que je sache.
<form method="POST" action="https://login.facebook.com/login.php?login_attempt=1" id="login_form" onsubmit=";var d=document.documentElement;if (d.onsubmit) { return d.onsubmit(event); }else { return Event.fire(d, "submit", event); }">
(Source HTML de connexion à Facebook.com)
En août 2014 Google a officiellement indiqué que HTTPS sera utilisé comme signal de classement.
Cela signifie que même si votre site Web est un site totalement statique, si vous vous souciez du référencement, vous devriez au moins envisager de configurer un certificat SSL.
Bien sûr, HTTPS n’est qu’un signal de classement parmi des centaines; il existe donc probablement des choses plus importantes à faire pour le référencement.
Voici un angle que vous n'avez peut-être pas pris en compte: le fait de ne pas utiliser SSL/TLS peut exposer vos utilisateurs à une surveillance passive, même si votre site ne dispose d'aucune connexion.
Un acteur menaçant peut simplement s'asseoir entre votre utilisateur et le reste d'Internet, en regardant toutes les URL demandées par votre utilisateur et en créant des modèles d'éléments visionnés par votre utilisateur. Des informations individuelles peuvent certes être insignifiantes, mais la combinaison de nombreuses informations peut créer une image beaucoup plus grande.
C’est pour cette raison que je propose HTTPS sur mon propre site, qui ne fournit que du contenu statique.