单点登录思路

  1. 单点登录实现
    1. 原理概述

       单点登录系统提供统一的认证页面、统一的当前用户加密和解密服务。

       用户通过统一认证页面登录系统,当用户需要访问企业内部应用系统时,单点登录加密当前用户身份跳转至指定的应用系统,指定应用系统获取到当前加密身份后,通过调用单点登录服务进行解密,获取到用户真实身份进行认证。

       当统一认证页面采用Windows认证模式时,那么同样采用Windows认证模式的应用系统,必须部署在同一应用程序池下,对于其他非Windows认证的系统,将采取上述加密跳转的方式。

图:应用系统单点登录实现过程

    1. 统一认证页面

       由单点登录系统提供,使用统一用户管理平台的账号和密码进行验证。用户访问企业内网门户或应用系统时,如果检测到未登录,则跳转至统一认证页面,用户登录后,再跳转至用户访问的页面。

       统一认证页面地址:http://10.16.0.168/Portal/Login.aspx

       统一认证页面输入输出参数如下

       应用系统未认证时,跳转至统一认证页面,输入参数:

编码

输入方式

描述

SystemCode

Get/post

系统编码,由单点登录系统提供指定的编码,每个应用系统唯一,输入为空时,跳转至默认的门户页面

URL

Get/post

登录成功后,跳转到的应用系统URL,输入为空时,跳转至默认的门户页面

       统一认证完成后,跳转至应用系统指定URL,输出参数:

编码

输入方式

描述

Token

Get

一次有效的验证Token,调用单点登录服务,可以得到当前用户的真实信息

    1. 单点认证服务

      单点认证服务是提供给企业应用系统进行登录验证的服务,企业应用系统获取到Token后,以自己对应单点登录的SystemCode和Secret值,进行调用单点登录服务,解析得到统一平台的用户登录信息。

       服务地址:http://10.16.0.168/SSO.asmx

       单点认证服务提供2个WebService服务接口:

  • 获取统一认证平台用户账号接口

接口名称

GetAuthenticationUser

接口说明

获取已登录统一认证平台的用户账号

输入参数

参数编码

类型

说明

SystemCode

String

传入系统编码

Secret

String

传入系统秘钥

Token

Stirng

登录信息

输出参数

类型

说明

String

返回当前已登录统一认证系统的登录账号

  • 更改Secret接口

接口名称

UpdateSecret

接口说明

更改统一认证Secret信息

输入参数

参数编码

类型

说明

SystemCode

String

传入系统编码

Secret

String

传入旧的系统秘钥

NewSecret

Stirng

传入新的Secret信息

输出参数

类型

说明

bool

返回更改Secret值是否成功

 

  1. 应用系统单点登录接入
    1. 获取系统编码

       系统编码是由单点登录服务提供的系统编码和解密秘钥。

编码

名称

说明

SystemCode

系统编码

文本类型,系统编码、企业内部唯一,不可变更

Secret

解密秘钥

文本类型,调用解密服务需要传入的参数,可以调用单点登录服务修改

       以下是各应用系统编码,Secret可调用接口(参考3.4.4章节)自行修改:

系统名称

SystemCode

Secret

电子考勤系统

DZKQ

DZKQ

生产经营系统

SCJY

SCJY

招投标系统

ZTB

ZTB

无纸化会议

WZHHY

WZHHY

领导动态

LDDT

LDDT

    1. 统一登录页面

       注:该功能为预留使用,本期项目可以不实现,应用系统只需要做好单点登录,仍然可保留已有的登录界面,让用户即可从统一平台登录界面进行登录系统,也可以从已有的系统登录界面进行登录系统。

       统一单点登录页面URL:http://10.16.0.168/Portal/Login.aspx

       当用户请求页面,并且未登录时,统一跳转至单点登录服务提供的登录页面地址,

       http://10.16.0.168/Portal/Login.aspx?q={URL}&SystemCode={SystemCode}

       参数说明

编码

名称

说明

URL

应用系统URL

单点登录成功后跳转到应用系统的URL地址

SystemCode

系统编码

单点登录系统编码

       示例:当前应用系统编码是SCJY,用户请求的页面URL为:http://192.0.0.1/Default.aspx,

       则跳转至:

