Ejecutar una aplicación .NET desde un recurso compartido de archivos sin firma de código

El modelo de seguridad .NET genera errores de seguridad cada vez que se ejecuta un archivo .NET desde un recurso compartido de archivos. El error no aparece cuando se ejecuta desde una unidad local. ¿Alguien sabe de una manera de evitar esto sin requerir que el código esté firmado?

Uso de CasPol para confiar plenamente en una acción

Más respuestas aquí:

¿Por qué mi aplicación .NET se bloquea cuando se ejecuta desde una unidad de red?

Use caspol.exe para asignar a ese archivo los permisos suficientes para ejecutar su progtwig.

Es posible que pueda comstackr la aplicación contra .net 3.5 sp1; esta versión estaba eliminando esta configuración de seguridad.

Para solucionar esto, terminamos envolviendo nuestro archivo .exe en un archivo por lotes. El archivo por lotes copió el archivo .exe en la unidad local y lo ejecutó desde allí. Estoy seguro de que hay una manera menos hacky sin embargo!

Asegúrese de que .Net 3.5SP1 esté instalado en la máquina que ejecuta el software. Esta versión elimina la restricción de seguridad en las aplicaciones que se ejecutan desde un recurso compartido de archivos. Les permite funcionar con plena confianza frente al modelo anterior, lo que los coloca en un entorno restringido.

Aquí hay un enlace al artículo del blog de Vance sobre el tema.

Puede usar el asistente de configuración de .Net para aflojar la seguridad de la Asamblea específica y su ubicación, esto a su vez se puede implementar a través de una política de grupo. También puede utilizar caspol como se mencionó anteriormente.

La otra alternativa es usar código de seguridad de acceso. Aquí hay un shiny artículo de MSDN que lo explica.

La tercera alternativa es usar la implementación de clickonce, sin embargo, esto todavía crea una instancia local del ensamblaje cuando se ejecuta.

Puede usar la implementación de Click Once para implementar su aplicación desde un recurso compartido de archivos.