3

在同一个 Tomcat 上下文配置中是否可以有多个身份验证器阀门?我知道您可以通过 拥有多个领域CombinedRealm,但是不同的身份验证方法呢?

我必须更新一个 Web 应用程序,以便它可以使用新的身份验证源,同时仍然使用旧的身份验证源来回退。

这是我目前在应用程序的 context.xml 中的内容:

<Context path="/myApp">
   <Valve className="com.company.NewAuthenticator"/>
   <Valve className="com.company.LegacyAuthenticator"/>

   <!-- Dummy realm to prevent pop-up window -->
   <Realm className="com.company.DummyRealm"/>
</Context>

似乎NewAuthenticator拒绝了用户的请求,LegacyAuthenticator从未调用过。我想这是预期的行为,但有没有另一种方法可以做到这一点?

细节:

  • 雄猫 6.0
  • 必须使用 Authtenticators,因为两个自定义系统都在 HTTP 请求中设置了确定身份验证成功/失败的值,并且我需要创建自定义 Tomcat 安全主体来存储角色。
  • 两种身份验证源都是自定义的和非标准的。我必须编写自己的身份验证器。
4

1 回答 1

1

不,没有CombinedAthenticator。您必须推出自己的实现。

于 2014-09-16T17:56:15.693 回答