Cuando trabajas en aplicaciones ASP.NET Core, es común que tu navegador marque tu sitio local como inseguro. Esto sucede porque, aunque tu proyecto use HTTPS, tu máquina no confía automáticamente en el certificado de desarrollo que .NET genera. Por suerte, .NET proporciona herramientas para manejar estos certificados de forma sencilla mediante la CLI (dotnet dev-certs).
¿Qué es un certificado HTTPS de desarrollo en .NET Core?
Un certificado de desarrollo es un certificado autofirmado que permite usar HTTPS en tu máquina local. Aunque no es válido para producción, es esencial para:
- Evitar advertencias de seguridad en el navegador.
- Probar funcionalidades que requieren HTTPS, como cookies seguras y OAuth.
- Desarrollar con un flujo más cercano a producción.
Comandos esenciales de dotnet dev-certs
1. Limpiar certificados antiguos con --clean
dotnet dev-certs https --clean
Función: elimina todos los certificados HTTPS de desarrollo existentes.
Cuándo usarlo: si tus certificados están corruptos o tienes errores de HTTPS en tu aplicación.
2. Crear y confiar en un certificado con --trust
dotnet dev-certs https --trust
Función:
- Genera un nuevo certificado de desarrollo si no existe.
- Lo marca como confiable en tu sistema, evitando advertencias de seguridad.
Importante: requiere permisos de administrador en Windows o macOS.
3. Verificar certificados existentes con --check
dotnet dev-certs https --check
Función: revisa si existe un certificado válido y confiable en tu máquina.
Problemas comunes y cómo solucionarlos
| Problema | Solución |
|---|---|
| Advertencias de HTTPS en el navegador | Ejecuta dotnet dev-certs https --trust con permisos de administrador. |
| Certificado corrupto | Primero --clean, luego --trust. |
| Múltiples certificados instalados | Limpia los antiguos con --clean y genera uno nuevo confiable. |
Buenas prácticas al usar certificados de desarrollo
- Solo en desarrollo: nunca uses estos certificados en producción.
- Mantén el certificado actualizado: si cambias de máquina o reinstalas .NET, limpia y crea uno nuevo.
- Comprueba regularmente: usa
--checkpara asegurarte de que tu certificado sigue confiable.
Conclusión
Gestionar certificados HTTPS en .NET Core es sencillo con dotnet dev-certs. Estos comandos te permiten:
- Limpiar certificados antiguos (
--clean) - Crear y confiar en certificados (
--trust) - Verificar certificados existentes (
--check)
Con esto, evitarás errores de seguridad en tu navegador y mejorarás la experiencia de desarrollo en tus proyectos ASP.NET Core.
💡 Tip extra: Para producción, siempre utiliza certificados emitidos por una autoridad certificadora confiable. Los certificados de desarrollo son solo para tu máquina local.