介绍
易认证(EAuth)是一款开源的企业级的OIDC认证平台,使用golang+react(ant design pro框架)开发的,提供多种认证方式,包括人脸识别、OpenID Connect(OIDC)、Web身份认证等,支持多因素认证(MFA), 灵活的令牌(Token)生成设置,可以实现不同应用间的一账通,能为企业提供精细化的认证管理,帮助企业快速完成认证流程,提高认证效率。
开源地址
部署
可以通过源码构建镜像或者直接通过官方提供的yaml文件部署,接下来分别介绍两种不同的部署
Kubernetes中yaml部署
支持部署到arm64或amd64架构的kubernetes集群,github仓库eauth中提供了yaml部署资源,需要注意的是frontend.yaml中的ingress通过注解使用了cert-manager来自动管理tls证书,如果不需要支持tls,可以自行删除tls相关内容。
kubectl部署
-
克隆
https://github.com/efucloud/public。git clone https://github.com/efucloud/public -
kubectl部署yaml资源
cd ./public/eauth kubectl apply -f namespace.yaml # 仓库中的mysql将挂载PVC相关信息注解了,集群内持久化需要配置PVC信息,如果使用外部数据库可以忽略mysql创建 kubectl apply -f mysql.yaml # 如果使用外部数据库需要修改backend.yaml中的mysql配置文件,需要注意的是secret为eauth-config中需要配置serverAddress信息,确保能生成正确的openid-configuration信息 kubectl apply -f backend.yaml # eauth的后端也是通过其前端进行反向代理的,后端请求流程将会是:浏览器->集群Nginx ingress -> eauth前端(nginx反向代理) -> eauth后端服务,如果不希望经过前端的反向代理,需要修改ingress eauth-console配置 kubectl apply -f frontend.yaml -
部署校验
浏览器中打开前端地址,本教程使用的地址是eauth-demo.efucloud.com ,输入用户名
admin再输入密码EfuCloud即可登录系统
web界面部署
本教程使用kube-keeper实现web部署,
- 创建命名空间eauth
2. 导入部署的yaml文件
3. 查看服务状态
- 部署校验
浏览器中打开前端地址,本教程使用的地址是eauth-demo.efucloud.com ,输入用户名
admin再输入密码EfuCloud即可登录系统
源码构建
后端构建
#克隆后端代码
git clone https://github.com/efucloud/eauth
cd ./eauth
# 构建二进制文件
go build ./cmd/start.go
# 构建镜像,需要修改Dockerfile中的镜像地址
sh ./build.sh
前端构建
git clone https://github.com/efucloud/eauth-console
cd ./eauth-console
# 安装依赖
pnpm install
# 本地构建镜像
sh ./local-build.sh