Administrar los certificados que Visual Studio usa para firmar la aplicación
Visual Studio firma tu aplicación cuando creas el paquete de la aplicación.Puedes administrar el certificado que Visual Studio usa para firmar tu aplicación de las maneras siguientes.
Generar un certificado de prueba
Elegir un certificado alternativo
Renovar un certificado
Eliminar o exportar un certificado
Decidir qué comprobaciones de validación deseas que realice Visual Studio
Modificar aplicaciones instaladas
Nota
Si aparece un error similar a "El certificado seleccionado no es válido para firmar porque expiró o tiene algún otro problema" durante el proceso de firma, usa el diseñador de manifiestos para crear un certificado de prueba que reemplace el antiguo.
Generar un certificado de prueba
De forma predeterminada, todos los paquetes de aplicación que Visual Studio genera se firman con un certificado de prueba.Cuando creas un paquete, Visual Studio genera una carpeta que incluye el propio paquete firmado.El archivo de certificado (.cer) que se incluye en esa carpeta contiene la clave pública que se usa para firmar el paquete.
Cambios que realiza Visual Studio en el archivo de proyecto cuando generas un certificado de prueba
El proceso de creación de certificados también agrega una propiedad al archivo de proyecto:
<PackageCertificateKeyFile>
RisingStar_TemporaryKey.pfx
</PackageCertificateKeyFile>
El valor de PackageCertificateKeyFile es la ruta de acceso relativa o la ruta de acceso completa del propio certificado de origen.
Valores de propiedad y extensión del certificado de prueba
En el certificado de prueba que genera Visual Studio, el campo Asunto se establece en el atributo Publisher del elemento Identity del archivo de manifiesto de origen (.appxmanifest).
Si creas un paquete local, el valor predeterminado del atributo Publisher es tu nombre de usuario.
Si creas un paquete o le asocias tu aplicación, el atributo Publisher se establece en el Publisher ID que se obtiene de la cuenta de desarrollador cuando inicias sesión durante la creación del paquete.
El valor de la extensión Restricciones básicas se establece en Tipo de asunto=Entidad final.
Nota
La extensión Restricciones básicas identifica si el asunto del certificado es una entidad de certificación (CA).Esta extensión también define la profundidad máxima de las rutas de acceso de las certificaciones que incluyen este certificado.La propiedad Restricciones básicas especifica si la clave pública certificada puede comprobar firmas de certificados.
El valor de la extensión Uso mejorado de clave (EKU) se establece en Firma de código.
Elegir un certificado alternativo
Visual Studio crea automáticamente un certificado cuando se crea el proyecto, pero también puede crear su propio certificado o usar un certificado existente para firmar un paquete.
Para crear o usar un certificado alternativo
En el Explorador de soluciones, abre el menú contextual para el archivo .appxmanifest, elige Abrir con y, a continuación, Diseñador de manifiestos de aplicaciones.
En Diseñador de manifiestos de aplicaciones, elige la pestaña Empaquetado y el botón Elegir certificado.
En el cuadro de diálogo Elegir certificado, expande la lista Configurar certificado y después elige una de las opciones siguientes:
Elegir en almacén de certificados
Elige uno de los certificados Personal en el almacén de certificados del sistema operativo.Seleccionar del archivo
Elige un archivo de certificado existente del sistema de archivos.Crear certificado de prueba
Crea un certificado con un Publisher ID a tu elección. También puedes crear una contraseña.
Con cualquier opción que elijas, se agregará un archivo de certificado al proyecto y a las propiedades del proyecto PackageCertificateThumbprint y PackageCertificateKeyFile se actualizan como corresponde.
Renovar un certificado
El certificado predeterminado generado por Visual Studio expira un año después de la fecha en que se creó el certificado.Antes de que expire el certificado, debes usar el diseñador de manifiestos de aplicaciones para volver a generar el certificado o, según se describe en el procedimiento anterior, suministrar un certificado diferente válido.
Para renovar el certificado
En el Explorador de soluciones, abre el menú contextual para el archivo .appxmanifest, elige Abrir con y, a continuación, Diseñador de manifiestos de aplicaciones.
En Diseñador de manifiestos de aplicaciones, elige la pestaña Empaquetado y el botón Elegir certificado.
En el cuadro de diálogo Elegir certificado, expande la lista de Configurar certificado y, a continuación, elige Crear certificado de prueba.
En el cuadro de diálogo de Crear certificado de prueba, haz clic en el botón Aceptar.
Visual Studio vuelve a generar el certificado con una nueva fecha de expiración.
Eliminar o exportar un certificado
Quizás desees eliminar o exportar un certificado expirado o que esté en peligro, dañado o se haya reemplazado por otro certificado.Para obtener información sobre cómo eliminar o exportar un certificado, consulta el tema sobre cómo usar la consola Certificados.
Decidir qué comprobaciones de validación deseas que realice Visual Studio
Durante el empaquetado, Visual Studio valida el certificado mediante varias comprobaciones de validación.
En determinados escenarios, es posible que necesites controlar de forma más estrecha qué certificado se usa y, por tanto, qué comprobaciones de validación deseas que Visual Studio ejecute para el certificado.Con este fin, puedes establecer la propiedad de MSBuild EnableSigningChecks en False.
Si estableces la propiedad en False, Visual Studio realiza solo las siguientes comprobaciones de validación:
Comprueba si existe una clave privada.
Comprueba si el valor de la propiedad Uso mejorado de clave contiene Firma de código.
Comprueba si el certificado está activo, no ha expirado y no se ha revocado.
Si estableces la propiedad en True (valor predeterminado), Visual Studio ejecuta las comprobaciones adicionales siguientes.
Comprueba la presencia de la extensión Restricciones básicas y su valor, que debe ser Tipo de asunto=Entidad final o sin especificar.
Comprueba si el valor de la propiedad KeyUsage (KU), que debe ser Unset o DigitalSignature.
Modificar aplicaciones instaladas
Si se modifica algún archivo de un paquete instalado, la comprobación de la firma puede impedir que la aplicación se inicie.Para modificar un paquete, realiza los cambios en los archivos de código fuente originales y después vuelve a implementar el paquete modificado.
Vea también
Empaquetar aplicaciones universales de Windows para Windows 10