Intento generar un certificado de desarrollo en mi macOS Catalina (10.15.4 Beta (19E242d)) usando la herramienta dev-certs
pero no funciona.
salida:
iRuiMSFT-MBP:~ rmarinho$ dotnet dev-certs https
A valid HTTPS certificate with a key accessible across security partitions was not found. The following command will run to fix it:
'sudo security set-key-partition-list -D localhost -S unsigned:,teamid:UBF8T346G9'
This command will make the certificate key accessible across security partitions and might prompt you for your password. For more information see: https://aka.ms/aspnetcore/2.1/troubleshootcertissues
A valid HTTPS certificate with a key accessible across security partitions was not found. The following command will run to fix it:
'sudo security set-key-partition-list -D localhost -S unsigned:,teamid:UBF8T346G9'
This command will make the certificate key accessible across security partitions and might prompt you for your password. For more information see: https://aka.ms/aspnetcore/3.1/troubleshootcertissues
password to unlock /Users/rmarinho/Library/Keychains/login.keychain-db:
keychain: "/Users/rmarinho/Library/Keychains/login.keychain-db"
version: 512
class: 0x00000011
attributes:
0x00000000 <uint32>=<NULL>
0x00000001 <blob>="com.apple.AppleMediaServices.mediaToken.macappstore"
0x00000002 <blob>=<NULL>
0x00000003 <uint32>=<NULL>
0x00000004 <uint32>=<NULL>
0x00000005 <uint32>=<NULL>
0x00000006 <blob>=<NULL>
0x00000007 <blob>=<NULL>
0x00000008 <blob>=<NULL>
0x00000009 <uint32>=0x00000000
0x0000000A <uint32>=0x00000000
0x0000000B <uint32>=0x00000000
0x0000000C <blob>=<NULL>
0x0000000D <blob>=<NULL>
0x0000000E <uint32>=<NULL>
0x0000000F <uint32>=<NULL>
0x00000010 <uint32>=<NULL>
0x00000011 <uint32>=<NULL>
0x00000012 <uint32>=<NULL>
0x00000013 <uint32>=<NULL>
0x00000014 <uint32>=<NULL>
0x00000015 <uint32>=<NULL>
0x00000016 <uint32>=<NULL>
0x00000017 <uint32>=<NULL>
0x00000018 <uint32>=<NULL>
0x00000019 <uint32>=<NULL>
0x0000001A <uint32>=<NULL>
security: SecKeychainItemCopyAccess: A missing value was detected.
Something went wrong. The HTTPS developer certificate could not be created.
Corriendo
dotnet dev-certs https
dotnet --info
iRuiMSFT-MBP:~ rmarinho$ dotnet --info
.NET Core SDK (reflecting any global.json):
Version: 3.1.102
Commit: 573d158fea
Runtime Environment:
OS Name: Mac OS X
OS Version: 10.15
OS Platform: Darwin
RID: osx.10.15-x64
Base Path: /usr/local/share/dotnet/sdk/3.1.102/
Host (useful for support):
Version: 3.1.2
Commit: 916b5cba26
.NET Core SDKs installed:
2.1.4 [/usr/local/share/dotnet/sdk]
2.1.200 [/usr/local/share/dotnet/sdk]
2.1.300 [/usr/local/share/dotnet/sdk]
2.1.301 [/usr/local/share/dotnet/sdk]
2.1.302 [/usr/local/share/dotnet/sdk]
2.1.403 [/usr/local/share/dotnet/sdk]
2.1.500 [/usr/local/share/dotnet/sdk]
2.1.505 [/usr/local/share/dotnet/sdk]
2.1.700 [/usr/local/share/dotnet/sdk]
2.1.701 [/usr/local/share/dotnet/sdk]
2.2.101 [/usr/local/share/dotnet/sdk]
2.2.107 [/usr/local/share/dotnet/sdk]
2.2.203 [/usr/local/share/dotnet/sdk]
2.2.300 [/usr/local/share/dotnet/sdk]
3.0.100-rc1-014190 [/usr/local/share/dotnet/sdk]
3.0.100 [/usr/local/share/dotnet/sdk]
3.1.100-preview1-014459 [/usr/local/share/dotnet/sdk]
3.1.100-preview2-014569 [/usr/local/share/dotnet/sdk]
3.1.100-preview3-014645 [/usr/local/share/dotnet/sdk]
3.1.100 [/usr/local/share/dotnet/sdk]
3.1.101 [/usr/local/share/dotnet/sdk]
3.1.102 [/usr/local/share/dotnet/sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.6 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.9 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.12 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.4 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.6 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.9 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.12 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.4 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.0-preview5-19227-01 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.0-preview9.19424.4 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.0-rc1.19457.4 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.0-preview1.19508.20 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.0-preview2.19528.8 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.0-preview3.19555.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.0.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.0.7 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.6 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.9 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.11 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.12 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.13 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.15 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.4 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.7 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.0-rc1-19456-20 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.0-preview1.19506.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.0-preview2.19525.6 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.0-preview3.19553.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Hola @rmarinho , estoy pasando por el mismo error exacto, con exactamente la misma pila de desarrollo.
Revisé todas las páginas que sugieren eliminar el certificado de la clave del sistema, ejecutar los comandos --clean y --trust, pero nada funciona.
¿Alguien tiene más ideas sobre qué probar a continuación? Se lo agradecería mucho. Gracias.
@rmarinho gracias por contactarnos.
¿Podrías comprobar algunas cosas?
¿Tiene algún certificado "localhost" en su llavero? (Si es así, asumiendo que es un núcleo generado por asp.net)
¿Puedes eliminarlo manualmente?
También verifique los certificados del sistema para el mismo certificado y elimínelo de allí también.
¿Puede ejecutar dotnet dev-certs https --check
e informar el código de salida?
Hola, eliminé el que tenía, el mismo error, pero crea uno nuevo en el llavero.
No tenía ninguno en los certificados del sistema solo en el llavero de inicio de sesión.
iRuiMSFT-MBP:~ rmarinho$ dotnet dev-certs https --check
A valid HTTPS certificate was found but it may not be accessible across security partitions. Run dotnet dev-certs https to ensure it will be accessible during development.
¿Puedes intentar ejecutar security set-key-partition-list -D localhost -S unsigned:,teamid:UBF8T346G9 <<login-keychain>>
desde la línea de comandos y ver si funciona? (reemplazando <<logi-keychain>>
con su ruta de llavero real)
Me las arreglé para resolver esto.
Luché con ese error relacionado con las particiones de seguridad. Es tan raro. Todavía no estoy al tanto de cuál es la causa raíz.
- Ejecutar en la línea de comandos instalación de la herramienta dotnet --global dotnet-dev-certs
No debería hacer esto, o no estoy seguro de que tenga algún efecto, ya que la herramienta dotnet-dev-certs está incluida con el SDK y creo que tendrán preferencia.
Lo más probable es que este problema tenga que ver con la notarización en Mac OS. ¿Descargó el instalador para Mac OS o utilizó la distribución binaria? Creo que ambos deberían estar notarizados, pero esa puede ser la raíz del problema.
Descargué el instalador para Mac OS. Quizás la versión 3.1 no incluye los dev-certs. ¿Sería ese el caso? - La opción de verificación me mostró eso (no se incluyen certificados).
Los certificados no están incluidos, los certificados se generan en la máquina. ¿Estás usando macOS Catalina (10.15.4 Beta (19E242d))
?
@javiercn Creo que mi último dotnet sdk fue instalado por Visual Studio para el sistema de actualización de Mac.
Estoy en la última versión beta (10.15.4 Beta (19E250c)
Haciendo cola en ✋
El mismo problema. Lo que funcionó como hace 3 semanas, de repente se detuvo. Limpié a través de dotnet dev-certs https --clean
, pero dotnet dev-certs https --trust
luego me pide que proporcione la contraseña para mi login.keychain-db y la rechaza. Incluso lo restablecí a través de security set-keychain-password
, sin éxito.
=== Visual Studio Community 2019 for Mac ===
Version 8.4.8 (build 2)
Installation UUID: ddc1ff0c-8d88-428e-8706-9c5852e78933
GTK+ 2.24.23 (Raleigh theme)
Xamarin.Mac 5.16.1.25 (issue-7441-d16-3-vsmac / 881172e73)
Package version: 606000166
=== Mono Framework MDK ===
Runtime:
Mono 6.6.0.166 (2019-08/d9001b5ae70) (64-bit)
Package version: 606000166
=== Roslyn (Language Service) ===
3.4.0-beta4-19562-05+ff930dec4565e2bc424ad3bf3e22ecb20542c87d
=== .NET Core SDK ===
SDK: /usr/local/share/dotnet/sdk/3.1.102/Sdks
SDK Versions:
3.1.102
3.1.101
3.1.100
3.0.101
3.0.100
2.2.402
2.1.802
MSBuild SDKs: /Library/Frameworks/Mono.framework/Versions/6.6.0/lib/mono/msbuild/Current/bin/Sdks
=== .NET Core Runtime ===
Runtime: /usr/local/share/dotnet/dotnet
Runtime Versions:
3.1.2
3.1.1
3.1.0
3.0.1
3.0.0
2.2.7
2.1.15
2.1.14
2.1.13
=== Build Information ===
Release ID: 804080002
Git revision: 4f35aa7e44fb398379e512d0bfd6f8df8d34b5ac
Build date: 2020-02-27 16:16:52+00
Build branch: release-8.4
Xamarin extensions: 4f35aa7e44fb398379e512d0bfd6f8df8d34b5ac
=== Operating System ===
Mac OS X 10.15.3
Darwin 19.3.0 Darwin Kernel Version 19.3.0
Thu Jan 9 20:58:23 PST 2020
root:xnu-6153.81.5~1/RELEASE_X86_64 x86_64
@aspnetde ¿También estás en la versión beta de Mac OS Catalina?
¿También estás en la versión beta de Mac OS Catalina?
@javiercn Nope. Versión regular.
@aspnetde ¿ puede proporcionar los detalles sobre el error? (salida de consola, etc.)
Puede intentar ejecutar el comando manualmente y ver si eso soluciona el problema.
Puede intentar ejecutar el comando manualmente y ver si eso soluciona el problema.
Como dije en mi primer comentario, ya lo hice (siguiendo los documentos ).
Aquí hay otra ronda fallida:
thomas@TB-MBP-2017 ~ % dotnet dev-certs https --check
A valid HTTPS certificate was found but it may not be accessible across security partitions. Run dotnet dev-certs https to ensure it will be accessible during development.
thomas@TB-MBP-2017 ~ % dotnet dev-certs https --clean
Cleaning HTTPS development certificates from the machine. This operation might require elevated privileges. If that is the case, a prompt for credentials will be displayed.
HTTPS development certificates successfully removed from the machine.
thomas@TB-MBP-2017 ~ % dotnet dev-certs https --check
No valid certificate found.
thomas@TB-MBP-2017 ~ % dotnet dev-certs https --trust
A valid HTTPS certificate with a key accessible across security partitions was not found. The following command will run to fix it:
'sudo security set-key-partition-list -D localhost -S unsigned:,teamid:UBF8T346G9'
This command will make the certificate key accessible across security partitions and might prompt you for your password. For more information see: https://aka.ms/aspnetcore/2.1/troubleshootcertissues
A valid HTTPS certificate with a key accessible across security partitions was not found. The following command will run to fix it:
'sudo security set-key-partition-list -D localhost -S unsigned:,teamid:UBF8T346G9'
This command will make the certificate key accessible across security partitions and might prompt you for your password. For more information see: https://aka.ms/aspnetcore/3.1/troubleshootcertissues
Trusting the HTTPS development certificate was requested. If the certificate is not already trusted we will run the following command:
'sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain <<certificate>>'
This command might prompt you for your password to install the certificate on the system keychain.
Password:
password to unlock /Users/thomas/Library/Keychains/login.keychain-db:
keychain: "/Users/thomas/Library/Keychains/login.keychain-db"
version: 512
class: 0x0000000F
attributes:
0x00000000 <uint32>=0x0000000F
0x00000001 <blob>="<key>"
0x00000002 <blob>=<NULL>
0x00000003 <uint32>=0x00000001
0x00000004 <uint32>=0x00000000
0x00000005 <uint32>=0x00000000
0x00000006 <blob>=0xFB53860E4AA8B4728D5B0FEF29B3090935FBD083 "\373S\206\016J\250\264r\215[\017\357)\263\011\0115\373\320\203"
0x00000007 <blob>=<NULL>
0x00000008 <blob>=0x7B38373139316361322D306663392D313164342D383439612D3030303530326235323132327D00 "{87191ca2-0fc9-11d4-849a-000502b52122}\000"
0x00000009 <uint32>=0x0000002A "\000\000\000*"
0x0000000A <uint32>=0x00000800
0x0000000B <uint32>=0x00000800
0x0000000C <blob>=0x0000000000000000
0x0000000D <blob>=0x0000000000000000
0x0000000E <uint32>=0x00000000
0x0000000F <uint32>=0x00000000
0x00000010 <uint32>=0x00000001
0x00000011 <uint32>=0x00000000
0x00000012 <uint32>=0x00000001
0x00000013 <uint32>=0x00000000
0x00000014 <uint32>=0x00000001
0x00000015 <uint32>=0x00000000
0x00000016 <uint32>=0x00000001
0x00000017 <uint32>=0x00000000
0x00000018 <uint32>=0x00000000
0x00000019 <uint32>=0x00000000
0x0000001A <uint32>=0x00000000
security: SecKeychainItemSetAccessWithPassword: The user name or passphrase you entered is not correct.
thomas@TB-MBP-2017 ~ % dotnet dev-certs https --check
A valid HTTPS certificate was found but it may not be accessible across security partitions. Run dotnet dev-certs https to ensure it will be accessible during development.
thomas@TB-MBP-2017 ~ %
Tengo el mismo problema.
al correr
Mando:
dotnet dev-certs https -c
Resultados:
A valid HTTPS certificate was found but it may not be accessible across security partitions. Run dotnet dev-certs https to ensure it will be accessible during development.
Mando:
dotnet dev-certs https -t -v
Resultados:
security: SecKeychainItemCopyAccess: The specified item is no longer valid. It may have been deleted from the keychain.
Listing 'HTTPS' certificates on 'CurrentUser\My'.
'1' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 4AED6BC2B253402E22B060BC1FB646EBEDA33D37 - 3/5/2020 9:48:35 PM - 3/5/2021 9:48:35 PM - True
Checking certificates for validity.
Listing valid certificates
'1' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 4AED6BC2B253402E22B060BC1FB646EBEDA33D37 - 3/5/2020 9:48:35 PM - 3/5/2021 9:48:35 PM - True
Listing invalid certificates
'0' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
Listing 'HTTPS' certificates on 'LocalMachine\My'.
'0' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
Checking certificates for validity.
Listing valid certificates
'0' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
Listing invalid certificates
'0' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
Filtering found certificates to those with a subject equal to 'CN=localhost'
'1' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 4AED6BC2B253402E22B060BC1FB646EBEDA33D37 - 3/5/2020 9:48:35 PM - 3/5/2021 9:48:35 PM - True
Listing certificates excluded from consideration.
'0' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
Failed to make certificate key accessible
Exception message: Error making the key accessible across partitions.
Something went wrong. The HTTPS developer certificate could not be created.
Versión Mac Os:
¡También estamos teniendo este problema!
Yo también estaba enfrentando el problema. Descubrí que el problema comenzó con la instalación de ASP Net Core SDK 3.1.102. Estoy usando Mac OS 10.15.3 Beta.
Después de eliminar el SDK 3.1.102, el problema desapareció.
Use esto para eliminar SDK 3.1.102
sudo rm -rf /usr/local/share/dotnet/sdk/3.1.102
sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.NETCore.App/3.1.2
sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.AspNetCore.App/3.1.2
sudo rm -rf /usr/local/share/dotnet/host/fxr/3.1.2
Lo que noto al investigar entre SDK 3.1.101 y SDK 3.1.102 para el certificado de localhost es que a 3.1.102 le falta el localhost autofirmado en el sistema y el certificado de inicio de sesión localhost autofirmado no está marcado como siempre confiable, mientras que SDK 3.1 .101 tenía tanto el inicio de sesión como el certificado autofirmado del sistema localhost y ambos están configurados en siempre confianza para todo el nivel de confianza.
Para mí, no pude encontrar /usr/local/share/dotnet/host/fxr/3.1.102
.
En su lugar, eliminé /usr/local/share/dotnet/host/fxr/3.1.2
y trabajé.
Para mí, no pude encontrar
/usr/local/share/dotnet/host/fxr/3.1.102
.
En su lugar, eliminé/usr/local/share/dotnet/host/fxr/3.1.2
y trabajé.
Mi mal, es 3.1.2 para el archivo en fxr. Estoy escribiendo en base a mi memoria, ya que ya había eliminado esos archivos. Actualicé mis pasos
Hay muchos informes sobre este hilo, por lo que intentaré dar algunos pasos manuales sobre cómo abordar / mitigar este problema mientras investigamos:
Consulte aquí las instrucciones sobre cómo eliminar, hacer accesible a través de particiones y confiar certificados manualmente.
Para los afectados, les sugiero que hagan lo siguiente:
dotnet dev-certs https
certificate.<<sha256>>.sentinel
dentro de ~ / .dotnet /security add-trusted-cert
como se describe en el documento.Para que podamos ayudar a investigar este problema, la siguiente información nos ayudará:
Yo también estaba enfrentando el problema. Descubrí que el problema comenzó con la instalación de ASP Net Core SDK 3.1.102. Estoy usando Mac OS 10.15.3 Beta.
Después de eliminar el SDK 3.1.102, el problema desapareció.
Para mí, todo estaba bien hasta que actualicé el SDK, pero esto resolvió el problema.
Acabo de eliminar esa versión del SDK y volví a generar mis certificados:
sudo rm -rf /usr/local/share/dotnet/sdk/3.1.102
sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.NETCore.App/3.1.2
sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.AspNetCore.App/3.1.2
sudo rm -rf /usr/local/share/dotnet/host/fxr/3.1.2
dotnet dev-certs https --clean
dotnet dev-certs https -t
¡¡Gracias @frozenfroze !!
Este es un problema continuo en la última versión del SDK (3.1.102) que todavía estamos investigando.
Para solucionar este problema, siga estos pasos :
Puede encontrar el PID del proceso securityd
y ejecutar log stream --process <PID>
. Eso debería proporcionar información adicional sobre lo que está sucediendo a nivel del sistema operativo. (systemd es el acceso de gestión procesado a los elementos de KeyChain)
Además, esto puede ser contrario a la intuición, pero importa si 'dotnet' es self proviene de 3.1 o no. (ya que todas las versiones anulan el mismo binario, por lo que la secuencia importa y la lista de sdks disponibles es solo una sugerencia))
Puede verificar con codesign -v -d --entitlements --extract-certificates /usr/local/share/dotnet/dotnet
(o qué ruta de acceso) para ver si se usa un binario firmado o no firmado.
También estoy teniendo serios problemas con esto. Tuve el problema hace 2 semanas y lo solucioné según los comentarios de @f
Ni siquiera puedo crear el certificado de desarrollo. ¿Cualquier progreso?
dotnet dev-certs https --check
No se encontró ningún certificado válido.
dotnet dev-certs https --clean
Limpieza de certificados de desarrollo HTTPS de la máquina. Esta operación puede requerir privilegios elevados. Si ese es el caso, se mostrará una solicitud de credenciales.
Los certificados de desarrollo HTTPS se eliminaron correctamente de la máquina.
dotnet dev-certs https
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/2.1/troubleshootcertissues
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/3.1/troubleshootcertissues
Algo salió mal. No se pudo crear el certificado de desarrollador HTTPS.
dotnet --info
.NET Core SDK (que refleja cualquier archivo global.json):
Versión: 3.1.201
Confirmar: b1768b4ae7
Entorno de ejecución:
Nombre del sistema operativo: Mac OS X
Versión del SO: 10.14
Plataforma del SO: Darwin
RID: osx.10.14-x64
Ruta base: /usr/local/share/dotnet/sdk/3.1.201/
Anfitrión (útil para soporte):
Versión: 3.1.3
Confirmar: 4a9f85e9f8
SDK de .NET Core instalados:
3.0.100 [/ usr / local / share / dotnet / sdk]
3.1.101 [/ usr / local / share / dotnet / sdk]
3.1.200 [/ usr / local / share / dotnet / sdk]
3.1.201 [/ usr / local / share / dotnet / sdk]
Tiempos de ejecución de .NET Core instalados:
Microsoft.AspNetCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.13 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.15 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.16 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Para instalar entornos de ejecución o SDK de .NET Core adicionales:
https://aka.ms/dotnet-download
asegúrese de que su KeyChain esté desbloqueado @fcbogle. También recomendaría usar KeyChain y buscar certificados de host local.
Hola @wfurt gracias por tus comentarios.
Hice lo que sugieres (pasé horas tratando de depurar esto). Aquí está la salida de mi máquina. Actualicé mi macos a catalina anoche. Detalles del sistema y salida de administración de claves a continuación:
dotnet --info
.NET Core SDK (que refleja cualquier archivo global.json):
Versión: 3.1.201
Confirmar: b1768b4ae7
Entorno de ejecución:
Nombre del sistema operativo: Mac OS X
Versión del SO: 10.15
Plataforma del SO: Darwin
RID: osx.10.15-x64
Ruta base: /usr/local/share/dotnet/sdk/3.1.201/
Anfitrión (útil para soporte):
Versión: 3.1.3
Confirmar: 4a9f85e9f8
SDK de .NET Core instalados:
3.1.201 [/ usr / local / share / dotnet / sdk]
Tiempos de ejecución de .NET Core instalados:
Microsoft.AspNetCore.App 3.1.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Para instalar entornos de ejecución o SDK de .NET Core adicionales:
https://aka.ms/dotnet-download
================================================ =====================
dotnet dev-certs https --check
No se encontró ningún certificado válido.
dotnet dev-certs https --trust
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/2.1/troubleshootcertissues
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/3.1/troubleshootcertissues
Se solicitó confiar en el certificado de desarrollo HTTPS. Si el certificado aún no es de confianza, ejecutaremos el siguiente comando:
'sudo seguridad agregar-confiable-cert -d -r trustRoot -k /Library/Keychains/System.keychain <
Este comando puede solicitarle su contraseña para instalar el certificado en el llavero del sistema.
Se produjo un error al guardar el certificado de desarrollador HTTPS en el almacén de certificados personales del usuario actual.
dotnet dev-certs https -t -v
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/2.1/troubleshootcertissues
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/3.1/troubleshootcertissues
Se solicitó confiar en el certificado de desarrollo HTTPS. Si el certificado aún no es de confianza, ejecutaremos el siguiente comando:
'sudo seguridad agregar-confiable-cert -d -r trustRoot -k /Library/Keychains/System.keychain <
Este comando puede solicitarle su contraseña para instalar el certificado en el llavero del sistema.
Listado de certificados 'HTTPS' en 'CurrentUser \ My'.
Listado de certificados 'HTTPS' en 'LocalMachine \ My'.
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Comprobación de la validez de los certificados.
Listado de certificados válidos
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Listado de certificados no válidos
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Filtrar certificados encontrados a aquellos con un asunto igual a 'CN = localhost'
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Listado de certificados excluidos de consideración.
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
No hay certificados válidos presentes en esta máquina. Intentando crear uno.
Guardar el certificado en el almacén de certificados.
Error al guardar el certificado en el almacén de certificados 'CurrentUser \ My'.
Mensaje de excepción: no se pudo encontrar un llavero predeterminado.
Se produjo un error al guardar el certificado de desarrollador HTTPS en el almacén de certificados personales del usuario actual.
¿Alguna posibilidad de que haga esto a través de SSH o en un sistema donde no ha iniciado sesión en la GUI?
Pude reproducir una falla similar cuando ssh 127.0.0.1
primero y luego ejecuté el mismo comando que el mismo usuario. Ahora, cuando Keychain está bloqueado y la aplicación necesita acceso, el sistema operativo solicitará un cuadro de diálogo de contraseña para desbloquearlo. Eso no es posible a través de SSH (o sin una sesión de GUI) y la operación de cifrado fallará.
Si este es el caso, debe ejecutar security unlock-keychain
y eso le pedirá la contraseña de inicio de sesión y desbloqueará KeyChain para esa sesión. Esta parte no es específica de Catalina.
También intenté generar un certificado cuando se ejecuta como usuario "estándar" y siempre falla con la queja de que el usuario no está en la lista repentina. Puede que no quede claro lo que está pasando y me pregunto si podemos verificar esto por adelantado o si podemos obtener una mejor orientación @javiercn.
Me perdí keychain could not be found.
de su publicación @fcbogle cuando escribí mi respuesta anterior. ¿Puedes ejecutar security list-keychains
y security default-keychain
?
¿Ejecutó la aplicación KeyChain Access
? Debería ver al menos System
y Login
llaveros allí.
Hola @wfurt, aquí está el resultado de esos comandos. ¡Gracias por mirarlo!
lista de seguridad-llaveros
"/Library/Keychains/System.keychain"
seguridad por defecto-llavero
security: SecKeychainCopyDefault: No se pudo encontrar un llavero predeterminado.
Aquí está mi llavero:
Creo que estamos en el camino correcto. El comando list no muestra su llavero de inicio de sesión y el valor predeterminado no está configurado. Cuando ejecuto esto en mi sistema, obtengo:
$ security list-keychain
"/Users/furt/Library/Keychains/login.keychain-db"
"/Library/Keychains/System.keychain"
$ security default-keychain
"/Users/furt/Library/Keychains/login.keychain-db"
ahora, es curioso que la aplicación muestre el llavero de inicio de sesión mientras que la herramienta de línea de comandos no.
Si hace clic derecho en el llavero Login
¿hay la opción "Establecer como predeterminado"? Y si es así, ¿cambiaría eso la salida de los comandos? No descubrí cómo obtener la ubicación del llavero en la interfaz gráfica de usuario, pero hacer que sea predeterminado puede ayudar.
¿También puede verificar el valor de la variable ambiental HOME
? Cuando lo desarmo o lo apunto a una ubicación "incorrecta", obtengo el mismo resultado que usted.
$ HOME=/tmp/boo security list-keychain
"/Library/Keychains/System.keychain"
$ HOME=/tmp/boo security default-keychain
security: SecKeychainCopyDefault: A default keychain could not be found.
¡Gracias! Ok, tuve que arreglar mi variable de entorno $ HOME que está hecho.
Aquí está la salida ahora de los comandos anteriores, incluida la variable $ HOME
Franks-iMac:~ frankbogle$ echo $HOME
/Users/frankbogle
Franks-iMac:~ frankbogle$ security list-keychain
""
"/Users/frankbogle/Library/Keychains/login.keychain-db"
"/Library/Keychains/System.keychain"
Franks-iMac:~ frankbogle$ security default-keychain
"/Users/frankbogle/Library/Keychains/login.keychain-db"
Franks-iMac:~ frankbogle$
Parece que tengo una cadena vacía: ""
en el llavero. No puedo ver eso en la interfaz de usuario
Haría una copia de seguridad de su llavero existente y puede intentar eliminarlo con security delete-keychain
. Sin embargo, debería estar bien tener más llaveros para que no te molestes. ¿El dotnet dev-certs https --trust
funciona ahora para usted?
Tenga en cuenta que HOME también se utiliza para otras cosas, como caché de paquetes y otros archivos .NET.
Hola @wfurt , éxito. ¡Gracias por tu ayuda para resolver esto! ¡Realmente aprecio tu ayuda!
dotnet dev-certs https -t -v
Trusting the HTTPS development certificate was requested. If the certificate is not already trusted we will run the following command:
'sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain <<certificate>>'
This command might prompt you for your password to install the certificate on the system keychain.
Listing 'HTTPS' certificates on 'CurrentUser\My'.
'1' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 16CC4B15F0AD8D8B430F55ED03709C13947BD3B7 - 30/03/2020 23:27:02 - 30/03/2021 23:27:02 - True
Checking certificates for validity.
Listing valid certificates
'1' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 16CC4B15F0AD8D8B430F55ED03709C13947BD3B7 - 30/03/2020 23:27:02 - 30/03/2021 23:27:02 - True
Listing invalid certificates
'0' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
Listing 'HTTPS' certificates on 'LocalMachine\My'.
'1' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 16CC4B15F0AD8D8B430F55ED03709C13947BD3B7 - 30/03/2020 23:27:02 - 30/03/2021 23:27:02 - False
Checking certificates for validity.
Listing valid certificates
'1' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 16CC4B15F0AD8D8B430F55ED03709C13947BD3B7 - 30/03/2020 23:27:02 - 30/03/2021 23:27:02 - False
Listing invalid certificates
'0' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
Filtering found certificates to those with a subject equal to 'CN=localhost'
'2' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 16CC4B15F0AD8D8B430F55ED03709C13947BD3B7 - 30/03/2020 23:27:02 - 30/03/2021 23:27:02 - True
CN=localhost - 16CC4B15F0AD8D8B430F55ED03709C13947BD3B7 - 30/03/2020 23:27:02 - 30/03/2021 23:27:02 - False
Listing certificates excluded from consideration.
'0' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
Found valid certificates present on the machine.
'2' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 16CC4B15F0AD8D8B430F55ED03709C13947BD3B7 - 30/03/2020 23:27:02 - 30/03/2021 23:27:02 - True
CN=localhost - 16CC4B15F0AD8D8B430F55ED03709C13947BD3B7 - 30/03/2020 23:27:02 - 30/03/2021 23:27:02 - False
Selected certificate
'1' found matching the criteria.
SUBJECT - THUMBPRINT - NOT BEFORE - EXPIRES - HAS PRIVATE KEY
CN=localhost - 16CC4B15F0AD8D8B430F55ED03709C13947BD3B7 - 30/03/2020 23:27:02 - 30/03/2021 23:27:02 - True
Trying to export the certificate.
A valid HTTPS certificate is already present.
Me alegro de que haya funcionado. Sé que no siempre es obvio lo que está pasando y Catalina no lo puso más fácil.
El problema persiste en Ubuntu 18.04 mientras se usa dotnet-sdk-3.1.201.
Si tiene un problema en Linux, abra un nuevo número @ajbozdar. Toda la discusión aquí es específica para macOS, Catalina específicamente, ya que tiene una implementación y restricciones distintas.
La única parte relevante es que Linux también depende de la variable HOME para encontrar la ubicación del almacén de certificados de usuario y otros archivos .NET.
Para mí, el problema se resuelve ejecutando los siguientes comandos:
dotnet dev-certs https --clean
esto limpiará los certificados de desarrollo HTTPS de la máquina, es posible que le pida que ingrese su contraseña.Luego, ejecuto el siguiente comando:
dotnet dev-certs https --trust
Y finalmente, el certificado de desarrollador HTTPS se generó con éxito
La solución propuesta por @javiercn en su archivo por
Los scripts de @javiercn también funcionan sin problemas para mí. Gracias. Me tomó un día resolver esto.
Esto resuelve mi problema https://dev.to/cesarcodes/troubleshooting-net-core-dev-certs-on-macos-179d.
Ayúdanos a solucionar este problema
Si tiene este problema, ¿puede probar las siguientes cosas y publicar sus resultados aquí?
Verifique que la identidad del "localhost" esté realmente en el llavero de inicio de sesión:
security find-identity -p ssl-server -s localhost ~/Library/Keychains/Login.keychain
Ejecute el siguiente comando manualmente:
sudo security set-key-partition-list -D localhost -S unsigned:,teamid:UBF8T346G9 ~/Library/Keychains/Login.keychain
Verifique si la entrada de partición clave está presente:
security dump-keychain -a ~/Library/Keychains/Login.keychain | grep -sirB 3 -A 1 UBF8T346G9
Recopile un sysdiagnose (sudo sysdiagnose) y compártalo con nosotros de forma privada ( NO publique el archivo sobre este problema )
en relación con # 21592 obtengo esto de mi llavero
Buscando identidades que coincidan con "localhost"
Política: SSL (servidor)
Identidades coincidentes
1) 161E0C4142F4E5230E6AD64BE895E15AF57004B7 "localhost"
1 identidades encontradas
Solo identidades válidas
1) 161E0C4142F4E5230E6AD64BE895E15AF57004B7 "localhost"
1 identidades válidas encontradas
cuando verifico visualmente veo dos certificados, uno es CA raíz
la interfaz de usuario web que intento ejecutar todavía falla con errores de certificado
Ejecuto generate.sh, pero parece que no funciona
./generate.sh
Generación de una clave privada RSA de 2048 bits
...... +++
.................................................. .......... +++
1 identidad importada.
Contraseña:
contraseña para desbloquear /Users/apple/Library/Keychains/login.keychain-db:
llavero: "/Users/apple/Library/Keychains/login.keychain-db"
versión: 512
clase: 0x00000011
atributos:
0x00000000
0x00000001
0x00000002
0x00000003
0x00000004
0x00000005
0x00000006
0x00000007
0x00000008
0x00000009
0x0000000A
0x0000000B
0x0000000C
0x0000000D
0x0000000E
0x0000000F
0x00000010
0x00000011
0x00000012
0x00000013
0x00000014
0x00000015
0x00000016
0x00000017
0x00000018
0x00000019
0x0000001A
security: SecKeychainItemCopyAccess: se detectó un valor faltante.
dotnet --info
.NET Core SDK (que refleja cualquier archivo global.json):
Versión: 3.1.201
Confirmar: b1768b4ae7
Entorno de ejecución:
Nombre del sistema operativo: Mac OS X
Versión del SO: 10.15
Plataforma del SO: Darwin
RID: osx.10.15-x64
Ruta base: /usr/local/share/dotnet/sdk/3.1.201/
Anfitrión (útil para soporte):
Versión: 3.1.3
Confirmar: 4a9f85e9f8
SDK de .NET Core instalados:
3.0.100 [/ usr / local / share / dotnet / sdk]
3.1.200 [/ usr / local / share / dotnet / sdk]
3.1.201 [/ usr / local / share / dotnet / sdk]
Tiempos de ejecución de .NET Core instalados:
Microsoft.AspNetCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.17 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
@XiaroanZhang, el paso que está fallando es el último, el set-key-partition-list, por lo que debería estar bien si intenta ejecutar una aplicación (tendrá que cerrar y volver a abrir el navegador)
ok ... así que me aclaré de nuevo. copió el script de solución alternativa en un archivo de shell. cerró todos los navegadores y ejecutó el script. cargó la aplicación de interfaz de usuario web en VS4Mac y la ejecutó. solicitó acceso al llavero (comportamiento muy diferente al de todas las ocasiones anteriores), que se lo concedí , y voilà ... funcionó .. así que, gracias a ti
Los cambios de Catalina no fueron la elección de .NET @ thales-man. Sé que esto puede ser frustrante, pero solo estamos tratando de mantener el ritmo.
no, pero eres una organización de miles de millones de dólares que intenta conseguir el mismo lugar donde estaba Java hace 20 años
@XiaroanZhang, el paso que está fallando es el último, el set-key-partition-list, por lo que debería estar bien si intenta ejecutar una aplicación (tendrá que cerrar y volver a abrir el navegador)
Muchas gracias. Funciona
Hola a todos,
Solo estaba teniendo el mismo problema. Logré evitarlo permitiendo confiar en el certificado de localhost que se genera después de intentar ejecutar la aplicación.
Aún debe ingresar la contraseña de su llavero cada vez que intente ejecutar, y el terminal seguirá diciendo que la aplicación falla, pero en realidad se ejecutará en el navegador como se esperaba.
Hola a todos,
Solo estaba teniendo el mismo problema. Logré evitarlo permitiendo confiar en el certificado de localhost que se genera después de intentar ejecutar la aplicación.
Aún debe ingresar la contraseña de su llavero cada vez que intente ejecutar, y el terminal seguirá diciendo que la aplicación falla, pero en realidad se ejecutará en el navegador como se esperaba.
ejecute el script de @javiercn en su archivo por lotes y el problema desaparecerá. luego, espere una solución adecuada.
Estoy aquí para confirmar que también me encuentro con este problema y que estoy ejecutando Mojave (10.14.6). Lo que lo ha desencadenado es la instalación del SDK 3.1.300 esta noche, para poder ejecutar los nuevos bits Blazor WASM. Me he estado desarrollando felizmente con HTTPS local durante el día y antes de hoy. Anteriormente estaba ejecutando SDK 3.1.100.
Sigue el diagnóstico; Es importante tener en cuenta que corro principalmente como un usuario normal ( jim
) que no es un administrador o en el archivo sudoers. Ejecuto cosas elevadas como Administrador / admin
. Entonces...
admin
Ejecuté dotnet dev-certs https --trust
y se me solicitaron las credenciales. El comando se completa con éxito.security find-identity ...
como jim
, obtengo 0 identidades encontradas, 0 identidades coincidentes.security find-identity ...
como admin
, obtengo 1 identidades encontradas, 1 identidades válidas encontradas.localhost
que puedo ver en Keychain Access
en el llavero System
(mientras estoy conectado al escritorio de Mac como mi jim
diario sudo security set-key-partition-list ...
como admin
, se ejecuta correctamente.security dump-keychain
... pero no estoy seguro de lo que estoy buscando, la salida está aquí -> dump-keychain.txtSi luego ejecuto un servidor web Kestrel simple que está configurado para escuchar HTTPS como admin
, entonces todo está bien.
Sin embargo, si intento hacer lo mismo que mi usuario jim
, obtengo la siguiente excepción:
crit: Microsoft.AspNetCore.Server.Kestrel[0]
Unable to start Kestrel.
System.InvalidOperationException: Unable to configure HTTPS endpoint. No server certificate was specified, and the default developer certificate could not be found or is out of date.
To generate a developer certificate run 'dotnet dev-certs https'. To trust the certificate (Windows and macOS only) run 'dotnet dev-certs https --trust'.
For more information on configuring HTTPS see https://go.microsoft.com/fwlink/?linkid=848054.
at Microsoft.AspNetCore.Hosting.ListenOptionsHttpsExtensions.UseHttps(ListenOptions listenOptions, Action`1 configureOptions)
Me gustaría mucho recuperar la capacidad de ejecutar sitios HTTPS en Kestrel de mi usuario habitual jim
, como podía antes del SDK 3.1.100. ¡Gracias!
Tengo un archivo de sysdiagnose que podría compartir con una dirección de correo electrónico segura y debidamente confirmada.
Una propuesta ... ¿sería posible actualizar dev-certs
con una opción que no intente configurar el certificado como compartido en todo el sistema (al menos en MacOS)? Siempre que haya un certificado localhost
en mi llavero de inicio de sesión, ¿debería ser suficiente para el desarrollo local?
Editar: desinstalé la última versión del SDK y volví a 3.1.100. Borré el certificado de localhost del sistema y los llaveros de inicio de sesión de jim
y admin
. Generado de nuevo con dev-cert --trust
como usuario administrador. Mientras que Kestrel se ejecuta como jim
el navegador solicita un certificado que no es de confianza, que puedo solucionar, pero no es lo ideal.
FWIW. También tuve este problema, junto con otro problema no relacionado. Tuve que iniciar sesión en mi contraseña y después de cambiar mi contraseña para que solo contenga, digamos más caracteres ascii, se resolvieron mis dos problemas.
Esto todavía está roto. Lo que me ayuda es eliminar todos los sdks hasta que vuelva a 3.1.100. Lo que obviamente rompe con cada actualización realizada por VS.
¿A alguien le importa arreglar esto?
@aspnetde estamos trabajando en una solución a este problema.
El último SDK 5.0-preview4 SDK contiene una versión actualizada de la herramienta que soluciona este problema. Tenemos planes de parchear el SDK de LTS actual una vez que tengamos suficiente confianza en que el nuevo enfoque no presenta problemas adicionales.
Seguí los pasos de este enlace solucionó el problema
solucionar problemas de certificados
OS X: certificado no confiable
Nada de las publicaciones anteriores funciona. Estoy usando Catalina 10.15.5 con SDK 5.0.100-PREVIEW.6.20318.15
Cada vez que ejecuto la aplicación, se me solicita que instale el certificado. Ingresé mi contraseña, se crea el certificado, pero luego obtengo:
_System.InvalidOperationException: "No se puede configurar el punto final HTTPS. No se especificó ningún certificado de servidor y el certificado de desarrollador predeterminado no se pudo encontrar o está desactualizado. \ NPara generar un certificado de desarrollador, ejecute 'dotnet dev-certs https'. Para confiar en el certificado (solo Windows y macOS) ejecute 'dotnet dev-certs https --trust'. \ nPara obtener más información sobre cómo configurar HTTPS, consulte https://go.microsoft.com/fwlink/?linkid=848054. "_
¡Por favor ayuda!
@ChadNedzlek gracias por hacérnoslo saber.
Preview6 debería funcionar, ya que cambiamos a un enfoque diferente que no tiene este problema. ¿Puede darnos más detalles sobre su entorno?
¿Puede asegurarse de que no tiene ningún certificado de host local en su llavero (ni en el llavero del usuario ni en el llavero del sistema), ejecute la herramienta con dotnet dev-certs https --trust
y verifique que los certificados estén presentes en el llavero? (es posible que deba cerrar y abrir el llavero).
@javiercn Hola Javier, gracias por participar. Ya hice todo, pero para solucionar problemas lo ejecuté de nuevo y los resultados son los mismos, mira a continuación:
1
2
3
4
5
6
7
@ChamaCR Gracias por los detalles. Sospecho que puede tener una versión antigua de VS 4 Mac que usa el SDK 3.1 y eso está causando problemas, ya que está instalando un segundo certificado con el método anterior (que aparentemente se rompe en su máquina).
¿Puedes limpiar tu llavero nuevamente (lo siento, sé que es doloroso) e intentar ejecutar la aplicación desde la línea de comandos? Asegúrese de que dotnet --info
refleje el SDK de preview6
@javiercn perdón por el retraso, ayer tenía algunos recados que hacer. Estaba usando la última versión de Visual Studio para Mac. dotnet --info mostró la versión correcta del SDK de preview6.
Terminé eliminando VS + SDK ... y estoy creando un bootcamp con WIN10 en este momento :(
@ChamaCR si eso vuelve a suceder, puede ejecutar la herramienta desde la línea de comandos con --debug
y capturar un rastro con dotnet-trace. Eso nos ayudará a llegar al fondo en el futuro.
Estoy experimentando el mismo problema. Acabo de actualizar a 3.1.301 esta noche, anteriormente tenía 3.1.10x (no recuerdo el número menor).
Usé el script de https://dotnet.microsoft.com/download/dotnet-core/scripts para instalar primero 3.1.301, pero eso no pareció configurarlo en el lugar esperado. Todavía vería 3.1.10x en ejecución. Entonces, descargué el instalador del paquete y configuré 3.1.301 como se esperaba.
Usé dotnet new blazorwasm -o CICalc
y luego dotnet run
. Me encontré con este problema. Tenía algunos SDK 2.2.x instalados, así que los eliminé usando la herramienta de desinstalación de dotnet.
No puedo pasar de la etapa en la que genera el certificado. Puedo ver que hay una configuración de certificado en el llavero, pero no es de confianza. He probado el script vinculado en esta página, pero me da el mismo resultado.
Puedo cambiar la configuración de confianza para HTTPS en el llavero, lo que me permite continuar. No estoy seguro de si eso hace todo lo que la opción -trust intenta hacer. ¿Es esta una solución alternativa suficiente o encontraré otros problemas?
Otros detalles a continuación.
Gracias,
Neil
macOS 10.15.5
% dotnet --list-sdks
3.1.301 [/ usr / local / share / dotnet / sdk]
% dotnet --list-runtimes
Microsoft.AspNetCore.All 2.2.7 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 3.1.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
He eliminado manualmente el certificado de localhost de Keychain Access.
% dotnet dev-certs https: limpio
Limpieza de certificados de desarrollo HTTPS de la máquina. Esta operación puede requerir privilegios elevados. Si ese es el caso, se mostrará una solicitud de credenciales.
Los certificados de desarrollo HTTPS se eliminaron correctamente de la máquina.
% dotnet dev-certs https
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/2.1/troubleshootcertissues
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/3.1/troubleshootcertissues
Contraseña:
contraseña para desbloquear /Users/neil/Library/Keychains/login.keychain-db:
llavero: "/Users/neil/Library/Keychains/login.keychain-db"
versión: 512
clase: 0x00000011
atributos:
0x00000000
0x00000001
0x00000002
0x00000003
0x00000004
0x00000005
0x00000006
0x00000007
0x00000008
0x00000009
0x0000000A
0x0000000B
0x0000000C
0x0000000D
0x0000000E
0x0000000F
0x00000010
0x00000011
0x00000012
0x00000013
0x00000014
0x00000015
0x00000016
0x00000017
0x00000018
0x00000019
0x0000001A
security: SecKeychainItemCopyAccess: se detectó un valor faltante.
En la misma plataforma que el mensaje anterior, ejecuté:
% dotnet dev-certs https --verbose
El resultado fue:
Listado de certificados 'HTTPS' en 'CurrentUser \ My'.
Se encontró '1' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
CN = localhost - C5F12C7AACE0803C8DBCEC2F5B3650D7D8A08056 - 02/07/2020 01:19:42 - 02/07/2021 01:19:42 - Verdadero
Comprobación de la validez de los certificados.
Listado de certificados válidos
Se encontró '1' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
CN = localhost - C5F12C7AACE0803C8DBCEC2F5B3650D7D8A08056 - 02/07/2020 01:19:42 - 02/07/2021 01:19:42 - Verdadero
Listado de certificados no válidos
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Listado de certificados 'HTTPS' en 'LocalMachine \ My'.
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Comprobación de la validez de los certificados.
Listado de certificados válidos
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Listado de certificados no válidos
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Filtrar certificados encontrados a aquellos con un asunto igual a 'CN = localhost'
Se encontró '1' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
CN = localhost - C5F12C7AACE0803C8DBCEC2F5B3650D7D8A08056 - 02/07/2020 01:19:42 - 02/07/2021 01:19:42 - Verdadero
Listado de certificados excluidos de consideración.
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
No se pudo hacer accesible la clave del certificado
Mensaje de excepción: Error al hacer que la clave sea accesible a través de particiones.
Algo salió mal. No se pudo crear el certificado de desarrollador HTTPS.
También estoy experimentando exactamente el mismo mensaje de @digidol donde me dice que se detectó un valor faltante al intentar crear los dev-certs a través de:
% dotnet dev-certs https
También estoy ejecutando MacOS Catalina 10.15.5 y el último Visual Studio con el último .NET Core SDK 3.1.301.
Sin embargo, es posible que tenga una posible solución para que la depuración funcione en Visual Studio. Esto es lo que hice:
Una vez más, no es una solución, pero parece una solución decente, hasta que se pueda resolver el error. Espero que esto ayude.
John D.
@jdelano, ¿el script descrito aquí no soluciona el problema por ti? https://gist.github.com/javiercn/d04855b7a3581bf97d1ab9597935413f#file -generate-sh
Muchas gracias @javiercn ,
Una cosa; actualizar el script para eliminar localhost
certificados previamente generados hubiera sido bueno. Si ejecuta el script sin eliminar localhost
certificado (s) existente, terminará teniendo varios certificados y no resolverá el problema.
@ardaozceviz No estoy exactamente seguro de cómo hacerlo sin arriesgarme a eliminar otros certificados de
@javiercn Desafortunadamente, el script tampoco funciona. Recibo el mensaje de que se detectó un valor faltante.
@jdelano ¿Es cuando se ejecuta este comando? udo security set-key-partition-list -D localhost -S unsigned:,teamid:UBF8T346G9 $loginKeyChain;
puede ignorarlo y aún debería funcionar. Lo he sacado del guión.
@javiercn Está bien, pero sigo recibiendo el mensaje en Visual Studio de que no se encontró un certificado de desarrollo válido y es necesario ejecutar el comando dev-certs nuevamente. Puedo hacer clic en cancelar y la aplicación se ejecuta, pero no estoy seguro de qué tan diferente es ese comportamiento de lo que publiqué anteriormente en mi solución.
@jdelano, ¿
@javiercn Está bien, volví a realizar todos los pasos y esta vez funcionó. Sin embargo, no estoy seguro de lo que me perdí antes. Muy raro. ¡Gracias por el guión!
@jdelano no hay problema, este problema debería solucionarse en las últimas vistas previas de .NET Core 5.0 y, con suerte, lo volveremos a exportar a 3.1 una vez que hayamos validado que no afecta a otras personas.
Visual Studio corrigió los certificados para mí después de la reinstalación, solo me pidió la contraseña de AppStore
Lo que noté es que no importa cuántas veces ejecute dotnet dev-certs https --clean; dotnet dev-certs https --trust
, no solucionaría el problema hasta que reinstalara el dotnet core sdk. Así que estoy haciendo desarrollo activo para dos proyectos de cliente: uno que usa dotnet core 2.2 y otro que usa dotnet core 3.1. Parece que un certificado de localhost de confianza válido instalado con un sdk no funcionará en otro. Volver a emitir el certificado, reiniciar la máquina, no hace nada. Lo único que ayuda fue reinstalar el sdk relevante cada vez que cambio de proyecto. Parece que Microsoft tiene algún error en el que los sdks no pueden compartir la herramienta dotnet-dev-certs, y la instalación de un sdk sobrescribe algunos archivos en dotnet-dev-certs. No parece muy robusto.
¡Hola! Estoy enfrentando el mismo problema y no puedo encontrar el camino correcto hacia la solución.
macOS Catalina 10.15.6
dotnet --info
.NET Core SDK (que refleja cualquier archivo global.json):
Versión: 3.1.302
Confirmar: 41faccf259
Entorno de ejecución:
Nombre del sistema operativo: Mac OS X
Versión del SO: 10.15
Plataforma del SO: Darwin
RID: osx.10.15-x64
Ruta base: /usr/local/share/dotnet/sdk/3.1.302/
Anfitrión (útil para soporte):
Versión: 3.1.6
Confirmar: 3acd9b0cd1
SDK de .NET Core instalados:
3.1.302 [/ usr / local / share / dotnet / sdk]
Tiempos de ejecución de .NET Core instalados:
Microsoft.AspNetCore.App 3.1.6 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.20 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.6 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Para instalar entornos de ejecución o SDK de .NET Core adicionales:
https://aka.ms/dotnet-download
Ya eliminé el certificado "localhost" de la interfaz de usuario del llavero.
Cuando corro:
lista de seguridad-llaveros
"/Users/fabrizio/Library/Keychains/login.keychain-db"
"/Library/Keychains/System.keychain"
seguridad por defecto-llavero
"/Users/fabrizio/Library/Keychains/login.keychain-db"
Eso se ve bien, pero cuando intento crear el certificado, no puedo
Y sobre la información:
dotnet dev-certs https -t -v
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/2.1/troubleshootcertissues
No se encontró un certificado HTTPS válido con una clave accesible a través de las particiones de seguridad. Se ejecutará el siguiente comando para solucionarlo:
'sudo security set-key-partition-list -D localhost -S unsigned :, teamid: UBF8T346G9 '
Este comando hará que la clave del certificado sea accesible a través de las particiones de seguridad y podría solicitarle su contraseña. Para obtener más información, consulte: https://aka.ms/aspnetcore/3.1/troubleshootcertissues
Se solicitó confiar en el certificado de desarrollo HTTPS. Si el certificado aún no es de confianza, ejecutaremos el siguiente comando:
'sudo seguridad agregar-confiable-cert -d -r trustRoot -k /Library/Keychains/System.keychain <
Este comando puede solicitarle su contraseña para instalar el certificado en el llavero del sistema.
Listado de certificados 'HTTPS' en 'CurrentUser \ My'.
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Comprobación de la validez de los certificados.
Listado de certificados válidos
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Listado de certificados no válidos
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Listado de certificados 'HTTPS' en 'LocalMachine \ My'.
Se encontró '1' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
CN = localhost - A9F70404AAE7E48F17B9781A71FA01CFD1FB7323 - 21/07/2020 20:47:47 - 21/07/2021 20:47:47 - Falso
Comprobación de la validez de los certificados.
Listado de certificados válidos
Se encontró '1' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
CN = localhost - A9F70404AAE7E48F17B9781A71FA01CFD1FB7323 - 21/07/2020 20:47:47 - 21/07/2021 20:47:47 - Falso
Listado de certificados no válidos
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Filtrar certificados encontrados a aquellos con un asunto igual a 'CN = localhost'
Se encontró '1' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
CN = localhost - A9F70404AAE7E48F17B9781A71FA01CFD1FB7323 - 21/07/2020 20:47:47 - 21/07/2021 20:47:47 - Falso
Listado de certificados excluidos de consideración.
Se encontró '0' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
Se encontraron certificados válidos presentes en la máquina.
Se encontró '1' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
CN = localhost - A9F70404AAE7E48F17B9781A71FA01CFD1FB7323 - 21/07/2020 20:47:47 - 21/07/2021 20:47:47 - Falso
Certificado seleccionado
Se encontró '1' que coincide con los criterios.
SUJETO - PULGAR - NO ANTES - EXPIRA - TIENE CLAVE PRIVADA
CN = localhost - A9F70404AAE7E48F17B9781A71FA01CFD1FB7323 - 21/07/2020 20:47:47 - 21/07/2021 20:47:47 - Falso
Intentando exportar el certificado.
Gracias por adelantado
Comentario más útil
Actualización importante
Este es un problema continuo en la última versión del SDK (3.1.102) que todavía estamos investigando.
Para solucionar este problema, siga estos pasos :