引荐 (ADSI)

如果查询的服务器不包含该数据但又可以找到它,则会发生引荐。 目标服务器返回结果集,其中可能包括实际数据和指向另一个服务器以检索其他数据的引荐。 通过启用引荐跟踪,基础 ADSI 客户端代码将使用引荐数据尝试从引荐数据中描述的服务器检索目标对象。 请注意,禁用引用跟踪可能会导致结果集变小,而启用引荐跟踪可能会导致查询跨越多个服务器。 在可能的情况下,建议使用全局目录。

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

例如,当客户端指示服务器 A (A) 查询用户对象 (U) 时,如果 U 不在 A 上,但已知在 B 上,则 A 可以建议客户端在服务器 B (B) 上继续搜索。客户端可以选择不寻求引荐。 搜索引荐可让客户端无需对每台服务器的功能进行高级识别。 但是,客户端必须指定服务器应进行引荐的类型。

Active Directory 提供搜索引荐服务。 客户端可以选择以下任一类型的引荐跟踪:

  • 从不:即使服务器识别到另一台服务器存储所请求的数据,它也不应生成对客户端的引荐。

  • 外部:如果请求可以在不同目录树的另一台服务器上解决,则服务器应生成引荐。 例如,客户端在“Fabrikam.com”域中的“fab01”服务器上查询“OU=Sales,DC=Fabrikam,DC=COM”。 但是,该对象并不属于“fab01”,而是位于“Fabrikam.com”域的“arc01”服务器上。 因此,“fab01”会将客户端引荐到“arc01”。

  • 从属:如果请求可以在服务器上解析,而该服务器的名称与发起请求的服务器构成连续路径,则服务器应生成引荐。 搜索范围必须位于子树级别。

    例如,服务器 A 包含“DC=Sales,DC=Fabrikam,DC=Com”中的对象。 服务器 B 包含“DC=Seattle,DC=Sales,DC=Fabrikam,DC=Com”中的对象。 请注意,服务器 B 的名称与服务器 A 形成连续路径。当客户端联系服务器 A,请求对“DC=Sales,DC=Fabrikam,DC=Com”进行子树搜索,并指定引荐为从属类型时,则会发生以下事件:

    • 服务器 A 返回其范围内已知的所有对象。
    • 服务器 A 通知客户端,可以在服务器 B 中找到“DC=Seattle,DC=Sales,DC=Fabrikam,DC=COM”中的对象。

    客户端可以选择联系服务器 B。如果是,则会发生以下事件:

    • 服务器 B 响应所请求的对象。
    • 如果服务器 B 检测到连续命名路径上的其他服务器并且进程仍在继续。
  • 始终:如果可以根据外部类型或从属类型解析搜索,服务器就会生成引荐。

备注

在 Active Directory 中,全局目录包含给定企业中的所有对象。 搜索全局目录服务器比从一个服务器到另一个服务器的引荐效果更好。

 

在大多数情况下,引荐跟踪对调用方都是透明的。 如果引荐指向不同的域或林中的对象,则基础 LDAP API 将尝试使用当前凭据绑定到引荐的目标。 如果成功,引荐跟踪将是透明的。 如果未成功,将返回引荐和引荐错误代码。

有关将引荐跟踪选项用于特定搜索界面的详细信息,请参阅: