SaslSetContextOption 函数 (sspi.h)

SaslSetContextOption 函数为指定的 SASL 上下文设置指定属性的值。

语法

SECURITY_STATUS SEC_ENTRY SaslSetContextOption(
  [in] PCtxtHandle ContextHandle,
  [in] ULONG       Option,
  [in] PVOID       Value,
  [in] ULONG       Size
);

参数

[in] ContextHandle

SASL 上下文的句柄。

[in] Option

要为 SASL 上下文设置的属性。 下表列出了可能的值。

含义
SASL_OPTION_AUTHZ_PROCESSING
缓冲区的数据类型: ULONG

SASL 应用程序提供的 Authz 值的 SASL 处理状态。 处理的有效状态是Sasl_AuthZIDForbidden和Sasl_AuthZIDProcessed。 默认值为 Sasl_AuthZIDProcessed。

SASL_OPTION_AUTHZ_STRING
缓冲区的数据类型:二进制字符数组

从 SASL 客户端传递到服务器的字符串。 如果AuthZ_Processing状态为Sasl_AuthZIDForbidden,则返回SEC_E_UNSUPPORTED_FUNCTION返回值。

SASL_OPTION_RECV_SIZE
缓冲区的数据类型: ULONG

本地计算机上接收缓冲区的最大大小。 默认值为 0x0FFFF 字节。

SASL_OPTION_SEND_SIZE
缓冲区的数据类型: ULONG

可以传输的最大消息数据大小。 此值是可以传输到远程 SASL 进程的最大缓冲区大小减去块大小、预告片大小和最大签名大小。 默认值为 0x0FFFF 字节。

[in] Value

指向缓冲区的指针,该缓冲区包含要设置为所请求属性的值。 有关 Option 参数每个值的缓冲区的数据类型,请参阅 Option 参数。

[in] Size

Value 参数指定的缓冲区的大小(以字节为单位)。

返回值

如果调用成功完成,此函数将返回SEC_E_OK。 下表显示了一些可能的错误返回值。

返回代码 说明
SEC_E_BUFFER_TOO_SMALL
Value 参数指定的缓冲区不够大,无法包含 Option 参数指定的属性的数据值。
SEC_E_INVALID_HANDLE
在 SASL 列表中找不到 由 ContextHandle 参数指定的 SASL 上下文句柄。
SEC_E_UNSUPPORTED_FUNCTION
Option 参数中指定的选项无效。

要求

要求
最低受支持的客户端 无受支持的版本
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 sspi.h (包括 Security.h)
Library Secur32.lib
DLL Secur32.dll