Skip to content

Beangle IDS ​

Beangle IDS(Identity Service)是一个基于 CAS(Central Authentication Service)协议的身份认证服务,提供统一的单点登录能力。

核心功能 ​

模块描述
CAS Server实现 CAS 协议的认证服务器
Ticket ManagementTicket 的生成、验证和管理
Credential Validation凭证验证,支持多种认证方式
Session Management用户会话管理
Multi-factor Authentication支持多因素认证

架构特点 ​

  • 标准协议支持:完整支持 CAS 3.0 协议
  • 高可用性:支持分布式部署和 Ticket 缓存
  • 灵活扩展:支持多种凭证验证方式
  • 安全可靠:内置 CSRF 防护、登录重试限制

核心组件 ​

认证流程 ​

  1. 用户访问:用户访问受保护的应用
  2. 重定向认证:应用重定向到 CAS 登录页面
  3. 凭证验证:用户输入用户名密码进行验证
  4. 发放 Ticket:验证成功后发放 Service Ticket
  5. 验证 Ticket:应用携带 Ticket 到 CAS 验证
  6. 返回用户信息:CAS 返回用户身份信息

Ticket 类型 ​

类型描述有效期
TGTTicket Granting Ticket,用于获取 Service Ticket较长(默认几小时)
STService Ticket,用于访问特定服务单次使用
PGTProxy Granting Ticket,用于代理认证较长

支持的认证方式 ​

  • 用户名密码认证:标准的用户名密码验证
  • 短信验证码:通过短信进行二次验证
  • LDAP 认证:集成 LDAP 目录服务
  • 多因素认证:支持多种认证方式组合

依赖关系 ​

  • Commons:核心工具库
  • Security:安全框架
  • Web:Web 基础
  • Cache:缓存支持

典型部署架构 ​

┌─────────────────────────────────────────────────────────────────┐
│                         CAS Server                             │
├─────────────────────────────────────────────────────────────────┤
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────────────┐ │
│  │ Login Module │  │ Ticket       │  │ Credential          │ │
│  │              │  │ Registry     │  │ Validation          │ │
│  └──────────────┘  └──────────────┘  └──────────────────────┘ │
├─────────────────────────────────────────────────────────────────┤
│                    认证协议端点                                  │
│  /login  /logout  /validate  /serviceValidate  /proxyValidate │
└─────────────────────────────────────────────────────────────────┘
            ▲                     │
            │                     │
    用户浏览器              客户端应用