ElasticJob UI 基于 Casdoor 扩展 SSO 能力

WorldCreater
发布于 2023-1-31 14:40
浏览
0收藏

当我们在使用 ElasticJob UI 时,可能想要在管理控制台里添加 SSO 单点登录,本篇文章将使用 ElasticJob UI 的内置 Casdoor 来解决用户管理的难题。

合作背景

ElasticJob UI 是 ElasticJob 的可视化管控端,是一个面向开发、运维人员的应用,并非一个直接对用户提供服务的应用程序,正常情况下仅部署在内部环境。因此 ElasticJob UI 的研发人员更专注于对功能的研发。

作为开源项目,难免会被从事安全领域的人员作为研究对象。先前安全研究人员因为没有考虑 ElasticJob UI 的实际使用场景,向 Apache ShardingSphere 社区提交了许多安全报告,ShardingSphere 社区没有过多精力处理许多不切实际的安全漏洞报告,因此发起了考虑停止 ElasticJob UI 维护的讨论。

此前,ShardingSphere 的可视化管控端 ShardingSphere UI 也因同样的原因停止了维护。

Casdoor 社区的成员在注意到 ShardingSphere 社区关于停止 ElasticJob UI 维护的讨论后,认为因为不切实际的安全报告而停用 ElasticJob UI 是一件非常可惜的事情。如果 ElasticJob UI 接入 Casdoor,在认证安全、功能等方面都将得到提升。因此,Casdoor 社区与 Apache ShardingSphere 社区达成了本次合作。

ElasticJob UI 接入 Casdoor 使用指南

步骤一:部署 Casdoor

Casdoor 的源代码托管在 GitHub 上,启动模式有开发模式和生产模式,此处以开发模式为例,更多详细信息请参考:​​https://casdoor.org/docs/basic/server-installation。​

后端启动方式

go run main.go

前端启动方式

cd web
yarn install
yarn start

步骤二:配置 Casdoor 并得到所需的数据

ElasticJob UI 基于 Casdoor 扩展 SSO 能力-鸿蒙开发者社区

用红线指出的是后端配置需要用到的,其中 Redirect URLs 取决于你要 callback 的地址。

我们还需要根据所选 cert 到 cert 选项中找到对应的 cert,如本例为 cert-built-in,其中 certificate 也是我们所需要用到的。

ElasticJob UI 基于 Casdoor 扩展 SSO 能力-鸿蒙开发者社区

更多 casdoor 文档请参考:https://casdoor.org/docs/overview

步骤三:在 ElasticJob UI 中进行配置在 shardingsphere-elasticjob-ui(​​https://github.com/apache/shardingsphere-elasticjob-ui​​)中的 application.properties 进行配置。

ElasticJob UI 基于 Casdoor 扩展 SSO 能力-鸿蒙开发者社区

将我们在 Casdoor 获取的数据粘贴到相应位置即可如:

ElasticJob UI 基于 Casdoor 扩展 SSO 能力-鸿蒙开发者社区

这样我们就可以在 ElasticJob UI 中使用 Casdoor 了!

写在最后

ElasticJob 的管理控制台接入 Casdoor 后,将会支持 OAuth 2.0、OIDC 和 SAML 的 UI 优先集中式身份验证/单点登录,用户不必再为此独立开发,方便了用户的使用。


感谢 Casdoor 和 Apache ShardingSphere 社区的开发者们,从 Casdoor 社区的开发者 jakiuncle 提出 issue,提交 PR,到 ShardingSphere 社区的开发者 TeslaCN 与 tristaZero 积极 review PR,这个跨社区的合作友好而有序地向前推进,响应 open source makes world better。


本文转载自公众号:ShardingSphere官微

分类
已于2023-1-31 14:40:43修改
收藏
回复
举报
回复
    相关推荐