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 成员的字节计数。 如果 pbSecurityInfoNULL,则不需要此成员。 但是,如果 pbSecurityInfo 不是 NULL,则此成员必须具有值。

pbSecurityInfo

指向缓冲区的指针,该缓冲区包含用于创建或打开对等图的信息。 此成员是可选的,可以为 NULL

复制 pbSecurityInfo 指向的安全数据 Blob,然后传递给 AcquireCredentialsHandle 的 SSPI 函数调用。

pvContext

指向安全上下文的指针。 然后,此安全上下文作为第一个参数传递给 PFNPEER_VALIDATE_RECORDPFNPEER_FREE_SECURITY_DATAPFNPEER_SECURE_RECORD。 此成员是可选的,可以为 NULL

pfnValidateRecord

指向在记录需要验证时调用的回调函数的指针。 此成员是可选的,可以为 NULL。 如果 pfnSecureRecordNULL,则此成员也必须为 NULL

pfnSecureRecord

指向在必须保护记录时调用的回调函数的指针。 此成员是可选的,可以为 NULL。 如果 pfnValidateRecordNULL,则此成员也必须为 NULL

pfnFreeSecurityData

指向回调函数的指针,该函数用于释放 由 pfnSecureRecord 指向的回调分配的任何数据。 此成员是可选的,可以为 NULL

pfnAuthFailed

注解

如果已开发自己的 SSP,则应用程序不得调用对等图形 API 来访问图形数据库中的数据;这样做可能会导致死锁情况。 相反,应用程序应查看信息的缓存副本。

要求

要求
最低受支持的客户端 具有 SP2 的 Windows XP [仅限桌面应用],具有 SP1 的 Windows XP 与高级网络包 forWindows XP
最低受支持的服务器 无受支持的版本
标头 p2p.h

另请参阅

AcquireCredentialsHandle

PFNPEER_FREE_SECURITY_DATA

PFNPEER_SECURE_RECORD

PFNPEER_VALIDATE_RECORD

PeerGraphCreate

PeerGraphOpen