2013-02-21 10 views
22

Durante la creazione di un'istanza di X509Certificate2(string, string), il processo IIS si blocca semplicemente. Nessuna eccezione .Net, niente di niente, tranne che di questo nel mio registro eventiX509Certificate2 provoca l'arresto di IIS

Faulting application name: w3wp.exe, version: 8.0.9200.16384, time stamp: 0x50108835 
Faulting module name: ntdll.dll, version: 6.2.9200.16420, time stamp: 0x505ab405 
Exception code: 0xc0000374 
Fault offset: 0x00000000000ea485 
Faulting process id: 0x102c 
Faulting application start time: 0x01ce10301e250c4d 
Faulting application path: c:\windows\system32\inetsrv\w3wp.exe 
Faulting module path: C:\Windows\SYSTEM32\ntdll.dll 
Report Id: 5e55321c-7c23-11e2-93f9-00155d8a0f17 
Faulting package full name: 

Im abbastanza stordito e non so da dove cominciare a guardare. Quando si collega un debugger al processo, sono in grado di rompere fino a questa linea, ma quando si passa su di esso l'intera cosa si blocca.

_certificate = new X509Certificate2(pfxFile, pfxPassword); 

FilePFX è un percorso valido, se cambio è immediatamente ottengo una corretta un'eccezione .Net PathNotFound.

Il server è Windows 2012, con IIS8 e .Net 4.5.

Aggiornamento
This article descrive lo stesso problema in cui una soluzione è quella di assicurarsi che l'identità del pool di applicazioni ha LoadUserProfile abilitato.

+0

FWIW, http: // StackOverflow .com/questions/9259581/our-application-crashes-how-to-find-the-cause-of-the-crash Potrebbe essere un passo nella giusta direzione. –

risposta

32

Ho avuto un problema simile, anche su Windows Server 2012, che si schiantò IIS, quando si utilizza

new X509Certificate2(fileName, keyPassword, X509KeyStorageFlags.Exportable) 

Questo è stato risolto modificando il costruttore per

new X509Certificate2(fileName, keyPassword, X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable) 
+1

Ho avuto lo stesso identico problema e anche la soluzione ha funzionato per me. Vorrei poter revocare questa risposta più di una volta. Molte grazie! –

+2

@RodrigoSieiro Andrò avanti e ti aiuterò a trovare questo. Mi sono imbattuto in questo da solo quando hai utilizzato l'account di servizio di Google Admin SDK. –

+0

@maxp Questa risposta è la ragione per cui adoro lo stack overflow. – CameraSchoolDropout

Problemi correlati