您可以按照优先顺序配置提供程序,以启用验证级联,在此级联中,将按顺序查询每个提供程序,直到用户登录或无法进行验证为止。如果其中一个提供程序的源遭到破坏,则您需要设置提供程序顺序,以用于故障转移。例如,如果您有三个 LDAP 提供程序,而且默认提供程序处于活动状态,则验证框架会查询第一个提供程序,如果未找到用户,则会查询每个提供程序,直到找到用户并验证成功或失败为止。如果在任何提供程序中都未找到用户,则表示验证失败。


设置提供程序顺序

使用以下步骤设置提供程序顺序。

  1. 在“管理员面板”的 Building Block 区域,选择验证。
  2. 在验证页面上,选择提供程序顺序。
  3. 使用拖放功能,按照降序从第一个到最后一个,按住并拖动提供程序;或者使用键盘访问重新排序工具来调整顺序。
  4. (可选)将出错时是否继续设为是。默认设置为否。该选项表示是否在前一个提供程序因出错而无法运行时应处理后续提供程序。该选项是提供程序链的全局设置。

    出错时是否继续仅在列表中有多个“活动”提供程序时才适用。

  5. 您可以在两种验证模式类型中设置验证提供程序:重新定向和 USER_PASS。

    • 重新定向类型提供程序(如 CAS)可将验证传递给远程验证源。提供程序顺序未列出此类提供程序,因为其被视为验证的权威源并处理自己的验证故障。
    • USER_PASS 类型提供程序(如 Learn 默认和 LDAP)可查询会返回四个状态中其中一个状态的验证源。这样可支持提供程序链。
      • 登录成功。
      • 未找到用户(框架会尝试查询下一个提供程序)。
      • 用户已找到,但密码无效(框架会中止登录)。
      • 出现问题(框架仅会在设置了出错时是否继续时继续)。

什么是“出错时是否继续”?

将验证提供程序链接在一起时,可以设置是否在用于验证用户的前一个提供程序发生故障时应强制下一个验证提供程序尝试验证。了解可能的错误条件和导致的结果对解决登录问题非常有用。

在验证体系结构中,不可能提供全面的潜在故障原因列表,但可以将其分为三组 - 1) 服务可用性:因验证提供程序指定的服务不可用而导致的故障;2) 验证服务:在验证提供程序指定的服务中未找到的用户或错误的用户密码;3) 缺少 Blackboard Learn 帐户。

会调用下一个活动验证提供程序的“出错时是否继续”示例:

  • 服务可用性及用户未在指定的提供程序名称目录中找到。
  • 连接到验证提供程序时出错。例如:Learn 可能无法联系配置的 LDAP 服务器。
  • 未在验证提供程序名称目录中找到用户名。例如:未在配置的 LDAP 目录中找到用户。

不会调用下一个活动验证提供程序的“出错时是否继续”验证故障示例:

  • 发现了用户的验证提供程序,但配置的密码无效。
  • 成功连接到验证提供程序且通过了用户验证,但未在 Blackboard 中找到用户名。例如:通过 LDAP 成功验证了用户,但该用户没有 Blackboard Learn 用户帐户。
  • 成功连接到验证提供程序且已找到用户,但向验证提供程序提供的密码错误,从而导致用户验证未通过。该用户可能有或没有 Blackboard Learn 用户帐户。例如:用户输入了 LDAP 帐户的正确用户名,但密码无效,即 LDAP 找到了该用户,但无法验证。