Introducción a la implementación de aplicaciones de confianza

En este tema se proporciona información general sobre cómo implementar aplicaciones ClickOnce que disponen de permisos elevados usando la tecnología de implementación de aplicaciones de confianza.

La implementación de aplicaciones de confianza, que forma parte de la tecnología de implementación ClickOnce, facilita a empresas de cualquier tamaño la concesión de permisos adicionales a una aplicación administrada, de forma más segura y sin intervención del usuario. Con la implementación de aplicaciones de confianza, una empresa puede simplemente configurar un equipo cliente para que disponga de una lista de editores de confianza identificados mediante certificados Authenticode. A partir de ese momento, toda aplicación ClickOnce firmada por uno de estos editores de confianza recibirá un mayor nivel de confianza.

Nota:

La implementación de aplicaciones de confianza requiere una configuración inicial del equipo de usuario. En entornos de escritorio administrados, esta configuración puede llevarse a cabo usando una directiva global. Si no es lo que desea para la aplicación, use en su lugar la elevación de permisos. Para más información, consulte Proteger las aplicaciones ClickOnce.

Aspectos básicos de la implementación de aplicaciones de confianza

En la tabla siguiente se muestran los objetos y los roles involucrados en la implementación de aplicaciones de confianza.

Objeto o rol Descripción
administrator Entidad de la empresa responsable de la actualización y mantenimiento de los equipos cliente.
administrador de confianza Subsistema dentro de Common Language Runtime (CLR) responsable de hacer cumplir la seguridad de la aplicación cliente.
publisher Entidad que escribe y mantiene la aplicación.
implementador Entidad que empaqueta y distribuye la aplicación a los usuarios.
certificado Firma criptográfica compuesta por una clave pública y una clave privada; generalmente la emite una entidad de certificación (CA) que puede atestiguar su autenticidad.
certificado Authenticode Certificado con metadatos insertados que describen, entre otras cosas, la finalidad de dicho certificado.
entidad de certificación Organización que comprueba la identidad de los editores y les emite certificados insertados con los metadatos del editor.
entidad raíz Entidad de certificación que autoriza a otras entidades a emitir certificados.
contenedor de claves Espacio de almacenamiento lógico en Microsoft Windows para almacenar los certificados.
editor de confianza Editor cuyo certificado de Authenticode se ha agregado a una lista de certificados de confianza (CTL) en un equipo cliente.

En organizaciones de mayor tamaño, el editor y el implementador suelen ser entidades independientes:

  • El editor es el grupo que se encarga de crear la aplicación ClickOnce.

  • El implementador es el grupo —normalmente el departamento de la tecnología de la información (TI)— que se encarga de distribuir la aplicación ClickOnce a los equipos de escritorio de empresas corporativas.

Siga estos pasos para aprovechar las ventajas de la implementación de aplicaciones de confianza:

  1. Obtenga un certificado para el editor.

  2. Agregue el editor al almacén de editores de confianza en todos los clientes.

  3. Cree la aplicación ClickOnce.

  4. Firme el manifiesto de implementación con el certificado del editor.

  5. Publique la implementación de la aplicación en los equipos cliente.

Obtención de un certificado para el editor

Los certificados digitales son un componente básico de la autenticación Microsoft Authenticode y del sistema de seguridad. Authenticode es un elemento estándar del sistema operativo Windows. Todas las aplicaciones ClickOnce deben firmarse con un certificado digital, independientemente de que participen en la implementación de aplicaciones de confianza. Para obtener una explicación completa del funcionamiento de Authenticode con ClickOnce, consulte ClickOnce y Authenticode.

Adición del editor al almacén de editores de confianza

Para que la aplicación ClickOnce reciba un mayor nivel de confianza, deberá agregar el certificado como editor de confianza a cada uno de los equipos cliente donde vaya a ejecutarse la aplicación. La realización de esta tarea se compone de una única configuración. Una vez realizada, podrá implementar todas las aplicaciones ClickOnce firmadas que desee con el certificado del editor, y todas ellas se ejecutarán con un alto nivel de confianza.

