HTTP_SERVER_AUTHENTICATION_INFO 结构 (http.h)

HTTP_SERVER_AUTHENTICATION_INFO结构用于在 URL 组或服务器会话上启用服务器端身份验证。 此结构还用于查询为 URL 组或服务器会话启用的现有身份验证方案。

在 URL 组或服务器会话上设置或查询 HttpServerAuthenticationProperty 时,必须使用此结构。

语法

typedef struct _HTTP_SERVER_AUTHENTICATION_INFO {
  HTTP_PROPERTY_FLAGS                      Flags;
  ULONG                                    AuthSchemes;
  BOOLEAN                                  ReceiveMutualAuth;
  BOOLEAN                                  ReceiveContextHandle;
  BOOLEAN                                  DisableNTLMCredentialCaching;
  UCHAR                                    ExFlags;
  HTTP_SERVER_AUTHENTICATION_DIGEST_PARAMS DigestParams;
  HTTP_SERVER_AUTHENTICATION_BASIC_PARAMS  BasicParams;
} HTTP_SERVER_AUTHENTICATION_INFO, *PHTTP_SERVER_AUTHENTICATION_INFO;

成员

Flags

HTTP_PROPERTY_FLAGS结构,用于指定是否存在 属性。

AuthSchemes

支持的身份验证方案。 这可以是以下一项或多项:

身份验证方案 含义
HTTP_AUTH_ENABLE_BASIC
已启用基本身份验证。
HTTP_AUTH_ENABLE_DIGEST
已启用摘要式身份验证。
HTTP_AUTH_ENABLE_NTLM
已启用 NTLM 身份验证。
HTTP_AUTH_ENABLE_NEGOTIATE
已启用协商身份验证。
HTTP_AUTH_ENABLE_KERBEROS
已启用 Kerberos 身份验证。
HTTP_AUTH_ENABLE_ALL
启用所有类型的身份验证。

ReceiveMutualAuth

一个布尔值,指示如果 为 True,则客户端应用程序接收服务器凭据以使用经过身份验证的请求进行相互身份验证。 如果 为 False,则客户端应用程序不会收到凭据。

请注意,此选项是为关联请求队列处理的所有请求设置的。

ReceiveContextHandle

一个布尔值,指示如果 为 True,则对最终完成的客户端上下文进行序列化,并随请求一起传递给应用程序。 如果 为 False,则应用程序不会接收上下文。 此句柄可用于查询上下文属性。

DisableNTLMCredentialCaching

一个布尔值,指示如果 为 True,则不缓存 NTLM 凭据。 如果 为 False,则保留默认行为。

默认情况下,如果请求不是来自代理,HTTP 会缓存“保持连接” (KA 的客户端上下文,) NTLM 方案的连接。

ExFlags

可选的身份验证标志。 可以是以下一个或多个可能值:

含义
HTTP_AUTH_EX_FLAG_ENABLE_KERBEROS_CREDENTIAL_CACHING
如果设置,则会缓存 Kerberos 身份验证凭据。 AuthSchemes 必须启用 Kerberos 或协商身份验证。
HTTP_AUTH_EX_FLAG_CAPTURE_CREDENTIAL
如果设置,HTTP 服务器 API 会捕获调用方凭据,并将其用于 Kerberos 或协商身份验证。 AuthSchemes 必须启用 Kerberos 或协商身份验证。

DigestParams

为摘要质询提供域和领域 HTTP_SERVER_AUTHENTICATION_DIGEST_PARAMS 结构。

BasicParams

为基本挑战提供领域 HTTP_SERVER_AUTHENTICATION_BASIC_PARAMS 结构。

注解

如果在关联的 URL 组上配置了身份验证,则 HTTP 请求中会包含 HTTP_SERVER_AUTHENTICATION_INFO 结构。 无论身份验证状态如何,从客户端接收的原始 HTTP 身份验证标头始终包含在 HTTP 请求中。

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
标头 http.h

另请参阅

HTTP 服务器 API 版本 2.0 结构

HTTP_AUTH_ENABLE

HTTP_SERVER_PROPERTY

HttpQueryUrlGroupProperty

HttpSetUrlGroupProperty