2009-09-30 15 views

Répondre

12

Affichez les données à l'aide de SSL.

Voici un good resource on setting up SSL with IIS and ASP.NET.

+0

que cela signifie simplement spécifier https: // dans l'url que je poste (en supposant que le certificat SSL est installé sur IIS) – BigOmega

+0

@Ryan vous devez également charger le formulaire sous https, et le poster dans le même protocole –

+0

@Ryan - H Le TTP est un protocole en texte clair ... tout ce que vous faites avec lui peut être intercepté sur n'importe quel nœud qu'il traverse sur Internet. HTTPS est la seule solution sécurisée. – womp

0

Je n'ai pas lu sur l'implémentation de ASP.net-MVC. Cependant, je crois que vous avez mélangé la terminologie.

Le modèle MVC serait évalué à la fin du serveur. [Donc, il n'y a pas besoin de faire des contrôles de sécurité entre les composants (sauf s'ils sont exposés en dehors du programme)]

Je crois que beaucoup de gens ont l'impression que vous parlez de HTTP POSTS après la soumission d'un formulaire (par opposition à HTTP GETs)

1

Publier avec SSL comme Rex M mentionné est certainement la première étape. Vous devriez probablement faire la page où ils tapent leur numéro de carte de crédit SSL aussi bien. Cela donnera à vos utilisateurs l'URL verte du confort.

Vous devez également inclure une protection contre les attaques CSRF. Utilisez le jeton anti-falsification.

En outre, vous devez utiliser le PRG (Post, Redirect, Get) pattern pour vous assurer que les numéros de carte de crédit ne sont pas soumis deux fois. Après la publication, ne faites pas que rendre une vue différente, envoyez une redirection pour que votre navigateur fasse un GET contre une autre URL - probablement votre page de confirmation.

Vous tomberez sur un certain nombre de choses spécifiques ASP.NET MVC:

  1. Si vous avez des pages http et quelques pages https, comment allez-vous coder les liens vers les pages https à partir des pages http . Vous pouvez les coder en dur, mais vous devrez coder en dur le domaine et le protocole. Vous ne pouvez pas simplement utiliser <% = Html.ActionLink (... voir ce SO question pour plus de détails.

  2. Vous voulez vous assurer que vous ne pouvez pas frapper vos contrôleurs lorsque vous ne l'utilisez SSL. Cette .. vous aider à attraper des erreurs et assurez-vous que personne n'utilise http au lieu de https Voir la [requiressl] attribut dans l'assemblage à terme Voici un blog à ce sujet de Adam Salvo