Erstellen eines Zertifikats
Die Reihenfolge der Aufrufe beim Erstellen eines Zertifikats lautet wie folgt:
- Die Zertifizierungsstelle initialisiert Module über Aufrufe von ICertPolicy und ICertExit (erfolgt einmal bei der Serverinitialisierung). Die Zertifizierungsstelle initialisiert die Richtlinie und beendet die Module, indem sie ICertPolicy2::Initialize und ICertExit::Initializeaufruft.
- Der Vermittler ruft die Zertifizierungsstelle über ICertConfig auf (erfolgt einmal pro Zwischeninitialisierung). Der Vermittler findet die erforderliche Konfigurationszeichenfolge, indem er ICertConfig::GetConfigaufruft.
- Der Client ruft den Vermittler über eine Schnittstelle auf, die für den Vermittler spezifisch ist (erfolgt einmal pro Anforderung). Der Client sendet eine Zertifikatanforderung an den Vermittler. Dies kann beispielsweise sein, dass Microsoft Internet Explorer eine Anforderung über die Zertifikatregistrierungssteuerung an Microsoft-Internetinformationsdienste sendet.
- Vermittler zur Zertifizierungsstelle über ICertRequest (erfolgt einmal pro Anforderung). Der Vermittler sendet die Zertifikatanforderung über ICertRequest::Submitan die Zertifizierungsstelle. Im Fall von Internetinformationsdienste kann dies über Active Server Pages-Skripts erfolgen.
- Die Zertifizierungsstelle ruft das Richtlinienmodul über die ICertPolicy-Schnittstelle auf (erfolgt einmal pro Anforderung). Die Zertifizierungsstelle benachrichtigt das Richtlinienmodul, dass eine Anforderung eingetroffen ist, indem sie ICertPolicy::VerifyRequestaufruft. Das Richtlinienmodul kann die Anforderung untersuchen und das Zertifikat durch Aufrufen von Methoden der ICertServerPolicy-Schnittstelle ändern. Das Richtlinienmodul kann dann angeben, dass die Anforderung ok ist (wenn dies der Grund ist, wird das Zertifikat zu diesem Zeitpunkt erstellt), die Anforderung wird abgelehnt, oder die Anforderung sollte angehalten werden.
- (Optional) Der Administrator ruft die Zertifizierungsstelle über die ICertAdmin-Schnittstelle auf. Wenn die Anforderung angehalten wird, kann der Administrator die Anforderung erneut übermitteln oder ablehnen oder Anforderungsattribute und -erweiterungen ändern. Beachten Sie Folgendes: Wenn die Anforderung erneut übermittelt wird, hat das Richtlinienmodul eine weitere Möglichkeit, die Anforderung zu verarbeiten (als Ergebnis eines Aufrufs von ICertPolicy::VerifyRequest). Die Aufgabe zum erneuten Übermitteln oder Ablehnen der Anforderung kann über das MMC-Snap-In der Zertifizierungsstelle oder eine andere Anwendung ausgeführt werden, die ICertAdmin verwendet.
- Die Zertifizierungsstelle ruft das Exitmodul über die ICertExit-Schnittstelle auf. Wenn das Exitmodul (beim Aufruf von ICertExit::Initialize in Schritt 1) angegeben hat, dass es daran interessiert ist, ausgestellte Zertifikate oder ausstehende Anforderungen anzuzeigen, ruft die Zertifizierungsstelle ICertExit::Notifyauf.
- Das Exitmodul ruft die Zertifizierungsstelle über die ICertServerExit-Schnittstelle auf. Das Exitmodul kann die Anforderung und das neue Zertifikat durch Aufrufen der Methoden von ICertServerExit untersuchen.