Compartir a través de


Escenario de nombre seguro

El siguiente escenario describe el proceso de firma de un ensamblado con un nombre seguro y de hacer, posteriormente, referencia a él con ese nombre.

  1. El ensamblado A se crea con un nombre seguro mediante uno de los métodos siguientes:

Utilizando un entorno de desarrollo que permita la creación de nombres seguros, como Visual Studio 2005

  1. El entorno de programación o la herramienta firman el código hash del archivo que contiene el manifiesto del ensamblado con la clave privada del programador. Esta firma digital se guarda en el archivo ejecutable portable (PE) que contiene el manifiesto del ensamblado A.

  2. El ensamblado B es un consumidor del ensamblado A. La sección de referencia del manifiesto del ensamblado B contiene un símbolo (token) que representa la clave pública del ensamblado A. Un símbolo es una parte de la clave pública y se usa en lugar de la propia clave para ahorrar espacio.

  3. Common Language Runtime comprueba la firma del nombre seguro cuando se ubica el ensamblado en la caché de ensamblados global. Cuando se enlaza por nombre seguro en tiempo de ejecución, Common Language Runtime compara la clave almacenada en el manifiesto del ensamblado B con la clave utilizada para generar el nombre seguro del ensamblado A. Si se pasan las comprobaciones de seguridad de .NET Framework y el enlace es correcto, el ensamblado B tiene la garantía de que los bits del ensamblado A no se han manipulado y proceden sin duda de los programadores del ensamblado A.

    Nota

    Este escenario no se ocupa de los aspectos de confianza. Los ensamblados pueden llevar firmas completas de Microsoft® Authenticode® además de un nombre seguro. Las firmas de Authenticode incluyen un certificado que establece la confianza. Es importante recordar que los nombres seguros no requieren que el código se firme de esta forma. De hecho, las claves utilizadas para generar la firma del nombre seguro no tienen que ser las mismas que se utilizan para generar una firma de Authenticode.

Vea también

Referencia

Herramienta de nombre seguro (Sn.exe)
Herramienta Assembly Linker (Al.exe)

Otros recursos

Crear y utilizar ensamblados con nombre seguro