DsAddSidHistoryA 函数 (ntdsapi.h)

DsAddSidHistory 函数从一个域中检索安全主体的主帐户安全标识符 (SID),并将其添加到另一个林中另一个域中安全主体的 sIDHistory 属性。 当源域处于 Windows 2000 本机模式时,此函数还会检索源主体的 sIDHistory 值,并将其添加到目标主体 sIDHistory

DsAddSidHistory 函数通过将现有安全主体的主帐户 SID 添加到不同林中某个域中主体的 sIDHistory,从而有效地授予后者对前者可访问的所有资源的访问权限。 有关此函数的使用和安全影响的详细信息,请参阅 Using DsAddSidHistory

语法

NTDSAPI DWORD DsAddSidHistoryA(
  [in] HANDLE                   hDS,
  [in] DWORD                    Flags,
  [in] LPCSTR                   SrcDomain,
  [in] LPCSTR                   SrcPrincipal,
  [in] LPCSTR                   SrcDomainController,
  [in] RPC_AUTH_IDENTITY_HANDLE SrcDomainCreds,
  [in] LPCSTR                   DstDomain,
  [in] LPCSTR                   DstPrincipal
);

参数

[in] hDS

包含从 DSBindDSBindWithCred 函数获取的目录服务句柄。

[in] Flags

保留以供将来使用。 设置为 NULL

[in] SrcDomain

指向以 null 结尾的字符串的指针,该字符串指定要查询 SrcPrincipal的 SID 的域的名称。

如果源域在 Windows Server 操作系统上运行,SrcDomain 可以是域名系统(DNS)名称,例如 fabrikam.com 或平面 NetBIOS(例如 Fabrikam)名称。 应尽可能使用 DNS 名称。

[in] SrcPrincipal

指向以 null 结尾的字符串的指针,该字符串指定源域中安全主体、用户或组的名称。 此名称是一个相对于域的安全帐户管理器(SAM)名称,例如:evacorets。

[in] SrcDomainController

指向以 null 结尾的字符串的指针,该字符串指定源域中主域控制器(PDC)模拟器的名称,用于安全检索源主体 SID 和审核生成。

如果此参数 NULLDSBindWithCred 将选择主域控制器。

SrcDomainController 可以是 DNS 名称或平面 NetBIOS 名称。 应尽可能使用 DNS 名称。

[in] SrcDomainCreds

包含一个标识句柄,该句柄表示在源域中具有管理权限的用户的标识和凭据。 若要获取此句柄,请调用 DsMakePasswordCredentials。 此用户必须是管理员或域管理员组的成员。 如果此调用是从远程计算机到目标 DC 进行的,则远程计算机和目标 DC 都必须支持 128 位加密,以保护凭据。 如果 128 位加密不可用,并且 提供了 SrcDomainCreds,则必须在目标 DC 上调用。

如果此参数 NULL,则调用方凭据用于访问源域。 然后,调用方用户需要源域中的管理权限。

[in] DstDomain

指向以 null 结尾的字符串的指针,该字符串指定 DstPrincipal 所在的目标域的名称。 此名称可以是 DNS 名称,例如,fabrikam.com 或 NetBIOS 名称,例如 Fabrikam。 目标域必须运行 Windows 2000 本机模式。

[in] DstPrincipal

指向以 null 结尾的字符串的指针,该字符串指定目标域中安全主体、用户或组的名称。 此相对于域的 SAM 名称标识其 sIDHistory 属性更新的主体 SrcPrincipal

返回值

返回 Win32 错误代码,包括以下内容。

言论

注意

ntdsapi.h 标头将 DsAddSidHistory 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非中性编码别名与非非编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows Vista
支持的最低服务器 Windows Server 2008
目标平台 窗户
标头 ntdsapi.h
Ntdsapi.lib
DLL Ntdsapi.dll

另请参阅

DSBind

DSBindWithCred

域控制器和复制管理功能

DsMakePasswordCredentials

使用 DsAddSidHistory

ldap_bind_s

ldap_open