http://10.16.0.168/Portal/Login.aspx?q= http://192.0.0.1/Default.aspx&SystemCode=SCJY

    1. 系统间单点登录跳转

       系统之家的单点登录实现,都需要通过统一登录页面进行实现,例如A系统访问B系统的 Default.aspx页面,则需要使用:http://10.16.0.168/Portal/Login.aspx?q=http://B/Default.aspx。

    1. 应用系统单点登录实现过程
      1. 单点登录过程

       本章节描述了应用系统对于单点登录需要做的事情和过程。

       应用系统从URL中获取到Token值,通过SystemCode和Secret调用单点登录服务,解析得到用户的统一用户管理平台中的账号,在本系统实现登录验证。

       单点登录需要支持的页面:所有在统一平台中需要加上链接的页面和表单界面。

       以上页面中,在判断当前系统用户登录认证之前,按照以下步骤进行

  1. 如果URL中有Token值,则进入3,否则进入2
  2. 跳转至本系统的登录界面;
  3. 调用单点登录服务进行解密,得到用户的真实账号;
  4. 使用解密得到的账号自动进行本系统登录认证,完成单点登录;
      1. 单点登录界面说明

       本期项目以下功能需要实现单点登录:

系统名称

集成功能

公文管理系统

公司发文、公司收文、公司工作联系单、公司会议记要审批件流转、部门发文、流程审核表单

合同管理系统

合同查询、合同台账、流程审核表单

招投标系统

招投标流程运行监控、项目运行监控、招标会议安排招标项目台账、评标专家维护、流程审核表单

生产经营管理系统

业务跟踪查询、流程审核表单

电子考勤系统

考勤管理、特殊考勤申请、考勤记录查询、流程审核表单

无纸化会议系统

会议室使用情况、无纸化会议申请、会议材料上传、流程审核表单

领导动态

行程动态登记、行程动态查询

内控管理系统

部门控制目标、内控手册查询、内控全文索引

电子邮件系统

未处理邮件数提醒

       注:请各应用系统将以上功能的测试环境和正式环境的URL访问地址,提供给信息化管理中心董小诗。

      1. 获取Token

       从统一认证平台跳转至应用系统时,统一认证平台会将当前的用户加密信息以Get方式进行发送至应用系统。

       例如:应用系统URL地址http://192.0.0.1/Default.aspx,统一认证平台返回的URL地址为

       http://192.0.0.1/Default.aspx?Token={Token}

       参数说明

编码

名称

说明

Token

访问的Token

一次性使用,可以通过单点登录服务得到真实账号

       注:每次登录Token值只一次有效。

      1. 获取应用系统用户账号

       应用系统获取Token后,调用单点登录服务提供的解密服务,得到真实账号,单点登录服务以WebService方式提供。

接口名称

GetAuthenticationUser

接口说明

获取已登录统一认证平台的用户账号

输入参数

参数编码

类型

说明

SystemCode

String

传入系统编码

Secret

String

传入系统秘钥

Token

Stirng

登录信息

输出参数

类型

说明

String

返回当前应用系统的用户账号

        应用系统获取到返回当前应用系统的用户账号后,需要进行本系统的登录操作。

      1. 更改Secret信息

       为了安全考虑,Secret值可以根据应用系统需要进行请求修改。修改过程调用统一单点登录服务进行完成。

       单点登录系统提供接口如下:

接口名称

UpdateSecret

接口说明

更改统一认证Secret信息

输入参数

参数编码

类型

说明

SystemCode

String

传入系统编码

Secret

String

传入旧的系统秘钥

NewSecret

Stirng

传入新的Secret信息

输出参数

类型

说明

bool

返回更改Secret值是否成功

      1. 提供系统用户表

       如果应用系统不是使用AD域账号,并且本系统用户没有与AD用户对应的用户关系映射表,那么需要做2个事情:

  1. 对于已有的系统用户,导出系统用户清单提供给统一平台,导出格式为:

所属组织

用户姓名

当前系统账号

 

 

 

  1. 对于新增用户(不在系统用户清单的用户),严格使用AD账号,否则不能正常单点登录。

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值