你好,
我们一直在使用SSO插件,我们使用身份提供程序(Crowd)进行身份验证,因为crowd-plugin不支持SSO。 现在,我们决定将Sonar升级到新的LTS 6.7。但我们的插件使用的是HttpSession对象(在servlet过滤器中创建),由于Sonar现在是无状态的,因此似乎不再受支持。 我们没有使用OAuth2。
我一直在寻找,但我很困惑,我应该如何实现身份验证。 Crowd端的通信成功,我获得了用户详细信息和会话令牌。我的插件具有现有的自定义Authenticator,UserProvider和GroupsProvider。
但是声纳从未在声纳方面触发。我找不到如何让声纳触发我的身份验证器覆盖的doAuthenticate
方法。
我不能使用BaseIdentityProvider
因为用户不应该做任何动作,如果他有Crowd cookie,他应该自动连接,或者被重定向到我们的Crowd登录页面以便他可以连接;正如我对它的理解BaseIdentityProvider
只是添加了一个与外部身份提供者连接的选项。
有人知道如何从servlet过滤器代码触发身份验证吗?或者我是否必须重新开始并采用完全不同的方式?