一,安装哪吒面板
使用ssh连接你的服务器,在面板服务器中,运行安装脚本:
国外服务器
curl -L https://raw.githubusercontent.com/nezhahq/scripts/main/install.sh -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh
国内服务器
curl -L https://gitee.com/naibahq/scripts/raw/main/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
使用独立安装
![图片[1]-哪吒面板中使用自定义OIDC实现OAuth 2.0登录-学霸博客](https://www.xueba520.top/wp-content/uploads/2024/11/image.png)
输入1安装面板端
![图片[2]-哪吒面板中使用自定义OIDC实现OAuth 2.0登录-学霸博客](https://www.xueba520.top/wp-content/uploads/2024/11/image-1.png)
OAuth提供商直接回车,Client ID和Client Secret随便填一个,登录名就填你的邮箱,站点标题访问端口和RPC端口按你的个人需要填。
![图片[3]-哪吒面板中使用自定义OIDC实现OAuth 2.0登录-学霸博客](https://www.xueba520.top/wp-content/uploads/2024/11/image-2.png)
二,在Casdoor中添加OAuth 2.0客户端
使用casdoor管理员账户登录后台,身份认证>应用
![图片[4]-哪吒面板中使用自定义OIDC实现OAuth 2.0登录-学霸博客](https://www.xueba520.top/wp-content/uploads/2024/11/image-4.png)
添加应用,并将信息保存到记事本
![图片[5]-哪吒面板中使用自定义OIDC实现OAuth 2.0登录-学霸博客](https://www.xueba520.top/wp-content/uploads/2024/11/image-5.png)
在你的casdoor网站后面添加路径/.well-known/openid-configuration查看OIDC信息。
示例https://sso.xxx.com/.well-known/openid-configuration
![图片[6]-哪吒面板中使用自定义OIDC实现OAuth 2.0登录-学霸博客](https://www.xueba520.top/wp-content/uploads/2024/11/image-6.png)
三,修改哪吒面板配置以支持自定义OIDC
切换到哪吒面板的配置文件目录
cd /opt/nezha/dashboard/data
使用nano或者vim编辑配置文件config.yaml
nano config.yaml
删除原本的oauth2配置部分,修改为以下配置
oauth2:
type: oidc # (必填)指定认证类型为 OIDC
oidcDisplayName: OIDC # (可选,默认值为 OIDC)登录页面显示的名称
admin: "" # (至少填写 admin 或 adminGroups 中的一个;默认为空)管理员用户名,用逗号分隔。列在此处的用户被视为管理员
clientid: # (必填)OIDC 客户端 ID
clientsecret: # (必填)OIDC 客户端密钥
oidcIssuer: https://auth.example.com/realms/master # (必填)OIDC 提供商的 issuer URL,可以从您的OIDC 提供商处获取
oidcScopes: openid,profile,email # (可选,默认值为 openid,profile,email )OIDC 请求的 scope,用逗号分隔
oidcLoginClaim: email # (可选,默认值为 sub)OIDC 返回的用户名字段,可以是 preferred_username、sub 或email
oidcAutoCreate: true # (可选,默认值为 false)如果用户不存在,是否自动创建用户
oidcAutoLogin: false # (可选,默认值为 false)当地址是 /login 时,是否自动跳转到OIDC登录页面
oidcIssuer需要你自己查询,我这里使用casdoor作为演示
![图片[7]-哪吒面板中使用自定义OIDC实现OAuth 2.0登录-学霸博客](https://www.xueba520.top/wp-content/uploads/2024/11/image-3.png)
注意:一定要把oidcAutoCreate设置为true,这是在哪吒自己的数据库创建账户!!!
注意:一定要把oidcAutoCreate设置为true,这是在哪吒自己的数据库创建账户!!!
注意:一定要把oidcAutoCreate设置为true,这是在哪吒自己的数据库创建账户!!!
使用systemctl重启哪吒面板
systemctl restart nezha-dashboard.service
四,效果展示
![图片[8]-哪吒面板中使用自定义OIDC实现OAuth 2.0登录-学霸博客](https://www.xueba520.top/wp-content/uploads/2024/11/image-7.png)
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END







暂无评论内容