2009-05-07 7 views
5

Dove posso trovare la posizione dell'archivio certificati Windows sul disco rigido per il server 2003. Sto codificando un'utilità C# per la gestione di alcuni certificati che utilizziamo per notificare quando sono in scadenza. Quindi, ho scelto di memorizzarli nell'archivio certificati di Windows. Invece di usare qualsiasi posizione esistente (personale ...) che vedo in MMC vorrei creare un'altra posizione con il nome della mia applicazione e un posto (es: 'c: \ certs') di mia scelta, in modo che possa tornare su.Archivio certificati Windows

risposta

2

Ho il forte sospetto che non sia necessario creare la propria posizione. Hai una buona ragione per volerne uno? Windows ha le API per gestire i certificati e suggerirei di esaminarli. Sono abbastanza sicuro che tu possa fare tutte le cose ragionevoli attraverso l'API pubblica. Se si utilizzano le API con l'archivio di sistema, è probabile che si debba scrivere meno codice e la soluzione risultante sarà più sicura, integrata meglio con il sistema operativo (e tutti gli altri strumenti creati per gestire certs su Windows)

+0

sto scrivendo l'utilità in .net e naturalmente usando la sua API. Volevo solo scegliere il mio nome per il negozio e la sua posizione sul disco rigido – Syam

+0

@Syam: System.Security.Cryptography.X509Certificates.StoreName è un'enumerazione, questo indica chiaramente che l'elenco dei negozi è stato risolto. – Richard

+0

@Syam: se usi l'API, perché ti interessa dove si trovano gli attuali certificati? Basta scrivere il codice per enumerare le dannate cose, controllare la scadenza (o qualsiasi altra cosa tu abbia bisogno) e averlo fatto :) Questa roba è abbastanza delicata così com'è (mi ci è voluto abbastanza tempo per far parlare WSE3 ad Axis con crittografia x.509 e firme. Se il mix avesse qualche codice personalizzato che creava problemi con il negozio di certificati, sarei impazzito) – user8032

0

(Perdona la risposta tardiva)

Non sono sicuro su questo Syam, ma almeno le chiavi private coinvolte nei certificati potrebbero essere qui: C: \ Documents and Settings \ All Users \ Application Data \ Microsoft \ Crypto

Ancora, questo non è qualcosa di cui sono sicuro.

5

So che questo tipo di vecchia questione, ma quando ero alla ricerca di una risposta alla domanda simile, sono stato in grado di trovare che le informazioni sul certificato sono memorizzate nel registro di Windows, non nelle file regolari: http://technet.microsoft.com/en-us/library/cc787544(WS.10).aspx#w2k3tr_certs_tools_dgzz

+0

A seconda del tipo di archivio, può essere memorizzato nel registro o nel file come spiegato [qui] (http://paulstovell.com/blog/x509certificate2) – AaA