LSA_GET_AUTH_DATA_FOR_USER回调函数 (ntsecpkg.h)

GetAuthDataForUser 函数从安全帐户管理器 (SAM) 数据库中检索用户的身份验证信息,并将其放入适合 ConvertAuthDataTotoken 函数的格式。

语法

LSA_GET_AUTH_DATA_FOR_USER LsaGetAuthDataForUser;

NTSTATUS LsaGetAuthDataForUser(
  [in]  PSECURITY_STRING Name,
  [in]  SECPKG_NAME_TYPE NameType,
  [in]  PSECURITY_STRING Prefix,
  [out] PUCHAR *UserAuthData,
  [out] PULONG UserAuthDataSize,
  [out] PUNICODE_STRING UserFlatName
)
{...}

参数

[in] Name

指向指定 SAM 帐户名称 的UNICODE_STRING 结构的指针。

[in] NameType

一个SECPKG_NAME_TYPE枚举值,该值在“名称”中指定帐户名称的类型。 此参数的取值可为下列值之一:

含义
SecNameSamCompatible
名称 与 SAM 兼容。 采用与 SAM 兼容格式的名称的示例是“ExampleDomain\Username”。
SecNameAlternateId
名称 位于 SAM 帐户的 AltSecId 属性中。 使用此值时,必须为 Prefix 参数指定值。
SecNameFlat
名称 是 upn) 样式帐户名称 (平面 用户主体 名称。
SecNameDN
Name 是对象的可分辨名称。 有关详细信息,请参阅“备注”。

[in] Prefix

指向 UNICODE_STRING 结构的指针,该结构包含要用于使用 SecNameAlternateIdNameType 指定的名称的前缀。

[out] UserAuthData

用于接收检索到的数据地址的指针。

[out] UserAuthDataSize

指向 ULONG 的指针,该 ULONG 接收检索到的数据的大小。

[out] UserFlatName

指向接收 UPN 的UNICODE_STRING 结构的指针(如果适用)。

返回值

如果函数成功,则返回值STATUS_SUCCESS。

如果函数失败,则返回值是一个 NTSTATUS 代码,用于指示它失败的原因。

注解

GetAuthDataForUser 函数将 OpenSamUserGetUserAuthDataCloseSamUser 函数合并到一个调用中。

SpInitialize 函数接收的 LSA_SECPKG_FUNCTION_TABLE 结构中提供了指向这些函数的指针。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 ntsecpkg.h

另请参阅

CloseSamUser

GetUserAuthData

LSA_SECPKG_FUNCTION_TABLE

OpenSamUser

SpInitialize