Question

Je suis à la recherche d'un moyen simple de chiffrer mon savon de communication dans mon C# Web-Service.

J'étais à la recherche dans WSE 3.0 mais il semble que Microsoft a chuté de soutien, et par conséquent, il n'est pas simple à utiliser.
Il semble WCF aurait pu être une option, mais je préfère ne pas la mise à niveau .NET 2.0 .

Tout simple, simple , la méthode de chiffrement?

Était-ce utile?

La solution

Je pense que cela peut aider;l'année dernière nous avons utilisé ce pour compresser les webservices et il a très bien fait, je pense que cela pourrait être améliorée grâce au chiffrement des classes;

La création de SAVON Extensions - Extension de Compression

Autres conseils

Tout ce que vous faites pour fournir des "cryptage" qui n'est pas à l'aide de SSL/TLS est susceptible d'être vulnérable.Maintenant vous devez vous demander, est-il la peine de gravure de dev heures vous pouvez dépenser sur les caractéristiques de caoutchouc de poulet à la mesure de sécurité?Peut-être qu'il est.

.NET Api comme DPAPI et Win32 crypt32 API faciliter le chiffrage des blobs de données avec des clés statiques.Mais à la façon dont vos clients reçoivent les clés?Toute installation de SAVON client devra soit avoir la clé gravé dans sa configuration, ou les recevoir sur l'Internet sécurisé.

C'est le problème de SSL/TLS résout pour vous;la danse vous faire avec des certificats TLS est ce qui résout le problème de la communication des clés publiques sur canaux non ables.

Je suis peut-être naïf, mais serait forcer la communication via https être acceptable?Je développe web les services qui s'exécutent sur 2.0 et ont eu succès avec juste en train de IIS appliquer https sur le virtuel répertoire.

Ce serait la façon la plus simple d'aller probablement, mais malheureusement je ne suis pas avoir le contrôle sur IIS de configuration, et ne peut pas garantir qu'il peut exécuter le protocole https.

Dans ce cas, peut-être le meilleur pari est de deux cas-par-cas chiffrer les parties des messages SOAP (après tout, vous ne pouvez pas besoin de l'intégralité du message à chiffrer - seulement certains domaines sensibles?), ou vous pouvez choisir d'utiliser un HttpModule d'intercepter tous les messages et agir sur le contenu.Dans les deux cas, vous allez probablement avoir à fournir des procurations.

Je suis peut-être naïf, mais serait forcer la communication via le protocole https être acceptable?- Je développer des services web qui s'exécutent sur la 2.0 et qui ont eu du succès avec juste en train de IIS pour appliquer https sur le répertoire virtuel.

Alternativement, ou en outre, vous pouvez vérifier la HttpRequest.IsSecureConnection propriété.

En fait, nous utilisons WSE 3.0 dans nos services web, qui ont été initialement développés pré-WCF.Pour plus de sécurité, nous utilisons un jeton SAML en fonction du système construit sur les classes de chiffrement dans le Système.De sécurité.

Il fonctionne très bien.Cependant, cette méthode n est pas "simple".

Vous pouvez utiliser des paramètres de chiffrement en C# en utilisant le Système.De sécurité.La cryptographie extension.

Le cryptage de vos paramètres et le décryptage de leur serait plus difficile, mais beaucoup plus sûr.

Comment:Crypter et Décrypter des Données à l'Aide d'un Symétrique (Rijndael) Clé (C#/VB.NET)

Je suis à l'aide de cette approche pour un OTP (one time password) du service web, et il fonctionne très bien pour moi.

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