halo-sigs / plugin-oauth2

Halo 2.0 的 OAuth2 第三方登录插件。
https://halo.run/store/apps/app-ESVDK
GNU General Public License v3.0
20 stars 19 forks source link

扩展资源文件的 className 不正确 #25

Closed guqing closed 1 year ago

guqing commented 1 year ago

className: run.halo.app.security.authentication.oauth2.Oauth2Authenticator 正确的值应该是 run.halo.oauth.Oauth2Authenticator

起初是在 Halo 中实现转移到插件时忘记修改导致

/kind improvement /assign

ruibaby commented 1 year ago

这会造成什么影响吗?

guqing commented 1 year ago

这会造成什么影响吗?

目前选取扩展时没有加校验,后续如果支持可以让用户选择让某些扩展生效功能时,如果这个 className 不正确就会不管用

比如有扩展点 run.halo.app.security.AdditionalWebFilter 它的实现类也就是扩展有 A,B,C 三个类并对应三个扩展定义 根据扩展点查找实现时会先去获取扩展定义中 extensionPointName 为此扩展点名称的描述文件,然后根据 configMap 中用户选择启动的扩展来从找到的扩展中 className 与之相同的(根据 className 挑选扩展点实现类),此时如果 className 是个错误的值就会找不到对应的实现类