使用 IDirectorySearch 进行引荐跟踪

引荐是一种机制,当目录服务器不包含查询所请求对象的足够数据时,目录服务器就会将客户端定向到另一个服务器。

在一级或子树搜索中,仅返回已知的、紧邻下级域、架构或配置容器的引荐;即作为直接后代的子域。 有关详细信息,请参阅搜索范围

在目录中,并非所有数据都在一台服务器上,而是分布在网络上的多个不同服务器上。 如果服务器共享其他服务器可提供的数据,则在请求的查询无法在源服务器上解析时,它们就可以向客户提供引荐。 例如,当客户端要求服务器 A (A) 查询用户对象 (U) 时,如果 U 不在 A 上,但被确定在 B 上,则 A 可以建议客户端在服务器 B (B) 上继续搜索。客户端可以选择不寻求引荐。 引荐使客户不必事先了解每个服务器的能力,但客户必须指定服务器应执行的引荐类型。

要启用或禁用引荐跟踪,请使用 ADSTYPE_INTEGER 值设置 ADS_SEARCHPREF_CHASE_REFERRALS 搜索选项,该值包含传递给 IDirectorySearch::SetSearchPreference 方法的 ADS_SEARCHPREF_INFO 数组中的 ADS_CHASE_REFERRALS_ENUM 枚举值之一。

下面的代码示例显示了如何启用跟踪引荐。

ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_CHASE_REFERRALS;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = ADS_CHASE_REFERRALS_ALWAYS;

有关 Active Directory 中的引荐的详细信息,请参阅引荐