Compartilhar via


Função HttpUpdateServiceConfiguration (http.h)

Atualizações atomicamente um parâmetro de configuração de serviço que especifica um certificado TLS (Transport Layer Security) em um registro de configuração dentro do repositório de configuração da API do Servidor HTTP.

Sintaxe

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

Parâmetros

[in] Handle

Reservado e deve ser NULL.

[in] ConfigId

O tipo de registro de configuração a ser atualizado. Esse parâmetro pode ser um dos seguintes valores da enumeração HTTP_SERVICE_CONFIG_ID .

Valor de ConfigId Significado
HttpServiceConfigSSLCertInfo
Atualizações um registro de certificado SSL especificado.
HttpServiceConfigSslSniCertInfo
Atualizações um registro de certificado SNI (Indicação de Nome de Servidor) SSL especificado.
HttpServiceConfigSslCcsCertInfo
Atualizações o registro de certificado SSL que especifica que Http.sys deve consultar o repositório CCS (Repositório de Certificados Centralizado) para localizar certificados se a porta receber um handshake TLS. A porta é especificada pelo membro KeyDesc da estrutura HTTP_SERVICE_CONFIG_SSL_CCS_SET que você passa para o parâmetro pConfigInfo .

[in] ConfigInfo

Um ponteiro para um buffer que contém os dados apropriados para especificar o tipo de registro a ser atualizado. A tabela a seguir mostra o tipo de dados que o buffer contém para os diferentes valores possíveis do parâmetro ConfigId .

Valor de ConfigId Tipo de dados no buffer pConfigInfo
HttpServiceConfigSSLCertInfo

HTTP_SERVICE_CONFIG_SSL_SET estrutura.

HttpServiceConfigSslSniCertInfo

HTTP_SERVICE_CONFIG_SSL_SNI_SET estrutura. O nome do host será "*" quando o repositório de certificados central SSL for consultado e as associações curinga forem usadas e um nome de host para SNI regular.

HttpServiceConfigSslCcsCertInfo

HTTP_SERVICE_CONFIG_SSL_CCS_SET estrutura. Essa estrutura é usada para adicionar o repositório CCS na porta especificada, bem como para excluir, recuperar ou atualizar um registro CCS SSL existente.

[in] ConfigInfoLength

O tamanho, em bytes, do buffer ConfigInfo .

[in] Overlapped

Reservado e deve ser NULL.

Retornar valor

Se a função for bem-sucedida, o valor retornado será ERROR_SUCCESS.

Se a função falhar, o valor retornado será um dos códigos de erro a seguir.

Valor Significado
ERROR_FILE_NOT_FOUND
O registro especificado não existe.
ERROR_INSUFFICIENT_BUFFER
O tamanho do buffer especificado no parâmetro ConfigInfoLength é insuficiente.
ERROR_INVALID_HANDLE
O parâmetro ServiceHandle é inválido.
ERROR_INVALID_PARAMETER
Um ou mais dos parâmetros fornecidos estão em uma forma inutilizável.
ERROR_NO_SUCH_LOGON_SESSION
O Certificado SSL usado é inválido. Isso só poderá ocorrer se o parâmetro HttpServiceConfigSSLCertInfo for usado.
Outros
Um código de erro do sistema definido em WinError.h.

Comentários

Os parâmetros de configuração que você atualiza com HttpUpdateServiceConfiguration são aplicados a todos os aplicativos de API do servidor HTTP no computador e persistem quando a API do Servidor HTTP é desligada ou quando o computador é reiniciado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1703 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Nenhum compatível
Plataforma de Destino Windows
Cabeçalho http.h
Biblioteca Httpapi.lib
DLL Httpapi.dll

Confira também

Funções da API do Servidor HTTP versão 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