2013-02-21 60 views
22

Podczas tworzenia instancji o numerze X509Certificate2(string, string) mój proces IIS ulega awarii. Nie ma wyjątków .Net, nic, oprócz tego w moim przypadku zalogowaćX509Certyfikat2 powoduje awarię 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 całkiem oszołomiony i nie wiem gdzie zacząć szukać. Podczas dołączania debuggera do procesu, jestem w stanie przebić się do tej linii, ale kiedy przechodzimy przez to, wszystko się psuje.

_certificate = new X509Certificate2(pfxFile, pfxPassword); 

pfxFile jest prawidłową ścieżką, jeśli mogę to zmienić i natychmiast uzyskać prawidłową wyjątek .Net PathNotFound.

Serwer to Windows 2012 z uruchomionymi IIS8 i .Net 4.5.

Aktualizacja
This article opisuje ten sam problem, gdy roztwór jest upewnienie się, tożsamość puli aplikacji ma LoadUserProfile JavaScript.

+0

FWIW http: // stackoverflow .pl/questions/9259581/nasz-aplikacja-crash-how-to-find-the-cause-of-the-crash Może być krok we właściwym kierunku. –

Odpowiedz

32

miałem podobny problem, również na Windows Server 2012, który rozbił IIS, podczas korzystania

new X509Certificate2(fileName, keyPassword, X509KeyStorageFlags.Exportable) 

ta została ustalona przez zmianę konstruktora

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

Miałem dokładnie ten sam problem, a twoje rozwiązanie również zadziałało. Chciałbym móc odpowiedzieć na to pytanie więcej niż raz. Wielkie dzięki! –

+2

@RodrigoSieiro Pójdę naprzód i pomogę ci go zignorować. Sam wpadłem na to, kiedy korzystasz z konta usługi Google Admin SDK. –

+0

@maxp Ta odpowiedź jest odpowiedzią na pytanie, dlaczego uwielbiam przepełnienie stosu. – CameraSchoolDropout