Si está implementando la aplicación en un entorno de escritorio administrado —por ejemplo, una intranet empresarial donde se ejecute el sistema operativo Windows—, podrá agregar editores de confianza al almacén de un cliente creando una nueva lista de certificados de confianza (CTL) con la directiva de grupo. Para obtener más información, consulte Create a certificate trust list for a Group Policy object(Crear una lista de certificados de confianza para un objeto de directiva de grupo).

Si no está implementando la aplicación en un entorno de escritorio administrado, dispone de las siguientes opciones para agregar un certificado al almacén de editores de confianza:

Crear una aplicación ClickOnce

Una aplicación ClickOnce es una aplicación cliente de .NET Framework combinada con archivos de manifiesto que describen la aplicación y proporcionan parámetros de instalación. Puede convertir el programa en una aplicación ClickOnce con el comando Publish de Visual Studio. Otra opción es generar todos los archivos necesarios para la implementación de ClickOnce mediante las herramientas incluidas en el kit de desarrollo de software (SDK) de Windows. Para obtener pasos detallados sobre la implementación de ClickOnce, consulte Tutorial: Implementación manual de una aplicación ClickOnce.

La implementación de aplicaciones de confianza es específica de ClickOnce y solo puede usarse con aplicaciones ClickOnce.

Firma de la implementación

Una vez obtenido el certificado, debe usarlo para firmar la implementación. Si está implementando la aplicación mediante el asistente para publicación de Visual Studio, el asistente generará automáticamente un certificado de prueba en caso de que no haya especificado ningún certificado. También puede usar la ventana Diseñador de proyectos de Visual Studio para suministrar un certificado proporcionado por una entidad de certificación. Vea también Publicación de la aplicación ClickOnce mediante el Asistente para publicación.

Precaución

No le recomendamos implementar la aplicación con un certificado de prueba.

También puede firmar la aplicación mediante las herramientas del SDK Mage.exe o MageUI.exe. Para más información, consulte Tutorial: Implementación manual de una aplicación ClickOnce. Para obtener una lista completa de las opciones de línea de comandos relacionadas con la firma de una implementación, consulte Mage.exe (Herramienta de generación y edición de manifiestos).

Publicación de la aplicación

En cuanto haya firmado los manifiestos de ClickOnce, la aplicación estará lista para publicarse en la ubicación de instalación. La ubicación de instalación puede ser un servidor web, un recurso compartido de archivos o el disco local. Cuando un cliente tiene acceso al manifiesto de implementación por primera vez, el administrador de confianza debe elegir si un editor de confianza instalado ha concedido a la aplicación ClickOnce autoridad para ejecutarse en un nivel de confianza superior. El administrador de confianza realiza esta elección comparando el certificado usado para firmar la implementación con los certificados almacenados en el almacén de editores de confianza del cliente. Si el administrador de confianza encuentra alguna coincidencia, la aplicación se ejecuta con un alto nivel de confianza.

Implementación de aplicaciones de confianza y elevación de permisos

Si el editor actual no es un editor de confianza, el administrador de confianza usará la elevación de permisos para preguntar al usuario si desea conceder permisos elevados a la aplicación. No obstante, si el administrador deshabilita la elevación de permisos, la aplicación no podrá obtener permiso para ejecutarse. La aplicación no se ejecutará y no se mostrará ninguna notificación al usuario. Para obtener más información sobre la elevación de permisos, consulte Protección de aplicaciones ClickOnce.

Limitaciones de la implementación de aplicaciones de confianza

Puede usar la implementación de aplicaciones de confianza para conceder una confianza elevada a las aplicaciones ClickOnce implementadas en la Web o en un recurso compartido de archivos de la empresa. No es necesario que use la implementación de aplicaciones de confianza para las aplicaciones ClickOnce que se distribuyen en un CD porque, de forma predeterminada, estas aplicaciones gozan de plena confianza.