最新历史版本 :CAS单点登录 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

用户需要实现通过 CAS(统一身份认证服务)认证登录数据决策系统,本文提供配置 CAS 单点登录及登出方法索引。

1.1 CAS 简介

CAS 架构包括:CAS 服务器和 CAS 客户端。

CAS 服务器需要独立部署,负责用户信息的验证。一般由企业搭建,并可以连接数据库,新建一张 CAS 用户表,统一管理用户信息。

CAS 客户端为各个需要单点登录的 Web 应用,如 FineReport ,负责处理资源访问请求,当用户需要登录数据决策系统时,重定向到 CAS 服务器。

1.2 CAS 登录原理

用户通过 CAS 认证登录数据决策系统的过程如下:

1)浏览器访问数据决策系统,即访问 CAS 客户端。

2)客户端重定向用户请求到 CAS 服务器。

3)CAS 服务器验证用户的 CAS 账号和密码。

4)验证通过则发放凭证 ticket ,凭借 ticket 跳转访问数据决策系统。

5)数据决策系统向 CAS 服务器验证 ticket 的真实性,是否过期等信息。

6)验证通过后,CAS 服务器返回该 ticket 的用户名,数据决策系统进一步验证返回的用户名是否为系统用户,且为可用状态,验证通过,则单点成功,登入数据决策系统。

如下图所示:

2. 方案一:通过插件实现编辑

该方案无需代码,可通过插件直接实现,方便简单。详情请参见:CAS单点登录插件

3. 方案二:通过代码实现编辑

注:文档提供的该方案,不适用于移动端;若想实现移动端 CAS 单点登录,请参考本文第二章内容。

3.1 CAS 单点登录

CAS 单点登录步骤如下表所示:

步骤简介备注
配置 SSL 证书实现 HTTPS 访问配置 CAS 单点登录需要首先配置网站 HTTPS 支持,否则 CAS 单点登录无法使用必须操作
CAS服务器搭建CAS 单点登录需要通过 CAS 服务器进行信息验证,若用户已有 CAS 服务器环境,可忽略该操作选择性操作
实现基于数据库的身份验证

用户信息若保存在数据库的某张表中,可参考本文方法实现基于数据库的身份验证,用户根据实际情况选择是否进行该操作

注:CAS 默认的验证是用户名和密码相同。若未做这一步,当密码和用户名相同时,即可通过 CAS 验证

选择性操作

配置 FineReport 作为 CAS 客户端介绍如何将 FineReport 与 CAS 单点登录结合必须操作

注:集群环境下 CAS 单点登录步骤请参见:集群下 CAS 方案

 3.2 CAS 单点登出

在没有配置 CAS 单点登出的情况下,当用户登出平台以后只是登出了平台这一个客户端,但是其他的客户端并没有进行退出。可参考 CAS 登出方案 实现登出平台的同时登出其他 CAS 客户端。

3.3 CAS 后进行远程设计

10.0 集成 CAS 之后,远程设计的请求会被 CAS 拦截,导致无法进行远程设计,可参见:10.0集成 CAS 后的远程设计 进行解决。

3.4 移动端

该方案不支持移动端,若希望实现移动端 cas 单点登录,建议参考本文第二章方案一。

3.5 报错解决方案

CAS 单点登录过程中,相关报错及解决方案请参见:CAS 报错解决方案