具有多种身份验证机制的单个凭据组的默认行为是什么?

What is the default behavior for a single credential group with multiple authentication mechanisms?

我正在尝试更好地了解 GSA 如何对用户进行身份验证。

我们在同一凭据组下配置了多个 cookie 身份验证机制的 GSA 搜索。从日志来看,用户似乎必须通过所有这些机制的身份验证——而不仅仅是一种。这是预期的行为吗?

我希望用户在 GSA 执行搜索之前只需要一种机制来验证他们的身份验证。

在失败日志中,GSA 经历了所有四种机制,只有一种验证用户。没有返回结果,也没有 "Authentication successful!" 行。 在成功日志中,拒绝用户的三个机制已被删除。结果返回。

我觉得这很奇怪。我仍在寻找,但我还没有找到任何关于此的文档。还有其他人 运行 参与其中吗?

失败记录:

150249 16:24:19.593 [身份验证] 此请求的新会话:744e33ce2597dc4391a173c3d99cd6d8
150249 16:24:19.600 [身份验证] 运行ning AuthN 机制 SAML
150249 16:24:19.602 [身份验证] 重定向用户以由安全管理器进行身份验证:
150249 16:24:19.746 [安全管理器] 来自用户代理的传入 cookie:
150249 16:24:19.909 [安全管理器] 尝试使用预先存在的凭据进行身份验证。
150249 16:24:20.076 [安全管理器] 凭据被 cred_mech1 拒绝
150249 16:24:20.170 [安全管理器] 凭据被 cred_mech2 拒绝
150249 16:24:20.180 [安全管理器] 凭据被 cred_mech3 拒绝
150249 16:24:20.207 [安全管理器] 凭据已由 cred_mech4 验证
150249 16:24:20.213 [安全管理器] GroupsUpdateModule Auth:查找用户组:
150249 16:24:20.226 [安全管理器] GroupsUpdateModule 未找到组:范围:1
名称:“<过滤>”
name_space: "Default"
case_sensitive: 0

150249 16:24:20.229 [安全管理器] 凭据已由 Default_groups_1a852798543f79b0afe8af1789f9bb0c 验证
150249 16:24:20.234 [安全管理器] 无法使用预先存在的凭据进行身份验证。开始凭证收集。
150249 16:24:20.237 [安全管理器] 不尝试通用登录表单,因为没有剩余的凭据组可以使用它。
150249 16:24:20.244 [安全管理器] 不尝试通用登录表单,因为没有剩余的凭据组可以使用它。
150249 16:24:20.251 [安全管理器] 不尝试通用登录表单,因为没有剩余的凭据组可以使用它。
150249 16:24:20.259 [安全管理器] 向用户代理传出 cookie:(none)

成功记录:

150249 15:42:29.269 [身份验证] 此请求的新会话:75fa3613c48c3b505aa8cc681cd142aa
150249 15:42:29.277 [身份验证] 运行ning AuthN 机制 SAML
150249 15:42:29.280 [身份验证] 重定向用户以由安全管理器进行身份验证:
150249 15:42:29.496 [安全管理器] 来自用户代理的传入 cookie:
150249 15:42:29.669 [安全管理器] 尝试使用预先存在的凭据进行身份验证。
150249 15:42:29.917 [安全管理器] 凭据已由 cred_mech4 验证
150249 15:42:29.925 [安全管理器] GroupsUpdateModule Auth:查找用户组:
150249 15:42:29.940 [安全管理器] GroupsUpdateModule 未找到组:范围:1
名称:“<过滤>”
name_space: "Default"
case_sensitive: 0

150249 15:42:29.943 [安全管理器] 凭据已由 Default_groups_1a852798543f79b0afe8af1789f9bb0c 验证
150249 15:42:29.948 [安全管理器] 向用户代理传出 cookie:(none)
150249 15:42:30.229 [认证] 认证成功!搜索用户身份是:;会话:75fa3613c48c3b505aa8cc681cd142aa
150249 15:42:30.236 [身份验证] 已验证凭据:,命名空间:默认
150249 15:42:30.238 [Authentication] 认证过期时间为:20150218T154729.673-0600
150249 15:42:30.270 [身份验证] 将用户重定向到 relayState 值:

一个凭证组代表一个身份。如果您有多个基于 cookie 的身份验证机制,则它们需要转到单独的凭据组。

我的理解是 GSA 并不是真正打算使用一个 具有多种身份验证机制的凭据组,除非一个 这些 "authentication" 机制实际上只用于 组查找。这就是拥有多个凭证组的意义所在。 如果您可以拥有多个,后期绑定授权将如何工作 单个凭证组中的身份验证机制,用于 例子?会不会只使用成功的认证机制 进行授权检查?

如果你想提供多个授权路径,即使 对应的认证机制都指向同一个用户 幕后的存储库,您将需要提供多个 凭证组。如果你想有多重身份验证 指向不同用户存储库的机制,你肯定 想要使用多个凭据组。