本系统目前支持两种认证方式:认证通和卫士通。
本系统提供以下类型的单点登录协议,使用时需具备两套本系统,一套作为Client端,一套作为Server端。
CAS全称为Central Authentication Service,即中央认证服务,是为应用提供可信身份认证的单点登录系统,CAS本身没有授权,也没有权限控制功能。
CAS包含两部分:
CAS Server:CAS Server负责完成对用户的认证工作,需要独立部署,CAS Server会处理用户用户名/密码等凭证。
CAS Client:负责处理用户对客户端的访问请求,当需要对请求方(即用户)进行身份认证时,会重定向到CAS Server进行认证。
需配合QAuth 2.0使用,是一种认证与授权标准,称为OpenID Connect(OIDC)。
OpenID是Authentication,即认证,对用户的身份进行认证,判断其身份是否有效,也就是让网站知道“你是你所声称的那个用户”。用户要使用OpenID就必须在OpenID身份服务器上注册OpenID账号。
OAuth是Authorization,即授权,在已知用户身份合法的情况下,经用户授权来允许某些操作,也就是让网站知道“你能被允许做哪些事情”。
OPENID包含三部分:
OPENID Server:OPENID Server负责完成对用户的认证工作,需要独立部署,OPENID Server会处理用户的用户名/密码等凭证。
OAuth2.0:在OPENID Server的OAuth2.0协议中对接OPENID Client信息,OAuth2.0将自动为Client生成client id和client secret。
OPENID Client:负责处理用户对客户端的访问请求,当需要对请求方(即用户)进行身份认证授权时,会重定向到OPENID Server结合client id和client secret进行认证授权。
OAuth2.0是一个为第三方应用提供统一授权的开放标准协议。系统作为授权服务器,允许其用户作为第三方应用的登录用户使用。授权流程如下:
第三方应用添加至本系统OAuth2.0协议后,系统将为每个应用自动生成client id(APPID)、client secret(SECRET)以及Discovery Url,第三方应用需将该参数写入自身配置,其中Discovery Url格式应满足:http://{IP}:16660/.well-known/openid-configuration。
用户在登录第三方应用时,选择使用本系统方式登录,跳转到本系统登录页面,同时携带APPID和SECRET参数。
本系统校验携带参数是否正确(第一次对接后,无需再次校验),校验通过,用户输入本系统的用户名密码,即跳转回第三方应用地址。
在一个单位中,需要使用多个功能不同的系统应用,比如财务系统,销售的CRM系统,人事的OA、邮箱系统,如果每个系统都用独立的账号认证体系,会给员工带来很大困扰,不方便管理。所以需要设计一种统一登录的解决方案。