httpUpdateServiceConfiguration 函数 (http.h)

以原子方式汇报服务配置参数,该参数在 HTTP 服务器 API 配置存储中的配置记录中指定传输层安全性 (TLS) 证书。

语法

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

参数

[in] Handle

保留,必须为 NULL

[in] ConfigId

要更新的配置记录的类型。 此参数可以是 HTTP_SERVICE_CONFIG_ID 枚举中的以下值之一。

ConfigId 含义
HttpServiceConfigSSLCertInfo
汇报指定的 SSL 证书记录。
HttpServiceConfigSslSniCertInfo
汇报指定的 SSL 服务器名称指示 (SNI) 证书记录。
HttpServiceConfigSslCcsCertInfo
汇报 SSL 证书记录,指定在端口收到 TLS 握手时,Http.sys 应查阅集中式证书存储 (CCS) 存储来查找证书。 端口由传递给 pConfigInfo 参数的 HTTP_SERVICE_CONFIG_SSL_CCS_SET 结构的 KeyDesc 成员指定。

[in] ConfigInfo

指向缓冲区的指针,该缓冲区包含用于指定要更新的记录类型的相应数据。 下表显示了缓冲区包含的 ConfigId 参数的不同可能值的数据的类型。

ConfigId pConfigInfo 缓冲区中的数据的类型
HttpServiceConfigSSLCertInfo

HTTP_SERVICE_CONFIG_SSL_SET 结构。

HttpServiceConfigSslSniCertInfo

HTTP_SERVICE_CONFIG_SSL_SNI_SET 结构。 当查询 SSL 中央证书存储并使用通配符绑定时,主机名将为“*”,并且主机名为常规 SNI。

HttpServiceConfigSslCcsCertInfo

HTTP_SERVICE_CONFIG_SSL_CCS_SET 结构。 此结构用于在指定端口上添加 CCS 存储,以及删除、检索或更新现有的 SSL CCS 记录。

[in] ConfigInfoLength

ConfigInfo 缓冲区的大小(以字节为单位)。

[in] Overlapped

保留,必须为 NULL

返回值

如果函数成功,则返回值 ERROR_SUCCESS

如果函数失败,则返回值为以下错误代码之一。

含义
ERROR_FILE_NOT_FOUND
指定的记录不存在。
ERROR_INSUFFICIENT_BUFFER
ConfigInfoLength 参数中指定的缓冲区大小不足。
ERROR_INVALID_HANDLE
ServiceHandle 参数无效。
ERROR_INVALID_PARAMETER
提供的一个或多个参数以不可用的形式提供。
ERROR_NO_SUCH_LOGON_SESSION
使用的 SSL 证书无效。 仅当使用 HttpServiceConfigSSLCertInfo 参数时,才会发生这种情况。
其他
WinError.h 中定义的 系统错误代码

注解

使用 HttpUpdateServiceConfiguration 更新的配置参数将应用于计算机上的所有 HTTP 服务器 API 应用程序,并在 HTTP 服务器 API 关闭或计算机重启时保留。

要求

要求
最低受支持的客户端 Windows 10版本 1703 [仅限桌面应用]
最低受支持的服务器 无受支持的版本
目标平台 Windows
标头 http.h
Library Httpapi.lib
DLL Httpapi.dll

另请参阅

HTTP 服务器 API 版本 1.0 函数

HTTP_SERVICE_CONFIG_ID

HTTP_SERVICE_CONFIG_SSL_CCS_SET

HTTP_SERVICE_CONFIG_SSL_SET

HTTP_SERVICE_CONFIG_SSL_SNI_SET

HttpDeleteServiceConfiguration

HttpQueryServiceConfiguration

HttpSetServiceConfiguration