YeeAuth 概述
了解 YeeAuth 企业级身份验证与授权平台的定位、能力与组成。
什么是 YeeAuth?
YeeAuth 是一个现代化的企业级身份与访问管理(IAM)平台,基于 OAuth 2.0 与 OpenID Connect 标准协议构建,为你的应用程序提供安全、统一的用户认证(Authentication)与访问授权(Authorization)能力。
无论你正在构建一套新的系统,还是希望为多个已有系统打通统一登录,YeeAuth 都能作为独立的身份中枢,把"用户是谁"和"用户能做什么"从各个业务系统中剥离出来,集中管理。
它能解决什么问题
- 不必重复造登录系统:登录、注册、找回密码、第三方登录等能力开箱即用,业务系统只需对接标准协议。
- 一次登录,到处通行:多个应用共享同一身份体系,实现单点登录(SSO),用户无需在每个系统重复登录。
- 集中且细粒度的权限治理:角色、权限、策略统一在控制台配置,并通过 Token 下发给各系统校验,避免权限逻辑散落各处。
- 多租户隔离:用一套部署服务多个组织/客户,彼此的用户与权限数据互相隔离。
- 标准化对接:完整实现 OAuth 2.0 / OIDC,可与任意符合标准的语言、框架、网关或第三方系统集成,不绑定特定技术栈。
核心能力
| 能力 | 说明 |
|---|---|
| OAuth 2.0 / OIDC | 标准的认证授权协议支持,提供授权码、客户端凭据、刷新令牌等多种授权流程 |
| 单点登录(SSO) | 多应用共享身份,一次登录全线通行 |
| 多租户与用户池 | 以用户池(User Pool)为顶层隔离单元,按组织/租户独立管理身份 |
| RBAC 角色权限 | 基于角色的访问控制,把权限点聚合为角色再分配给用户 |
| ABAC 策略 | 基于属性的访问策略,支持更灵活的细粒度授权 |
| 身份联合 / 社会化登录 | 对接外部身份源与第三方社交账号登录 |
| 多因素认证(MFA) | 在密码之外叠加一次性验证码(OTP)等二次验证手段 |
| LDAP 目录服务 | 提供 LDAP 目录能力,便于与传统企业系统对接 |
| 编程账号(M2M) | 面向服务间调用的机器身份,通过客户端凭据流程获取 Token |
| 事件 Webhook | 用户、租户等关键事件可推送到自定义回调地址,便于业务侧联动 |
平台组成
YeeAuth 采用微服务架构,由以下几个部分协同工作:
| 组件 | 技术栈 | 作用 |
|---|---|---|
| IAM 核心服务(iam-3as) | Spring Boot / Java 17 | 管理用户、角色、权限、资源、组织、租户等核心数据 |
| OAuth / OIDC 服务(oauth-iam-3as) | Spring Boot / Java 17 | 颁发与校验 Token,提供标准认证授权端点 |
| 管理控制台(yeeauth-console) | React + Ant Design Pro | 管理员配置组织、应用、用户、角色与策略的入口 |
| 登录门户(yeeauth-portal) | React + Vite | 终端用户实际看到的登录、注册、找回密码页面 |
底层依赖关系数据库(MySQL / SQL Server)存储核心数据,使用 Redis 做会话与缓存,并支持 MinIO / 七牛等对象存储用于文件上传。
典型使用场景
- 企业内部统一身份:员工用一套账号访问内部所有系统,管理员集中管理人员与权限。
- 多应用 / 多端的 C 端登录:网站、App、小程序共用同一用户体系与登录能力。
- SaaS 多租户:为每个客户企业分配独立的组织与用户池,数据互不可见。
- 服务间安全调用:后台任务或微服务之间通过编程账号(M2M)以受控权限互相访问。