Django-sso-server
Django-sso-server copied to clipboard
A user friendly Django SSO server(一个用户友好的Django单点登录服务器)(ldap&&企业微信扫码)
Django Sso Server
一个用户友好的Django单点登录系统(ldap&&企业微信扫码)
1 . 功能简介:
总览
本系统为用于实现基于ldap验证或(和)企业微信扫码验证的单点登录系统
通过加解密cookie以及验证api的方式实现单点登录
1 . 登录页
登录界面(可选择ldap登录或企业微信扫码登录)

2 . 用户页
用于用户登录成功后的站点导航,其中后台页面不会显示给普通用户

3 . 用户账户功能
用于修改ldap密码,以及登出

4.配置管理后台
用于sso系统配置管理以及添加导航站点

5.企业微信扫码后台
用于配置企业微信扫码相关参数

2 . 使用说明
1 . 安装环境
git clone https://github.com/calmkart/Django-sso-server.git pip install -r requirement.txt cd django-sso-server 创建数据库sso python manage.py migrate 用django自带http服务器或者用gunicorn跑都可以 然后进行系统初始化
或者使用docker运行(更新说明:添加了docker运行,替换了Mysql为更简单的sqlite3,增加了whiteNoise静态文件服务器)
docker run -d -p 8080:8080 calmkart/django_sso_server:v0.0.1
2 . 系统初始化
登录单点登录服务器,填写相关初始化信息
提交后后台会检验ldap相关信息是否正确,ldap管理员账户有错误将返回

3 . 配置
初始化成功后,使用初始化中配置的系统管理员ldap账号登录系统
在管理后台配置导航站点以及企业微信扫码登录相关参数
最后,可以在管理后台找到子站添加进sso系统的相关帮助

4 . 子站鉴权api说明
/api/auth
子站用POST方法以json形式将{"sso_cookie":$sso_cookie}传给此api,
返回{"status":True, "msg":$username}则登录成功
返回{"status":False, "msg":$exception}则登录失败