secPkgInfoA 结构 (sspi.h)
SecPkgInfo 结构提供有关安全包的一般信息,例如其名称和功能。
语法
typedef struct _SecPkgInfoA {
unsigned long fCapabilities;
unsigned short wVersion;
unsigned short wRPCID;
unsigned long cbMaxToken;
SEC_CHAR *Name;
SEC_CHAR *Comment;
} SecPkgInfoA, *PSecPkgInfoA;
成员
fCapabilities
描述安全包功能的位标志集。 此成员可以是以下标志的组合。
值 | 含义 |
---|---|
|
安全包支持 MakeSignature 和 VerifySignature 函数。 |
|
安全包支持 EncryptMessage (General) 和 DecryptMessage (General) 函数。 |
|
包仅对消息的安全令牌部分感兴趣,将忽略任何其他缓冲区。 这是与性能相关的问题。 |
|
支持 数据报样式的身份验证。 有关详细信息,请参阅 SSPI 上下文语义。
重要Microsoft Kerberos 包不支持用户到用户模式下的数据报上下文。
|
|
支持面向连接的样式身份验证。 有关详细信息,请参阅 SSPI 上下文语义。 |
|
身份验证需要多个段。 |
|
未提供服务器身份验证支持。 |
|
支持扩展错误处理。 有关详细信息,请参阅 扩展错误信息。 |
|
支持服务器上下文中的 Windows 模拟。 |
|
了解 Windows 主体和目标名称。 |
|
支持流语义。 有关详细信息,请参阅 SSPI 上下文语义。 |
|
可由 Microsoft Negotiate 安全包使用。 |
|
支持 GSS 兼容性。 |
|
支持 LsaLogonUser。 |
|
令牌缓冲区采用 ASCII 字符格式。 |
|
支持将大型令牌分离到较小的缓冲区中,以便应用程序可以重复调用 InitializeSecurityContext (General) 和 AcceptSecurityContext (General) 使用较小的缓冲区来完成身份验证。 |
|
支持相互身份验证。 |
|
支持委派。 |
|
安全包支持在调用 EncryptMessage 函数时使用校验和而不是就地加密。 |
|
支持具有受限令牌的调用方。 |
|
安全包扩展 了 Microsoft Negotiate 安全包。 最多可以有一个此类型的包。 |
|
此包由 SECPKG_FLAG_NEGO_EXTENDER 类型的包协商。 |
|
此包接收来自应用容器应用的所有调用。 |
|
如果以下检查之一成功,此包将接收来自应用容器应用的调用。
|
|
调用方是应用容器。 |
|
调用方可以使用默认凭据。 |
|
调用方只能使用提供的凭据。 |
wVersion
指定包协议的版本。 必须为 1。
wRPCID
指定 DCE RPC 标识符(如果适用)。 如果包未实现 DCE 注册的安全系统之一,则使用保留值SECPKG_ID_NONE。
cbMaxToken
指定令牌的最大大小(以字节为单位)。
Name
指向包含安全包名称的以 null 结尾的字符串的指针。
Comment
指向以 null 结尾的字符串的指针。 这可以是包传递回的任何其他字符串。
注解
注意
sspi.h 标头将 SecPkgInfo 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
标头 | sspi.h (包括 Security.h) |