Skip to content

A user friendly Django SSO server(一个用户友好的Django单点登录服务器)(ldap&&企业微信扫码)

License

Notifications You must be signed in to change notification settings

calmkart/Django-sso-server

Repository files navigation

Django Sso Server

一个用户友好的Django单点登录系统(ldap&&企业微信扫码)


1 . 功能简介:

总览

本系统为用于实现基于ldap验证或(和)企业微信扫码验证的单点登录系统

通过加解密cookie以及验证api的方式实现单点登录

1 . 登录页

登录界面(可选择ldap登录或企业微信扫码登录) django-sso-server login page

2 . 用户页

用于用户登录成功后的站点导航,其中后台页面不会显示给普通用户 django-sso-server user page

3 . 用户账户功能

用于修改ldap密码,以及登出

django-sso-server user func

4.配置管理后台

用于sso系统配置管理以及添加导航站点 django-sso-server options backend

5.企业微信扫码后台

用于配置企业微信扫码相关参数 django-sso-server wx backend


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管理员账户有错误将返回 django-sso-server first start

3 . 配置

初始化成功后,使用初始化中配置的系统管理员ldap账号登录系统

在管理后台配置导航站点以及企业微信扫码登录相关参数

最后,可以在管理后台找到子站添加进sso系统的相关帮助 django-sso-server help


4 . 子站鉴权api说明

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

更多内容

关于系统流程

关于图片验证码

关于操作ldap

关于操作rsa,aes加解密

我的blog

About

A user friendly Django SSO server(一个用户友好的Django单点登录服务器)(ldap&&企业微信扫码)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published