2009-09-30 16 views

Respuesta

12

Publique los datos usando SSL.

Aquí hay un good resource on setting up SSL with IIS and ASP.NET.

+0

tiene eso sólo significa que especifica https: // dentro de la url en la que estoy realizando la transferencia (suponiendo que SSL esté instalado en IIS) – BigOmega

+0

@Ryan, también debe cargar el formulario en https y publicarlo en el mismo protocolo. –

+0

@Ryan - H TTP es un protocolo de texto claro ... todo lo que haces con él se puede interceptar en cualquier nodo que atraviese en Internet. HTTPS es la única solución segura. – womp

0

No he leído sobre la implementación de ASP.net-MVC. Sin embargo, creo que has mezclado la terminología.

El patrón MVC se evaluaría en el extremo del servidor. [Así que hay poca necesidad de hacer comprobaciones de seguridad entre los componentes (a menos que estén expuestos fuera del programa)]

Creo que muchas personas tienen la impresión de que usted está hablando de HTTP POSTS después de la presentación de un formulario (en lugar de HTTP GET)

1

Publicar con SSL como Rex M mencionado es definitivamente el primer paso. Probablemente también deba hacer que la página donde están escribiendo su número de tarjeta de crédito sea SSL. Esto les dará a sus usuarios la URL verde de la comodidad.

También debe incluir protección contra los ataques CSRF. Usa el token anti falsificación.

Además, debe usar el PRG (Post, Redirect, Get) pattern para asegurarse de que los números de tarjeta de crédito no se envíen dos veces. Después de la publicación, no solo muestre una vista diferente, envíe una redirección para que su navegador haga un GET contra otra URL, probablemente su página de confirmación.

se encontrará con unos ASP.NET MVC cosas específicas:

  1. Si usted tiene algunas páginas http y https algunas páginas, ¿cómo va a codificar los enlaces a las páginas HTTPS de las páginas HTTP . Puede codificarlos, pero tendrá que codificar el dominio y el protocolo. No se puede simplemente usar <% = Html.ActionLink (... ver esto SO question para más detalles.

  2. Usted querrá asegurarse de que no puede golpear a los controladores cuando no se está utilizando SSL. Esta .. le ayudará a detectar cualquier error, y asegurarse de que nadie usa http en lugar de https Ver el atributo [requireSSL] en los futuros de montaje Aquí hay un post al respecto de Adam Salvo

Cuestiones relacionadas