Freigeben über


Verwalten von Zertifikaten mit Zertifikatspeichern

Im Laufe eines Zeitraums werden Zertifikate auf dem Computer eines Benutzers gesammelt. Zum Verwalten dieser Zertifikate sind Tools erforderlich. CryptoAPI stellt diese Tools als Funktionen zum Speichern, Abrufen, Löschen, Auflisten (Aufzählen) und Überprüfen von Zertifikaten bereit. CryptoAPI bietet auch die Möglichkeit, Zertifikate an Nachrichten anzufügen.

CryptoAPI bietet zwei Standard Kategorien von Funktionen für die Verwaltung von Zertifikaten: Funktionen, die Zertifikatspeicher verwalten, und Funktionen, die mit den Zertifikaten arbeiten, Zertifikatsperrlisten (Certificate Revocation Lists, CRLs) und Zertifikatvertrauenslisten (Certificate Trust Lists, CTLs) in diesen Speichern.

Die Funktionen zum Verwalten von Zertifikatspeichern umfassen Funktionen zum Arbeiten mit logischen oder virtuellen Speicher, Remotespeichern, externen Speicher und Speicher, die verschoben werden können.

Zertifikate, Zertifikatsperrlisten und CTLs können in Zertifikatspeichern aufbewahrt und verwaltet werden. Sie können aus einem Speicher abgerufen werden, in dem sie zur Verwendung in Authentifizierungsprozessen gespeichert wurden.

Der Zertifikatspeicher ist für alle Zertifikatfunktionen von zentraler Bedeutung. Die Zertifikate werden im Speicher mithilfe von Funktionen mit dem Präfix "Cert" verwaltet. Ein typischer Zertifikatspeicher ist eine verknüpfte Liste von Zertifikaten , wie in der folgenden Abbildung dargestellt.

Zertifikatspeicher

Die vorangehende Abbildung zeigt:

  • Jeder Zertifikatspeicher verfügt über einen Zeiger auf den ersten Zertifikatblock in diesem Speicher.
  • Ein Zertifikatblock enthält einen Zeiger auf die Daten dieses Zertifikats und einen "Weiter"-Zeiger auf den nächsten Zertifikatblock im Speicher.
  • Der Zeiger "next" im letzten Zertifikatblock ist auf NULL festgelegt.
  • Der Datenblock eines Zertifikats enthält den schreibgeschützten Zertifikatkontext und alle erweiterten Eigenschaften des Zertifikats.
  • Der Datenblock jedes Zertifikats enthält eine Verweisanzahl , die die Anzahl der Zeiger auf das vorhandene Zertifikat nachverfolgt.

Zertifikate in einem Zertifikatspeicher werden normalerweise in einer Art permanentem Speicher wie einer Datenträgerdatei oder der Systemregistrierung aufbewahrt. Zertifikatspeicher können auch streng im Arbeitsspeicher erstellt und geöffnet werden. Ein Speicher bietet temporären Zertifikatspeicher für die Arbeit mit Zertifikaten, die nicht aufbewahrt werden müssen.

Zusätzliche Speicherorte ermöglichen es, Speicher in verschiedenen Teilen der Registrierung eines lokalen Computers oder bei ordnungsgemäß festgelegten Berechtigungen in der Registrierung auf einem Remotecomputer zu speichern und zu durchsuchen.

Jeder Benutzer verfügt über einen persönlichen My Store, in dem die Zertifikate dieses Benutzers gespeichert werden. Der Mein Speicher kann sich an einem von vielen physischen Speicherorten befinden, einschließlich der Registrierung auf einem lokalen oder Remotecomputer, einer Datenträgerdatei, einer Datenbank, einem Verzeichnisdienst, einem intelligenten Karte oder einem anderen Speicherort. Zwar kann jedes Zertifikat im "Mein Speicher" gespeichert werden, aber dieser Speicher sollte für die persönlichen Zertifikate eines Benutzers reserviert werden: die Zertifikate, die zum Signieren und Entschlüsseln der Nachrichten dieses Benutzers verwendet werden.

Die Verwendung von Zertifikaten für die Authentifizierung hängt davon ab, dass Zertifikate von einem vertrauenswürdigen Zertifikataussteller ausgestellt werden. Zertifikate für vertrauenswürdige Zertifikataussteller werden in der Regel im Stammspeicher aufbewahrt, der derzeit in einem Registrierungsunterschlüssel gespeichert wird. Im CryptoAPI-Kontext ist der Stammspeicher geschützt, und Dialogfelder der Benutzeroberfläche erinnern den Benutzer daran, nur vertrauenswürdige Zertifikate in diesem Speicher zu platzieren. In Unternehmensnetzwerksituationen können Zertifikate von einem Systemadministrator vom Domänencontrollercomputer in die Stammspeicher auf Clientcomputern gepusht (kopiert) werden. Dieser Prozess stellt allen Mitgliedern einer Domäne ähnliche Vertrauenslisten bereit.

Andere Zertifikate können im Systemspeicher der Zertifizierungsstelle (Ca ) oder in vom Benutzer erstellten, dateibasierten Speichern gespeichert werden.

Listen mit Funktionen für die Verwendung und Verwaltung von Zertifikatspeichern finden Sie unter Zertifikatspeicherfunktionen.

Ein Beispiel, das einige dieser Funktionen verwendet, finden Sie unter Beispiel C-Programm: Zertifikatspeichervorgänge.

Verwalten eines Zertifikatspeicherstatus

Arbeiten mit Zertifikaten in Zertifikatspeichern

Zertifikatlinks

Sammlungsspeicher

Logische und physische Speicher

Systemspeicherorte

Zertifikatspeichermigration