Cómo hacer que la computadora (o el usuario) confíe en el software firmado

4

Tengo una aplicación, que firmo y marco con un certificado de firma de código emitido por thawte, con autorización intermedia de firma de código Thawte CA - G2.

La firma está bien (como se muestra en las propiedades del archivo) y puede ver la cadena de certificación, así que todo está bien.

En la mayoría de las PC, el usuario simplemente hace clic en el archivo .exe y se ejecuta, pero en Windows 7 con la configuración predeterminada, aparece el mensaje "Abrir archivo - Advertencia de seguridad" CADA VEZ. Muestra que está firmado, que el editor es nuestra empresa y que el usuario puede verificarlo. Esto no es lo que queremos. Queremos que el usuario haga doble clic en el archivo y listo. Agregué nuestro certificado a los "editores de confianza" en certmgr, y luego agregué nuestro certificado a las "autoridades de certificación raíz de confianza". Creo que probé todas las combinaciones, eso tenía sentido para mí. Aún así no obtengo el resultado deseado.

Usé mucho Google y pasé casi 2 días jugando con él, sin ningún progreso. ¿Cómo puedo firmar otro archivo, enviarlo a la computadora, ejecutarlo de la misma manera conveniente como si fuera desarrollado y lanzado por Microsoft u otra gran empresa?

Necesito una solución general para todos los sistemas operativos de la familia Windows Vista y posteriores.

PD: No quiero desbloquear archivos, hacer hacks de registro o ajustes de nivel de seguridad. Creo que me falta algo sobre dónde instalar los certificados. Si es necesario, no dude en solicitar el código o la configuración, y con gusto se los proporcionaré.

jmodrak
fuente
1
¿Intentaste agregar el certificado a la tienda o agregaste el certificado a la tienda?
Ramhound
Agregué el certificado a la tienda, pero no he probado todas las opciones, no lo he probado Enterprise trust, no lo he probado todo básicamente, así que tal vez solo necesito una pista de qué tienda es la correcta.
jmodrak
¿Qué versión de Windows está ejecutando en estas "La mayoría de las PC" de las que habla? Además, ¿puede publicar una captura de pantalla (o un enlace a una) del mensaje exacto que está viendo?
lzam
¿La aplicación requiere permisos administrativos? Si es así, realmente no hay nada más que pueda hacer si realmente quiere evitar editar la configuración del Control de cuentas de usuario o hacer que los Administradores locales de los usuarios no puedan crear una tarea programada y un acceso directo para iniciar dicha tarea
int_541

Respuestas:

2

Además de agregarlos a la tienda local en 'Editores de confianza' y 'Autoridades de certificación raíz de confianza', debe editar la Política de grupo, localmente o en el nivel de dominio para permitir la confianza.

Para las actualizaciones de SCUP / WSUS utilizando un certificado de firma de código, utilicé un GPO para "Permitir actualizaciones firmadas desde una ubicación del servicio de actualización de Microsoft de la intranet" en / Plantillas administrativas / Componentes de Windows / Actualización de Windows.

Para las instalaciones de aplicaciones, estará en un lugar diferente. Parece que podría ser Configuración del equipo \ Configuración de Windows \ Configuración de seguridad \ Políticas de clave pública \ Configuración de validación de ruta de certificado.

Eche un vistazo a: http://technet.microsoft.com/en-us/library/cc733026.aspx

Miguel
fuente
Sí, editar el GPO era lo que faltaba. Mientras tanto, he hecho eso, pero olvidé mencionarlo aquí. La información más proporcionada solo ayuda, no volverá a cometer el mismo error. ¡Prestigio!
jmodrak
Me alegro de que funcionó, odio que las cosas avanzadas como esta no estén documentadas de una manera fácil de encontrar, simplemente enterradas en los libros blancos en la página 53 para alguien con mucho tiempo para encontrar.
Michael