github热度第一!开源sso单点登录认证系统(代码片段)

程序员大咖 程序员大咖     2023-01-11     542

关键词:

👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇

开源最前线(ID:OpenSourceTop) 猿妹 整编

链接:https://github.com/authelia/authelia

相信大家都对登录系统不陌生,今天,猿妹就和大家介绍一个开源的认证和授权服务器,通过网络门户为你的应用程序提供双因素认证和单点登录(SSO)——Authelia。

你可以将Authelia和nginx、Traefik 或 HAProxy 等反向代理合作使用,让它们知道是否应该允许请求或将请求重定向到Authelia的门户进行认证。

下面是一个简单的架构图:

Authelia 可以作为一个独立的服务从AUR、APT、FreeBSD端口安装,或者使用Static二进制、.deb包、Docker或Kubernetes手动安装,或者通过Helm Chart(beta)利用入口控制器和入口配置。

这是Authelia登录界面的样子:

Authelia主要具有以下特性:

  • 多种second factor方法:

  • 使用电子邮件确认通过身份验证重置密码。

  • 无效身份验证尝试次数过多后的访问限制。

  • 使用与子域、用户、用户组成员身份、请求 uri、请求方法和网络等条件匹配的规则进行细粒度访问控制。

  • 每个规则的单因素和双因素策略之间的选择。

  • 支持对受单因素策略保护的端点进行基本身份验证。

  • 使用远程数据库和 Redis 作为高可用 KV 存储实现高可用。

  • 使用 ForwardAuth 中间件与开箱即用的 Traefik 兼容。

  • LinuxServer 通过他们的 Swag 容器以及指南提供的配置。

  • Kubernetes 支持:

  • 对 OpenID Connect 的 Beta 支持。

目前,Authelia已经在GitHub上标星 9.9K,累计分支 472 个(GitHub地址:https://github.com/authelia/authelia)

-End-

最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!

点击👆卡片,关注后回复【面试题】即可获取

在看点这里好文分享给更多人↓↓

单点登录实现方案

单点登陆实现方案设计整体流程:设计思路:单点登录涉及?sso?认证中心与众子系统,子系统与?sso?认证中心需要通信以交换令牌、校验令牌及发起注销请求,因而子系统必须集成?sso?的客户端,sso?认证中心则是?sso?服务端,整个... 查看详情

jeesz分布式框架--单点登录集成方案

摘要:第一节:单点登录简介第一步:了解单点登录SSO主要特点是:SSO应用之间使用Web协议(如HTTPS),并且只有一个登录入口.SSO的体系中有下面三种角色:1)User(多个)2)Web应用(多个)3)SSO认证中心(一个)SSO实现包含以下三个原则:1)所有的... 查看详情

cas单点登录详细流程

一、CAS简介和整体流程CAS是Yale大学发起的一个开源项目,旨在为Web应用系统提供一种可靠的单点登录方法,CAS在2004年12月正式成为JA-SIG的一个项目。CAS具有以下特点:【1】开源的企业级单点登录解决方案。【2】CASServer为需要独... 查看详情

单点登录

一、什么是单点登录?  单点登录全称SingleSignOn(以下简称SSO),是指在多系统应用群中登录一个系统,便可在其他所有系统中得到授权而无需再次登录,包括单点登录与单点注销两部分。1.登录  相比于单系统登录,sso需... 查看详情

jeesz分布式框架单点登录集成方案

第一节:单点登录简介第一步:了解单点登录SSO主要特点是:SSO应用之间使用Web协议(如HTTPS),并且只有一个登录入口.SSO的体系中有下面三种角色:1)User(多个)2)Web应用(多个)3)SSO认证中心(一个) SSO实现包含以下三个原则:1)所有的... 查看详情

单点登陆

...中心(一个)。2. 较流行的实现手段单点登陆最有名的开源方案当属CAS,全称为CentralAuthenticationService即中央认证服务。CAS是由Yale大学发起的一个企业级的、开源的项目,旨在为Web应用系统提供一种可靠的单点登录解决方法除此... 查看详情

jeesz分布式框架--单点登录集成方案

 JEESZ分布式框架单点登录集成方案第一节:单点登录简介第一步:了解单点登录SSO主要特点是:SSO应用之间使用Web协议(如HTTPS),并且只有一个登录入口.SSO的体系中有下面三种角色:1)User(多个)2)Web应用(多个)3)SSO认证中心(一个)SS... 查看详情

jeesz分布式框架--单点登录集成方案

 JEESZ分布式框架单点登录集成方案第一节:单点登录简介第一步:了解单点登录SSO主要特点是:SSO应用之间使用Web协议(如HTTPS),并且只有一个登录入口.SSO的体系中有下面三种角色:1)User(多个)2)Web应用(多个)3)SSO认证中心(一个)SS... 查看详情

jeesz分布式框架--单点登录集成方案

JEESZ分布式框架单点登录集成方案第一节:单点登录简介第一步:了解单点登录SSO主要特点是:SSO应用之间使用Web协议(如HTTPS),并且只有一个登录入口.SSO的体系中有下面三种角色:1)User(多个)2)Web应用(多个)3)SSO认证中心(一个)SSO实... 查看详情

jeesz分布式框架--单点登录集成方案

JEESZ分布式框架单点登录集成方案第一节:单点登录简介第一步:了解单点登录SSO主要特点是:SSO应用之间使用Web协议(如HTTPS),并且只有一个登录入口.SSO的体系中有下面三种角色:1)User(多个)2)Web应用(多个)3)SSO认证中心(一个)SSO实... 查看详情

单点登录sso

...技术实现机制  如下图所示:      当用户第一次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息,认证系统进行身份效验,如果通过效验ÿ... 查看详情

sso是啥

...的单点登录。图为一种SSO系统:扩展资料实现机制当用户第一次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息,认证系统进行身份校验,如果通过校验,应该返回给用户一... 查看详情

求解!单点登录怎么实现的?

...是“单点登录”。  单点登录的技术实现机制:当用户第一次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息,认证系统进行身份效验,如果通过效验,应该返回给用户一... 查看详情

关于单点登录第一天接触之我见

...要登录一次就可以访问所有相互信任的应用系统。当用户第一次访问应用系统的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息 查看详情

spring+springcloud+sso单点登录应用认证

...ng+jwt+redis的解决方案,不同系统的无缝隙集成,统一的sso单点登录界面的管理、每个应用集成的权限认证,白名单等都是我们需要考虑的,现在针对于以上的问题我们做了sso单点登录应用认证平台,设计如下:愿意了解源码的朋... 查看详情

spring+springcloud+sso单点登录应用认证

...ng+jwt+redis的解决方案,不同系统的无缝隙集成,统一的sso单点登录界面的管理、每个应用集成的权限认证,白名单等都是我们需要考虑的,现在针对于以上的问题我们做了sso单点登录应用认证平台,设计如下:1.数据库设计:Java... 查看详情

sso单点登录

SSO体系结构   1)认证中心   2)用户与账号系统、用户数据获取接口          3)客户端模块           4)令牌(token) SSO认证流程 SSO相关核心技术 1、HTTP、cookie与s... 查看详情

单点登录sso的实现原理

单点登录SSO(SingleSignOn)说得简单点就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任。单点登录在大型网站里使用得非常频繁,例如像阿里巴巴... 查看详情