Compartilhar via


Função HttpUpdateServiceConfiguration (http.h)

Atualiza 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 Meaning
HttpServiceConfigsSLCertInfo
Atualiza um registro de certificado SSL especificado.
HttpServiceConfigSslSniCertInfo
Atualiza um registro de certificado SNI (Indicação de Nome do Servidor SSL) especificado.
HttpServiceConfigSslCcsCertInfo
Atualiza 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.

Valor de retorno

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

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

Value Meaning
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.
Outras
Um código de erro do sistema definido em WinError.h.

Observações

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.

Requirements

Requirement Value
Cliente mínimo suportado Windows 10, versão 1703 [somente aplicativos da área de trabalho]
Servidor mínimo compatível Nenhum compatível
da Plataforma de Destino Windows
Header http.h
Library Httpapi.lib
de DLL Httpapi.dll

Consulte 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