2010-02-11 7 views
9

Tengo un controlador de protocolo de url personalizado para direcciones URL de la forma myhandler: // ruta/a/algo. Esto se registra en una aplicación de cliente instalada localmente que maneja las solicitudes y hace "lo correcto".Advertencias de seguridad de controlador de protocolo Url

Sin embargo, cuando tengo un vínculo de esa forma en la perspectiva (2007), Outlook muestra un gran advertencia miedo que dice:

oficina Microsoft ha identificado un potencial problema de seguridad

Esta ubicación puede no sea seguro ...

Los hipervínculos pueden dañar su computadora y sus datos. Para proteger su computadora, haga clic solo en los hipervínculos de fuentes confiables.

¿Desea continuar?

soy consciente de la clave de registro de vista que me permita desactivar estas advertencias en su totalidad (http://support.microsoft.com/?kbid=925757), pero no quiero ser un "mal ciudadano" en la máquina.

¿Hay alguna forma de que pueda "incluir en la lista blanca" mi controlador de protocolo url para indicar que he realizado la debida diligencia de seguridad sin abrir el acceso a otros manejadores de protocolo URL en la máquina que podrían no estar reforzados por la entrada malintencionada del usuario?

Outlook no solicita las URL del formulario http:https:mailto: (y quizás otras). ¿Está esta lista codificada en algún lugar profundo de las entrañas de la oficina o hay alguna forma de agregar mi protocolo específico a la lista?

Respuesta

1

ya que tienes cosas al cuadrado para cuando la URL se abre en un navegador (pero no de Outlook), mi trabajo en torno sugerencia es:

Dar a la gente lo que esperan, una URL http regular. Luego haga que su servidor redirija a la URL especial con el controlador especial. O bien, proporcióneles una url de archivo y haga que el contenido del archivo sea un Javascript redirigido al lugar real.

creo que Apple hace algo similar en sus referencias a los enlaces de iTunes-manejados como http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=80028216

Agregado, esta técnica también le permite mostrar una página de bienvenida en el navegador con instrucciones sobre qué hacer si su software tiene no se ha instalado todavía en la máquina local.

+0

me gusta la idea, pero una de mis requisitos es poder operar cuando no estoy conectado a una red (el escenario fuera de línea). – StarBright

+0

Re: fuera de línea: utilice el controlador file: // para cargar un archivo html local con javascript para redireccionar a su controlador personalizado –

4

Recientemente tuve el mismo problema y pude resolverlo. Las claves de registro donde debe registrar su controlador de protocolo se describen en this kb article.

Tenga en cuenta que se refiere a un hotfix que necesita ser instalado, pero para mí funcionó sin instalar nada. Tal vez el hotfix ya estaba distribuido con el servicio de actualización de Windows.

+0

En cuanto a la instalación de la revisión o no, creo que se incluyó en Office 2007 SP3. El artículo sobre la revisión dice que SP1 o SP2 es un requisito previo. Esto funcionó para mí sin instalar la revisión. – kevinpo

2

Tal vez no estaba allí para empezar, pero el enlace que antes citado (http://support.microsoft.com/?kbid=925757), ahora tiene la respuesta que estabas buscando - más abajo bajo el título "Cómo habilitar o deshabilitar las advertencias de hipervínculo al protocolo de ", que tiene información similar a la respuesta de Zarat, excepto que es específica para Office 2007 y 2010 y no requiere la revisión.

Además, como las claves de registro indican que esto funciona para TODAS las aplicaciones de Office, no solo para Outlook.

trabajó por primera vez para mí en Excel 2010

3

En cuanto a cómo hacer esto para Outlook 2013, solía respuesta de @ bmadtiger de averiguar el camino para una clave de registro para confiar en un único protocolo. Para Outlook 2013, la clave Policies\Microsoft\Office\15.0\Common no existe de manera predeterminada, por lo que debe agregarla usted mismo.

Así, a confiar en un solo protocolo, agregue la siguiente clave:

HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\{version}\Common\Security\Trusted Protocols\All Applications\{protocol}: 

Dónde {version} es la versión interna de la oficina y {protocol} es el protocolo que desea confiar.

  • Office 2010 {version} es 14.0
  • Office 2013 {version} es 15.0
  • Oficina 2015 {version} es 16.0

Por ejemplo, para Office 2013 y el protocolo ttstudio:

KEY_CURRENT_USER\Software\Policies\Microsoft\Office\15.0\Common\Security\Trusted Protocols\All Applications\ttstudio: 

Si usted está buscando un archivo de registro para ello, basta con pegar el siguiente código en un archivo .reg, cambiando {version} y {protocol} según sea necesario, y luego ejecutar dicho archivo de registro:

Windows Registry Editor Version 5.00 

[HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\{version}\Common\Security\Trusted Protocols\All Applications\{protocol}:] 
+0

Lo siento por necroing esto, pero ¿no siempre hay una política de grupo en la que puede establecer esto, cuando la clave de registro se encuentra en \ Software \ Policies \? – Tom

Cuestiones relacionadas