Freigeben über


HttpUpdateServiceConfiguration-Funktion (http.h)

Aktualisiert atomar einen Dienstkonfigurationsparameter, der ein TLS-Zertifikat (Transport Layer Security) in einem Konfigurationsdatensatz im HTTP Server-API-Konfigurationsspeicher angibt.

Syntax

HTTPAPI_LINKAGE ULONG HttpUpdateServiceConfiguration(
  [in] HANDLE                 Handle,
  [in] HTTP_SERVICE_CONFIG_ID ConfigId,
  [in] PVOID                  ConfigInfo,
  [in] ULONG                  ConfigInfoLength,
  [in] LPOVERLAPPED           Overlapped
);

Die Parameter

[in] Handle

Reserviert und muss NULL sein.

[in] ConfigId

Der Typ des zu aktualisierenden Konfigurationsdatensatzes. Dieser Parameter kann einer der folgenden Werte aus der HTTP_SERVICE_CONFIG_ID Enumeration sein.

ConfigId-Wert Bedeutung
HttpServiceConfigssLCertInfo
Aktualisiert einen angegebenen SSL-Zertifikateintrag.
HttpServiceConfigSslSniCertInfo
Aktualisiert einen angegebenen SNI-Zertifikateintrag (SSL Server Name Indication).
HttpServiceConfigSslCcsCertInfo
Aktualisiert den SSL-Zertifikatdatensatz, der angibt, dass Http.sys den zentralen Zertifikatspeicher (Centralized Certificate Store, CCS) konsultieren soll, um Zertifikate zu finden, wenn der Port einen TLS-Handshake empfängt. Der Port wird durch das KeyDesc-Element der HTTP_SERVICE_CONFIG_SSL_CCS_SET Struktur angegeben, die Sie an den pConfigInfo-Parameter übergeben.

[in] ConfigInfo

Ein Zeiger auf einen Puffer, der die entsprechenden Daten enthält, um den Zu aktualisierenden Datensatztyp anzugeben. Die folgende Tabelle zeigt den Datentyp, den der Puffer für die verschiedenen möglichen Werte des ConfigId-Parameters enthält.

ConfigId-Wert Datentyp im pConfigInfo-Puffer
HttpServiceConfigssLCertInfo

HTTP_SERVICE_CONFIG_SSL_SET Struktur.

HttpServiceConfigSslSniCertInfo

HTTP_SERVICE_CONFIG_SSL_SNI_SET Struktur. Der Hostname lautet "*", wenn der zentrale SSL-Zertifikatspeicher abgefragt wird und Wildcardbindungen verwendet werden, und ein Hostname für reguläre SNI.

HttpServiceConfigSslCcsCertInfo

HTTP_SERVICE_CONFIG_SSL_CCS_SET Struktur. Diese Struktur wird verwendet, um den CCS-Speicher am angegebenen Port hinzuzufügen sowie einen vorhandenen SSL-CCS-Eintrag zu löschen, abzurufen oder zu aktualisieren.

[in] ConfigInfoLength

Die Größe des ConfigInfo-Puffers in Bytes.

[in] Overlapped

Reserviert und muss NULL sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert ERROR_SUCCESS.

Wenn die Funktion fehlschlägt, ist der Rückgabewert einer der folgenden Fehlercodes.

Wert Bedeutung
ERROR_FILE_NOT_FOUND
Der angegebene Datensatz ist nicht vorhanden.
ERROR_INSUFFICIENT_BUFFER
Die im Parameter ConfigInfoLength angegebene Puffergröße ist unzureichend.
ERROR_INVALID_HANDLE
Der Parameter ServiceHandle ist ungültig.
ERROR_INVALID_PARAMETER
Mindestens einer der angegebenen Parameter ist in unbrauchbarer Form vorhanden.
ERROR_NO_SUCH_LOGON_SESSION
Das verwendete SSL-Zertifikat ist ungültig. Dies kann nur auftreten, wenn der Parameter "HttpServiceConfigSSLCertInfo " verwendet wird.
Andere
Ein in WinError.h definierter Systemfehlercode .

Bemerkungen

Die Konfigurationsparameter, die Sie mit HttpUpdateServiceConfiguration aktualisieren, werden auf alle HTTP-Server-API-Anwendungen auf dem Computer angewendet und bleiben erhalten, wenn die HTTP-Server-API heruntergefahren wird oder wenn der Computer neu gestartet wird.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 10, Version 1703 [nur Desktop-Apps]
Mindestanforderungen für unterstützte Server Nicht unterstützt
Zielplattform Fenster
Header http.h
Library Httpapi.lib
DLL Httpapi.dll

Siehe auch

HTTP Server API Version 1.0-Funktionen

HTTP_SERVICE_CONFIG_ID

HTTP_SERVICE_CONFIG_SSL_CCS_SET

HTTP_SERVICE_CONFIG_SSL_SET

HTTP_SERVICE_CONFIG_SSL_SNI_SET

HttpDeleteServiceConfiguration

HttpQueryServiceConfiguration

HttpSetServiceConfiguration