宝塔Doker部署CASdoor实现Alist&WordPress单点登录
本文最后更新于 333 天前,其中的信息可能已经有所发展或是发生改变。

前言

一直对单点登录相关的挺感兴趣,想着搭建一个玩玩。看见学校用的是CAS,搜来发现部署很麻烦(我菜)就被吓跑了,昨天在看Alist后台的时候发现了Casdoor这个项目,感觉很好搭建也很满足我的好奇心,就搭建实操了一下,并且接入了Alist和WordPress。

官方介绍

Casdoor是一个基于OAuth 2.0、OIDC、SAML 和 CAS 的,UI-first的身份和访问管理(IAM)/单点登录(SSO)平台。

Doker部署CASdoor

官方可以直接运行编译好的二进制文件,但是为了方便我还是用了Doker,我的环境是Linux+宝塔面板,在面板的Doker管理里面先下载镜像casbin/casdoor:latest

下载好了之后,先写配置文件,配置文件模板在https://github.com/casdoor/casdoor/blob/master/conf/app.conf

这是配置文件的解释https://casdoor.org/zh/docs/basic/server-installation#%E9%80%9A%E8%BF%87-ini-%E6%96%87%E4%BB%B6%E9%85%8D%E7%BD%AE

注意,当你的MySQL主机运行在你的宿主机上时,配置数据库服务器时就不能写localhost,要写你的宿主机地址,比如我的就是172.18.0.1,获取宿主机地址可看此文https://blog.lucien.ink/archives/505/的《1.宿主机的 IP》章节

我新建了/data/doker_data/casdoor/app.conf作为配置文件,按照上面模板配置好之后保存即可。

之后配置Doker,按我这样写就行,我是用Nginx反代1031端口到域名的,所以从容器里的8000端口桥接到1031端口

添加好之后做一下反代,新建一个网站,开启ssl(可有可无),反代配置如图

这时候你访问刚刚添加的域名,不出意外的话,就能看到Casdoor的登录界面了。

这是官方的文档,可以了解一些概念https://casdoor.org/zh/docs/basic/core-concepts

默认的用户名密码是admin/123,登录进去之后,分别新建一下组织,证书,应用,用户。

Alist对接Casdoor

Alist官方教程,写的很详细很具体https://alist.nn.ci/zh/guide/advanced/sso.html#single-sign-on-client-secrets

搭建对接完成之后,先正常登录Alist后台,之后点绑定单点登录平台,在弹出的窗口里输入你新建的用户,就绑定成功了。之后在Alist登录的右下角就多了个图标,点开就能单点登录了。

建议在Casdoor的应用界面把保持登录会话启用自动登录给打开,这样体验会好很多,登录过就不用再登录了。

WordPress对接Casdoor

先在Casdoor里面新建一个应用,然后下载Casdoor的WordPress插件https://github.com/casdoor/wordpress-casdoor-plugin,下载后解压到/wp-content/plugins目录里,你就能在后台看到WordPress Casdoor Plugin插件了,启用它,在设置-Casdoor SSO里配置一下,如下表

Activate Casdoor是否启用Casdoor接管Wordpress登录
Client IDCasdoor应用里面的Client ID
Client SecretCasdoor应用里面的Client Secret
Backend URL你部署Casdoor的域名
OrganizationCasdoor这个应用对应的组织
Redirect to the dashboard after signing in登录后是否重定向到仪表板
Restrict flow to log in only勾选后在WordPress中没有账户的人将无法登录
Auto SSO for users that are not logged in勾选后用户将被重定向到登录页面,即使访问的页面不需要登录

配置好后点击保存就ok了,记得先在对应的组织下创建一个用户,把电子邮箱写成你的,不然你自己都登录不上去了(

最后配一张登录界面的图

美的嘞
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