Question

J'understsand que si je veux utiliser l'authentification dans WCF alors je dois installer un certificat sur mon serveur qui WCF utilisera pour chiffrer les données passant entre mon serveur et le client.

Pour des raisons de développement, je crois que je peux utiliser le util makecert.exe. de faire un certificat de développement.

Quelle est la pire qui peut se produire si j'utilise ce certificat sur l'environnement de production?

et ...

Pourquoi ne puis-je utiliser ce certificat sur l'environnement de production?

et ...

Qu'est-ce que le certificat va réellement faire dans ce scénario?

[Edit: Ajout d'une autre question]

enfin ...

Dans un scénario où le site dispose d'un certificat installé pour fournir un support HTTPS le même certificat peut être utilisé pour les services WCF ainsi?

Note sur ma demande: Son client NetTcp et le service serveur. Les utilisateurs se connecteront en utilisant le même nom d'utilisateur et mot de passe qu'ils utilisent pour le site qui est transmis en texte clair. Je serais heureux de passer u / n + p / p en clair à WCF mais pas autorisé en par le cadre et un certificat doit être en place. Cependant, je ne veux pas acheter un certificat en raison de contraintes budgétaires!

(Désolé pour la question stupide peut-être, mais je ne comprends vraiment ce serait donc la bienvenue aide à ce sujet).

Était-ce utile?

La solution

Eh bien, rien d'important va se produire si vous utilisez un certificat de développeur dans un environnement de production, après tout, un certificat est un certificat et le cryptage qu'il fournit est le même que tout certificat commercial.

Toutefois, le certificat est pas signé par une autorité de certification de confiance, elle ne garantit pas au client que vous est vous . Permettez-moi de cette autre manière. Si votre service était une simple page web du navigateur dira le certificat est invalide

Un certificat SSL pour fournir sur un serveur Web, est un certificat qui indique au client que le domaine est un domaine de confiance et vérifié, et que l'autorité de certification peut se porter garant pour elle.

Ainsi, un certificat établi par makecert.exe serait aussi comme vous écrire votre nom dans un morceau de papier et de dire, par exemple un officier de la loi, que ce votre permis de conduire.

Autres conseils

  1. Un certificat doit être délivré par un soi-disant autorité de certification de confiance. certificats auto-signés (créés par makecert etc) ne sont pas dignes de confiance, et tout le monde qui naviguera à votre site Web recevront un « certificat non valide » (plus précis: « Le certificat est pas digne de confiance parce qu'il est auto-signé ») avertissement. Alors, pire des cas , les gens vont pas aller à votre site, parce qu'ils ne lui font confiance.

  2. Vous pouvez utiliser votre certificat auto-signé dans la production, mais il est pas recommandé pour les raisons expliquées ci-dessus.

  3. Le certificat est utilisé pour établir une connexion sécurisée (HTTPS) entre le client et le serveur. À côté de cela, il est censé vérifier l'identité du serveur. L'identité de votre serveur ne peut pas être garantie si votre certificat est auto-signé.

  4. Dans IIS, si vous installez un certificat sur un site Web, tous les services WCF déployés dans ce site Web sont en mesure d'utiliser le certificat.

En bref, utiliser un certificat auto-signé pour le développement (regarder dans un outil appelé SSL Diagnostics pour la génération facile de certificat dans IIS), mais vraiment faire utiliser un certificat de production pour la production!

« Quel est le pire qui peut arriver si j'utilise ce certificat sur l'environnement de production » La sécurité échouera, à défaut votre service entier.

« Pourquoi je ne peux pas utiliser ce certificat sur l'environnement de production? »
L'autorité de certification spécifié dans votre certificat généré est inconnue par les clients, d'où le certificat ne peut pas être validé / utilisé.

« Qu'est-ce que le certificat va réellement faire dans ce scénario? » La clé publique est utilisé par les clients pour chiffrer la communication. Cela guarentee que seul le propriétaire de la clé privée (le serveur dans ce cas) peut décrypter à nouveau (public-privé paires de clés sont le chiffrement asymétrique)

Hope this helps,

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top