Je démarre mon propre projet, il a une zone d'enregistrement / connexion (via devise avec RoR, bien hachée et salée bien sûr). Comme j'utilise des sous-domaines et que je dois y accéder avec des iframes (c'est justifié, vraiment!), J'aurais besoin d'un de ces certificats coûteux qui couvrent les sous-domaines.
Comme je le fais de mon temps et de mon argent, j'hésite à laisser quelques centaines de dollars sur un certificat, ainsi que quelques heures de plongée dans quelque chose que je n'ai pas essayé auparavant. Je ne stocke aucune information sensible à part l'adresse e-mail et le mot de passe. Pour autant que je comprends, la seule vulnérabilité se produit lorsqu'un utilisateur se connecte ou s'inscrit à partir d'un réseau non crypté (comme un café) et que quelqu'un écoute le réseau.
Suis-je bon marché? Est-ce quelque chose que je devrais aborder avant de me libérer dans la nature. Je devrais probablement mentionner que j'ai 25 000 utilisateurs inscrits pour être averti lorsque je lance, donc je suis nerveux à ce sujet.
Réponses:
Depuis que cette question a été posée, beaucoup de choses ont changé. Votre site a-t-il besoin de HTTPS? OUI!
Les certificats avec validation de domaine sont gratuits auprès de nombreux fournisseurs, par exemple Let's Encrypt. Ces certificats sont tout aussi bons que ceux pour lesquels vous payez de l'argent. Grâce à l'identification du nom du serveur, il n'est pas nécessaire de posséder une adresse IP.
Les navigateurs marquent de plus en plus les pages non HTTPS comme non sécurisées plutôt que neutres. Le fait que votre site soit marqué comme non sécurisé ne semble pas bon.
Les technologies Web modernes nécessitent un chiffrement. Que ce soit la politique de Chrome d'activer uniquement les nouvelles fonctionnalités pour les sites HTTPS, le classement préféré de Google pour les sites HTTPS , ou HTTP / 2 chiffré étant plus rapide que HTTP / 1.1 en texte clair , vous laissez des opportunités sur la table. Oui, le chiffrement ajoute de la charge à vos serveurs, mais cela est imperceptible pour la plupart des sites - et particulièrement imperceptible pour les utilisateurs.
La confidentialité est plus importante que jamais. Qu'il s'agisse de FAI vendant votre flux de clics ou de services secrets passant au crible toutes vos connexions, il n'y a aucune bonne raison de laisser toute communication visible. Utilisez HTTPS par défaut et n'utilisez HTTP que si vous êtes sûr que les informations transmises peuvent être rendues publiques en toute sécurité et peuvent être falsifiées.
Notez que les mots de passe ne doivent pas être transmis via des connexions en texte brut.
En vertu de certaines réglementations telles que l'EU-GDPR, vous êtes tenu de mettre en œuvre des mesures de sécurité de pointe, qui incluent généralement HTTPS pour les sites Web.
Il existe quelques non-solutions:
«Utiliser OAuth au lieu des mots de passe» passe à côté du fait qu'il y a toujours des jetons de type mot de passe impliqués. À tout le moins, vos utilisateurs disposeront d'un cookie de session qui doit être protégé, car il sert de mot de passe temporaire.
Les certificats auto-signés sont rejetés par les navigateurs. Il est possible d'ajouter une exception, mais la plupart des utilisateurs ne pourront pas le faire. Notez que la présentation d'un certificat auto-signé ne se distingue pas de l'utilisateur d'une attaque MITM utilisant un certificat non valide.
Donc: les certificats sont gratuits et HTTPS peut rendre votre site plus rapide. Il n'y a plus d'excuse valable. Prochaines étapes: lisez ce guide sur la migration vers HTTPS .
la source
J'en achèterais un. Le coût du certificat n'est pas si important compte tenu du niveau de confiance qu'il offre aux utilisateurs. Considérez-le comme un investissement. Si vos applications ne semblent pas sécurisées (et que les certificats SSL correctement signés supposent qu'un site Web est sécurisé), les gens peuvent perdre tout intérêt à utiliser vos futurs produits.
la source
Si vous collectez "uniquement" des e-mails et des mots de passe, vous pouvez essayer de créer votre propre certificat OpenSSL (http://www.openssl.org/) avant d'engager des fonds.
Mais...
C'est juste quelque chose que vous pouvez faire pour "essayer des choses" parce que les utilisateurs du site Web recevront une guerre car ce ne sera pas un certificat reconnu / accepté.
Mon conseil est d'investir dans SSL, tout simplement parce que l'e-mail et les mots de passe sont des données privées très sensibles qui peuvent conduire à d'autres types d'expositions (disons que j'utilise le même pass pour mon compte de messagerie - si ces informations fuient, alors tous les e-mails les données sont exposées, y compris les données CC, toutes les informations d'accès que j'ai pour d'autres services en ligne et Dieu sait quoi d'autre ...)
Nous avons besoin d'un WEB sûr et fiable et quelques dizaines de dollars est un petit prix à payer pour la sécurité des utilisateurs. (même aussi basique que SSL)
la source
Problèmes de sécurité
Ce n'est pas vrai, les données transmises entre l'utilisateur et votre site web ne sont jamais en sécurité. À titre d'exemple, http://www.pcmag.com/article2/0,2817,2406837,00.asp détaille l'histoire d'un virus qui a changé les paramètres DNS des gens. Quelle que soit la qualité de la protection de votre réseau actuel, toute soumission sur Internet passe par de nombreux serveurs différents avant d'arriver au vôtre. N'importe lequel d'entre eux peut être malveillant.
Les certificats SSL vous permettent de crypter vos données dans un cryptage à sens unique qui ne peut être décrypté que sur votre serveur. Donc, peu importe où les données sautent sur leur chemin vers votre serveur, personne d'autre ne peut lire les données.
Dans la plupart des cas, et cela dépend de votre hébergement, l'installation d'un certificat est plutôt indolore. La plupart des fournisseurs l'installeront pour vous.
Types de certificats SSL
Comme indiqué dans certaines réponses, vous pouvez créer vos propres certificats SSL. Un certificat SSL n'est qu'un appariement de clés publiques et privées. Votre serveur donne la clé publique, le client l'utilise pour crypter les données qu'il envoie et seule la clé privée sur votre serveur peut la décrypter. OpenSSL est un bon outil pour créer le vôtre.
Certificats SSL signés
L'achat d'un certificat auprès d'une autorité de certification ajoute un autre niveau de sécurité et de confiance. Encore une fois, il est possible que quelqu'un puisse s'asseoir entre le navigateur client et votre serveur Web. Ils auraient simplement besoin de donner au client leur propre clé publique, de décrypter les informations avec leur clé privée, de les rechiffrer avec votre clé publique et de vous les transmettre et ni l'utilisateur ni vous ne le sauriez.
Lorsqu'un certificat signé est reçu par l'utilisateur, son navigateur se connecte au fournisseur d'authentification (Verisign, etc.) pour valider que la clé publique qu'il a reçue est bien celle de votre site Web et qu'il n'y a pas eu de falsification.
Donc, oui, vous devriez avoir un certificat SSL signé pour votre site. Cela vous donne une apparence plus professionnelle, donne à vos utilisateurs une plus grande tranquillité d'esprit dans l'utilisation de votre site et, surtout, vous protège contre le vol de données.
Plus d'informations sur l'attaque Man In The Middle qui est au cœur du problème ici. http://en.wikipedia.org/wiki/Man-in-the-middle_attack
la source
Les mots de passe doivent être traités comme des informations personnelles - franchement, étant donné la réutilisation des mots de passe, ils sont probablement plus sensibles qu'un SSN.
Compte tenu de cela et de votre description, je me demande pourquoi vous stockez un mot de passe ...
J'utiliserais OpenID et si vous ressentez le besoin d'avoir votre propre identifiant, créez un seul sous-domaine pour cela et utilisez OpenID partout ailleurs.
Si vous ne faites pas OpenID, vous pouvez toujours utiliser le même modèle login.yourdomain pour éviter d'avoir besoin d'un certificat générique, mais comme je l'ai dit, les mots de passe du monde d'aujourd'hui sont au moins aussi sensibles que SSN / anniversaire, ne le collectez pas si vous n'êtes pas obligé.
la source
RapidSSL via Trustico ne coûte que 30 $ ou vous pouvez obtenir un joker RapidSSL pour moins de 160 $ - ils ont également une garantie de prix, donc si vous le trouvez moins cher, ils correspondront.
la source
Si vous avez une adresse IP unique, vous pourriez tout aussi bien obtenir un certificat, en particulier si vous traitez des données qui sont même sensibles à distance. Comme vous pouvez obtenir gratuitement des certificats de confiance de StartSSL , il n'y a vraiment aucune raison de ne pas en avoir un.
la source
Il serait sage d'en acheter un. Comme mentionné, c'est
ALL about end user trust
sur votre site Web.so I'm hesitant to drop a couple of hundreds on a certificate
- Eh bien, ce n'est pas cher et vous pouvez en obtenir un de moins de 50 $.SSL - est vraiment important pour sécuriser votre site et ajouter un niveau de confiance aux visiteurs de votre site. En ce qui concerne le processus de connexion, pourquoi NE PAS utiliser OAuth ? Cette fonctionnalité évitera aux utilisateurs de se soucier de passer du temps à s'inscrire à votre site Web. Le trafic des utilisateurs du site Web en bénéficiera vraiment. Sérieusement !, trouvez du temps pour le rechercher .
Une bonne référence sur les questions SSL courantes - Tout sur les certificats SSL
la source
Je penserais également à utiliser un fournisseur tiers pour la connexion (par exemple openid). La plupart des CMS le supportent déjà.
la source
Un SSL présente des inconvénients. Cela ralentit votre site Web. Vraiment.
La seule raison pour laquelle les gens utilisent des certificats SSL est lorsque l'argent des clients est impliqué.
Si vous n'impliquez pas l'argent de vos clients, la décision de prendre un certificat SSL est purement commerciale.
Si vous avez un backend pour vos clients, sans argent impliqué sur le site Web, mais qu'ils doivent être sûrs qu'ils sont sécurisés, alors prenez un certificat. C'est un investissement pour la confiance de vos clients.
la source
Déposer de l'argent sur un certificat SSL générique peut être la meilleure option, ou non. Jetez un œil au serveur Web Caddy: https://caddyserver.com/ . Il a de nombreuses fonctionnalités intéressantes, notamment un support intégré pour récupérer des certificats gratuits de Let's Encrypt. Vous pouvez simplement spécifier tous vos domaines dans son fichier de configuration et il récupérera des certificats pour eux. L'autre fonctionnalité vraiment cool est le TLS à la demande. Si vous l'activez, chaque fois qu'il reçoit une demande pour un nouveau domaine pour lequel il n'a pas de certificat, il en attrape un lors de la négociation TLS initiale. Cela signifie que vous pouvez avoir littéralement des milliers de domaines et ne pas avoir à configurer chacun d'eux dans la configuration Caddy.
Remarque: Autant que mon enthousiasme puisse en avoir l'air, je ne suis pas affilié à Caddy de quelque manière que ce soit, sous une forme ou une forme autre que d'être un utilisateur passionné de leur produit.
la source
Tout tourne autour des utilisateurs, ils n'offrent aucune sécurité, les certificats ne sont que des produits à vendre.
Vous voudrez peut-être y jeter un œil
http://en.wikipedia.org/wiki/Comparison_of_SSL_certificates_for_web_servers
la source