¿Qué es una limpia y simple manera de garantizar la seguridad de una página?
Pregunta
Suponiendo que tienes un formulario que recoge y presenta la información sensible y quiere asegurarse de que nunca se accede a través de inseguridad (no HTTPS) significa, ¿cómo podría usted mejor ir sobre la aplicación de esa política?
Solución
Creo que la mayoría a prueba de balas solución es mantener el código dentro de la SSL raíz del documento único.Esto se asegurará de que usted (u otro desarrollador en el futuro) no se puede accidentalmente enlace a una versión no segura de la forma.Si usted tiene la forma de HTTP y HTTPS, puede que no cuenta siquiera de que el mal que uno se acostumbre inadvertidamente.
Si esto no es factible, entonces yo tendría al menos dos precauciones.Hacer la reescritura de URL de Apache, y tiene una marca de verificación en el código para asegurarse de que la sesión se cifra - verificación de los encabezados HTTP.
Otros consejos
Si usted está ejecutando Apache, usted puede poner una RewriteRule
en su .htaccess
, así:
RewriteCond %{HTTPS} "off"
RewriteRule /mypage.html https://example.com/mypage.html
Echa un vistazo a esto: http://www.dotnetmonster.com/Uwe/Forum.aspx/asp-net/75369/Enforcing-https
Editar:Esto muestra que las soluciones de un IIS punto de vista, pero usted debería ser capaz de configurar acerca de cualquier servidor web para esto.
En IIS?Ir a la configuración de seguridad y éxito "Requieren de conexión segura".Alternativamente, usted puede comprobar las variables de servidor en la página de carga y redirigir a la página segura.
Te sugiero buscar en la solicitud en el código que muestra el formulario, y si no está utilizando SSL, el problema de la redirección a la URL https.
También se puede utilizar un rewite regla en Apache para redirigir al usuario.
O simplemente puede no servir la página a través de HTTP, y mantener sólo en el documento de la raíz de su sitio HTTPS.