2009-03-27 11 views
7

IE8 tiene una función llamada InPrivate Filtering, que bloqueará las secuencias de comandos que encuentre en las páginas web de más de 'n' sitios diferentes.¿IE8 va a romper mi jQuery alojado en CDN?

Estoy escuchando el podcast 'Security Now'' más reciente, que habla maravillas de esta característica por ser excelente.

¡Al mismo tiempo grito NOOO! Lo que * # & $ - porque mi sitio (como muchos otros) incluye lo siguiente (jQuery + SWFObject). es decir, estoy usando Google's CDN para alojar mi jQuery.

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/swfobject/2.1/swfobject.js"></script> 

Así que cuál es el trato - ¿Debo dejar de usin jQuery y swfobject de un CDN?

¿Qué están haciendo todos los demás?

** Editar: ** No pude averiguar si mantienen una lista de "sitios de confianza" o no, pero de acuerdo con this de Microsoft, el filtrado de InPrivate es por sesión. Entonces, al menos, alguien tiene que habilitarlo activamente en cada sesión.

InPrivate Filtering está desactivado de forma predeterminada y debe habilitarse en una por sesión. Para usar esta función , seleccione InPrivate Filtering en el menú Seguridad. Para acceder y administrar las diferentes opciones de filtrado para Internet Explorer 8, seleccione InPrivate Configuración de filtrado en el menú Seguridad . Para finalizar su sesión InPrivate Browsing , simplemente cierre la ventana del navegador .

+4

Y ahora sí MS anfitrión de jQuery en su propia CDN ... – orip

+0

dejar en manos de Microsoft para añadir una característica que en realidad podría hacerse un hueco enorme en el directorio/software espía problema de phishing/virus , y paralizarlo con un nombre tonto (ya están tratando de venderlo, eso es un problema), y el requisito de habilitación por sesión. Sin mencionar que no "aprenderá" y bloqueará automáticamente las secuencias de comandos incorrectas, ni agregará ningún valor a un navegador ya defectuoso. – Sneakyness

Respuesta

4

Si su sitio tiene contenido que la gente no quiere almacenar en la caché (sitio del banco, pornografía u otra cosa "sensible"), entonces no utilizaría un archivo alojado externamente. O si su sitio está completamente roto si el archivo no se carga, lo consideraría. Pero si su sitio es otra cosa, no me preocuparía. No creo que esta sea una característica que la mayoría de las personas usará si quieren ocultar sus pistas. Y si realmente lo desean, déjalos lidiar con las consecuencias.

+0

esta es la dirección a la que me estoy inclinando, tan pronto como vi el hecho de que está basado en sesiones y no es permanente. si es permanente, da mucho miedo (desde el punto de vista del desarrollador web), pero si es temporal, el usuario siempre sabrá que lo tiene habilitado. –

1

Debe alojar los archivos JS en su propio sitio.

Here's another reason para alojar el archivo JS en su sitio.

+0

¿Qué pasa en esta respuesta? – Kamarey

+0

Está mal porque Michael aconseja no usar Google CDN porque tienen algunas horas de inactividad, cuando todo el mundo sabe que el tiempo de actividad y el rendimiento de Google siempre serán mejores que los suyos. –

+14

¿no coincidiría el tiempo de actividad de una página HTML en su sitio con el tiempo de actividad de un archivo JS en su sitio? Nunca importará si tu JS tiene mejor tiempo de actividad que tu HTML, ¿verdad? –

3

Esto puede parecer una tontería, pero dado que IE8 está fuera, ¿por qué no prueba su sitio con InPrivate encendido y observa cómo se comporta? Además, si puede informar sus hallazgos aquí, sería genial :)

2

Parece que hay una gran posibilidad de que esto se desactive con InPrivate habilitado, pero en última instancia depende de los hábitos de navegación de cada usuario.

Si un usuario visita 10 sitios en modo normal que todos enlazan a archivos del mismo dominio de terceros, los enlaces a archivos en ese dominio se bloquearán cuando InPrivate esté habilitado.

Así que, si bien no podrá aprovechar la CDN, debe alojar archivos como este usted mismo si necesita que funcionen de manera confiable.

InPrivate Blocking mantiene un registro de artículos de terceros como la de arriba mientras navega.Cuando elige navegar con InPrivate, IE bloquea automáticamente los sitios que tienen "visto" en más de diez sitios.

También puede seleccionar manualmente los elementos a bloquear o permitir, u obtener información sobre el contenido de terceros directamente desde el sitio haciendo clic en el “Más información de este sitio web” enlace. Tenga en cuenta que Internet Explorer solo registrará datos para InPrivate Blocking cuando se encuentre en el modo de navegación "normal" , ya que no se retuvo ningún historial de exploración mientras navega InPrivate. Una forma fácil de pensar en es que su navegación normal determina qué elementos bloquear cuando navega InPrivate.

Descargo de responsabilidad: Realmente no he probado nada de esto ya que no tengo IE8, pero el documento con el que se vinculó es bastante claro al respecto.

+0

usted resumió mi preocupación muy bien. el hecho es que TONNES de gente está haciendo esto y me preocupa que sea un gran problema. Estoy yendo hacia adelante y estoy usando google, pero estoy un poco confundido sobre la aparente bomba de relojería. Esta pregunta es bastante antigua. Acabo de asignar una recompensa para ver si alguien más sabía más. No estoy perdiendo el sueño por ello, pero estaría muy interesado en ver a dónde va esto. (especialmente desde que MS tiene su propia CDN ahora). No vi nada en la documentación sobre servidores permitidos globalmente, como google/MS –

+0

. En realidad estoy usando el CDN de Google y esto no era algo de lo que fuera consciente antes (¡gracias por plantear la pregunta!). Supongo que si esto resulta ser un gran problema, MS responderá (¿quizás actualice IE8 con algún tipo de lista blanca como sugirió?). –

0

Creo que habría un bajo porcentaje de personas que usan IE8 (Creo que), luego activando la opción "InPrivate Browsing". El CDN de Google dice de alguna manera que "tiene un servidor cerca del lugar donde el usuario accede al sitio web, de modo que el rendimiento aumenta" (no se cita directamente). IE me ha causado numerosos problemas en el pasado, y dejé de apoyarlo.

0

funciona desde el nombre de dominio del sitio, p. ajax.googleapis.com o resuelve el nombre? si solo registra el dominio, ¿no podría simplemente envolverlo en un CNAME, p. js.sudominio.com -> ajax.googleapis.com?

1

Siempre me he preguntado, ¿sería posible tener una alternativa segura en caso de que el CDN no esté disponible/no disponible?

Algo así como:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript"> 
    if (typeof jQuery == 'undefined') { 
     document.write(unescape("%3Cscript src='local/jquery.min.js' type='text/javascript'%3E%3C/script%3E")); 
} 
</script>