Voici le scénario:Comment faire en sorte qu'un navigateur fasse confiance à un certificat auto-signé avec une invite conviviale?
- Site Web A est servi à partir d'un domaine public
example.com
via HTTPS. - Site Web A doit accéder à un service B via WebSocket. Ainsi, le websocket doit également être sécurisé, c'est-à-dire
wss://
. - Le service B n'est actuellement pas sécurisé. J'essaie de le sécuriser et j'ai besoin de générer un certificat pour cela.
- Le service B est uniquement disponible depuis l'intranet. L'URL WSS commence par
wss://192.168.x.x
(connexion par IP et derrière un NAT). Oui, cela signifie également que A peut être utilisé uniquement à partir de l'intranet, bien que des fonctionnalités limitées soient disponibles sur Internet. Le cas typique est cependant l'utilisation intranet. - Les ordinateurs qui se connectent au site Web A ne se trouvent pas dans un domaine Windows et ne font actuellement confiance à aucune autorité de certification pouvant être contrôlée par nous. En d'autres termes, nous ne pouvons pas créer un certificat que tous ces ordinateurs approuveront par défaut. Pour cela, nous aurions besoin de travailler avec l'une des grandes autorités communes que tout le monde fait confiance, mais je doute qu'ils délivreraient un certificat pour une adresse IP NAT.
Le problème:
Puisque je ne peux pas créer un certificat que tous les ordinateurs de confiance par défaut, je pourrais aussi bien créer un certificat auto-signé et l'utiliser pour sécuriser le websocket. Cependant ... je ne suis pas vraiment sûr de ce qui va arriver. Je pense que l'utilisateur sera invité chaque fois qu'ils se connectent, ou la connexion échouera silencieusement quand même.
Je peux installer manuellement le certificat sur chaque machine, mais cela nécessite de les visiter séparément, et si une nouvelle personne veut accéder au site Web, je dois me rappeler de le faire sur leur machine aussi. Pas gentil.
Y at-il une bonne solution à cela? Pouvez-vous demander à un site Web de faire confiance de façon permanente au certificat ou à quelque chose?
Le problème est que le site Web lui-même est déjà en cours d'exécution avec un certificat de confiance, mais ce websocket utilisera un certificat non approuvé. Le navigateur émettra-t-il des invites? Je vais essayer de le tester dans les prochains jours, mais je soupçonne qu'il va tout simplement échouer silencieusement (bien, "silencieusement" avec une exception Javascript, mais pour l'utilisateur qui reste silencieux). –