PEER_SECURITY_INTERFACE 结构 (p2p.h)
PEER_SECURITY_INTERFACE 结构指定了调用对等图形 API 的安全接口,这些接口用于验证、保护和释放记录。 此外,它允许应用程序指定 .DLL 的路径,该路径包含安全服务提供商 (SSP) 实现。
语法
typedef struct peer_security_interface_tag {
DWORD dwSize;
PWSTR pwzSspFilename;
PWSTR pwzPackageName;
ULONG cbSecurityInfo;
PBYTE pbSecurityInfo;
PVOID pvContext;
PFNPEER_VALIDATE_RECORD pfnValidateRecord;
PFNPEER_SECURE_RECORD pfnSecureRecord;
PFNPEER_FREE_SECURITY_DATA pfnFreeSecurityData;
PFNPEER_ON_PASSWORD_AUTH_FAILED pfnAuthFailed;
} PEER_SECURITY_INTERFACE, *PPEER_SECURITY_INTERFACE;
成员
dwSize
指定结构的大小。 将值设置为 sizeof (PEER_SECURITY_INTERFACE) 。 此成员是必需的,没有默认值。
pwzSspFilename
指定实现 SSP 接口的 .DLL 的完整路径和文件名。 有关 SSP 接口的详细信息,请参阅 SSPI 文档。
pwzPackageName
指定 SSP 中要使用的安全模块的 ID。
cbSecurityInfo
指定 pbSecurityInfo 成员的字节计数。 如果 pbSecurityInfo 为 NULL,则不需要此成员。 但是,如果 pbSecurityInfo 不是 NULL,则此成员必须具有值。
pbSecurityInfo
指向缓冲区的指针,该缓冲区包含用于创建或打开对等图的信息。 此成员是可选的,可以为 NULL。
复制 pbSecurityInfo 指向的安全数据 Blob,然后传递给 AcquireCredentialsHandle 的 SSPI 函数调用。
pvContext
指向安全上下文的指针。 然后,此安全上下文作为第一个参数传递给 PFNPEER_VALIDATE_RECORD、 PFNPEER_FREE_SECURITY_DATA和 PFNPEER_SECURE_RECORD。 此成员是可选的,可以为 NULL。
pfnValidateRecord
指向在记录需要验证时调用的回调函数的指针。 此成员是可选的,可以为 NULL。 如果 pfnSecureRecord 为 NULL,则此成员也必须为 NULL。
pfnSecureRecord
指向在必须保护记录时调用的回调函数的指针。 此成员是可选的,可以为 NULL。 如果 pfnValidateRecord 为 NULL,则此成员也必须为 NULL。
pfnFreeSecurityData
指向回调函数的指针,该函数用于释放 由 pfnSecureRecord 指向的回调分配的任何数据。 此成员是可选的,可以为 NULL。
pfnAuthFailed
注解
如果已开发自己的 SSP,则应用程序不得调用对等图形 API 来访问图形数据库中的数据;这样做可能会导致死锁情况。 相反,应用程序应查看信息的缓存副本。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 具有 SP2 的 Windows XP [仅限桌面应用],具有 SP1 的 Windows XP 与高级网络包 forWindows XP |
最低受支持的服务器 | 无受支持的版本 |
标头 | p2p.h |