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
包含从 DSBind 或 DSBindWithCred 函数获取的目录服务句柄。
[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 和审核生成。
如果此参数 NULL,DSBindWithCred 将选择主域控制器。
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 |
另请参阅
使用 DsAddSidHistory
ldap_open