通过CAS协议单点登录至应用
概述
CAS是一个基于HTTP2、HTTP3的协议,要求每个组件都可以通过特定的URL访问。通过CAS协议将OneAccess作为身份服务提供商,使第三方应用可以读取OneAccess的用户账号数据。支持CAS1.0、CAS2.0、CAS3.0三种协议。
从抽象的角度来看,主要包括CAS协议和授权流程。
- CAS协议
CAS 协议涉及两个主体,两个主体通过用户浏览器进行信息交换。如CAS Client可以返回带参数的重定向,将信息转发给CAS Server。登录验证成功后 CAS Server会返回CAS Client一个包含用户信息的XML, CAS Client验证用户信息后会返回给用户访问资源。
- CAS Server: CAS服务端,身份认证提供方,如OneAccess认证服务。
- CAS Client: CAS客户端,资源提供方,如第三方应用。
- 授权流程
- 用户登录CAS Client 提供的应用。
- CAS Client分析该Http请求中是否包含认证票据ST,如果没有,则说明当前用户尚未认证,于是重定向CAS Server ,并传递Service (目的资源地址)。
- 用户输入认证信息,如登录成功,CAS Server随机产生一个相当长度、唯一、不可伪造的票据ST,然后附带生成的ST重定向到CAS client。
- CAS Client收到Service和新产生的ST后,通过后台与CAS Server进行交互验证。
- CAS Server根据请求参数Service和ST进行身份核实,以确保ST的合法性,并返回一段指定格式的XML(包含用户信息)给CAS Client。
- CAS Client和CAS Server之间完成了一个对用户的身份核实,返回给用户CAS Client访问资源。
本文主要介绍OneAccess以CAS协议集成应用的方法。
配置流程
前提条件
请确保您已拥有OneAccess管理门户的访问权限。
在OneAccess中添加企业应用
在OneAccess管理门户中添加企业应用,通过配置认证信息,可以建立OneAccess对企业应用的信任关系。
- 登录OneAccess管理门户。
- 在导航栏中,单击“资源 > 应用”。
- 在企业应用页面,单击自建应用下的“添加自建应用”,设置Logo和名称,单击“保存”。
在OneAccess中配置企业应用
在OneAccess中配置应用的信息,确保用户可以通过OneAccess登录企业应用。包括 认证配置、 映射配置、 授权用户。
- 认证配置
- 单击在OneAccess中添加企业应用中添加的企业应用,在应用信息页面单击应用图标。
- 在通用信息模块,单击“认证集成”后的打开认证集成设置,此处选择CAS协议,单击“保存”。
应用认证集成协议一旦设置不可修改。
图1 设置认证协议
- 在通用信息模块,单击“认证集成”后的“配置”,进入“认证集成(CAS)”的“参数配置”页签。
配置参数会明文展示所输入的信息,请防止信息泄露。
图2 配置认证参数
表1 认证参数 参数
说明
应用回调URL
必填。第三方应用的URL,需与CAS接口中service参数值一致,且符合RFC中URL的编码格式。
应用退出URL
选填。应用退出地址,用户在OneAccess注销会话后返回绑定的地址。
- 映射配置
在认证配置页面,选择“映射配置”页签,单击“添加映射”,建立OneAccess与应用端属性的映射。
图3 添加映射
表2 映射参数 参数
说明
应用系统属性名
必填。认证成功后,OneAccess返回给应用的用户属性。
映射类型
必填。不同的映射类型决定不同接口返回属性的属性值,可在下拉框按需选择。
- 授权用户
选择左侧的“授权管理 > 应用账号”,单击“添加账号”,授权访问应用的账号。如需根据策略给用户授权,请参考配置应用中应用账号的授权策略。
登录配置、访问控制、对象模型等设置请参考配置应用。
建立企业应用对OneAccess的信任关系
在企业应用中配置OneAccess的授权信息,以建立企业应用对OneAccess的信任。
- 获取OneAccess侧的认证信息。
- 获取企业应用的授权信息。获取方法请参见应用提供商的帮助文档。
OneAccess用户登录验证
使用授权用户中的已授权用户访问用户门户,成功登录以后,单击目标应用即可进入企业应用。