Freigeben über


Vermittler

Vermittler kommunizieren mit Clientanwendungen, damit sie Zertifikatanforderungenübermitteln können und (vorausgesetzt, dass die Anforderung zu einem ausgestellten Zertifikat führt), um das ausgestellte Zertifikat auf den Client herunterzuladen. Jedes Transportschichtprotokoll erfordert einen eigenen Vermittler.

Microsoft-Zertifikatdienste werden mit einem Vermittler (den Webregistrierungsseiten) für HTTP ausgeliefert. Ein weiteres Beispiel für einen Vermittler ist das MMC-Snap-In für Microsoft Windows-Zertifikate (mit dem der Zertifikatanforderungs-Assistent aufgerufen werden kann). Wenn andere Transportschichtprotokolle mit Zertifikatdiensten verwendet werden sollen, kann ein Entwickler für jedes gewünschte Transportschichtprotokoll einen Zwischenträger erstellen.

Zwischengeschaltete kommunizieren mit Zertifikatdiensten mithilfe der ICertRequest und ICertConfig Schnittstellen, die vom Servermodul bereitgestellt werden. Die ICertRequest::Submit-Methode wird verwendet, um eine Zertifikatanforderungzu übermitteln, und ICertRequest::GetCertificate wird verwendet, um das resultierende ausgestellte Zertifikat abzurufen. Ebenso wird ICertConfig::GetConfig verwendet, um zu bestimmen, welche Zertifizierungsstelle zum Ausgeben des Zertifikats verwendet werden kann.

Ein Vermittler ist nicht sprachabhängig. Es kann ein Programm sein, das in C++, Visual Basic, Java, Skript oder einer anderen Sprache geschrieben wurde.

Zusätzlich zum Sammeln von Daten vom Client zum Erstellen einer Zertifikatanforderung kann ein Vermittler Anforderungsattribute angeben. Anforderungen, die an eine Zertifizierungsstelle übermittelt werden, das Unternehmensrichtlinienmodul ausführen, müssen den Typ des zertifikats angeben, das angefordert wird, indem entweder ein "CertificateTemplate"-Attribut oder eine Zertifikatvorlagenerweiterung in der Anforderung selbst angegeben wird.

Beachten Sie, dass Entwickler (und Vermittler) während der Erstellung einer Zertifikatanforderung für die Wahrung des Geheimhaltungsgeheimnisses des privaten Schlüssels verantwortlich sind. Nachdem ein privater Schlüssel kompromittiert wurde (seine Geheimhaltung verloren), ist er nutzlos.

Auf den Registrierungsseiten der Zertifikatdienste werden die Zertifikatregistrierungsschnittstellenverwendet, die private Schlüssel durch Generieren auf der Arbeitsstation schützt. Zusätzlich zur Wahrung der Geheimhaltung des privaten Schlüssels ermöglicht die Zertifikatregistrierungssteuerung einem Zwischenanbieter die Angabe des Kryptografiedienstanbieters, der Schlüsselspezifikation, der Schlüsselstärke und des Hashalgorithmus.

Das MMC-Snap-In "Zertifikate" verwendet auch das Zertifikatregistrierungssteuerelement (Xenroll.dll). Wenn die Zertifikatdienste-Webregistrierungsseiten jedoch dazu führen, dass die Zertifikatregistrierungssteuerungsressource (Xenroll.dll) bei Bedarf auf den Client heruntergeladen wird, wird das MMC-Snap-In "Zertifikate" in einer Umgebung ausgeführt, in der Xenroll.dll bereits eine verfügbare Ressource ist.

Zusätzlich zu ICertRequest und ICertConfigfinden Entwickler von Vermittlern möglicherweise die Zertifikatregistrierungsschnittstellen und die SmartCard-Registrierungssteuerung nützlich sein.