1

假设我想为同一个登录请求使用两个身份验证提供程序。

grails.plugins.springsecurity.providerNames = [
    'customAuthenticationProvider',
    'ldapAuthProvider',
    'anonymousAuthenticationProvider',
    'rememberMeAuthenticationProvider']

场景是我首先使用我的 customAuthenticationProvider 进行身份验证,它授予/拒绝访问权限。完成此操作后,它会继续检查是否能够向 LDAP 服务器验证用户身份,该服务器反过来授予/拒绝。

这是 Spring Security 的运行方式,例如上面的 providerNames 列表?或者,如果第一个提供者访问/拒绝并采取相应的行为,它是否会授予访问权限。

是否需要通过所有身份验证尝试才能获得访问权限?

4

1 回答 1

5

将按列出的顺序尝试提供者,直到其中一个验证成功,或者它们都失败。当其中一个进行身份验证时,该过程将停止,其余的提供者将不会被尝试。

于 2012-10-18T02:24:06.957 回答