宽带门户网站身份认证系统设计

设计

  摘 要 研究了湖南铁通宽带门户网站身份认证系统的功能需求,从统一认证、认证安全性和通用性等方面提出了一套全面的解决方案。方案利用集中用户管理实现统一认证;利用“一次一密”,两次认证的方式实现良好的安全性;利用WEB SERVICES架构实现系统的通用性。

  关键词 统一身份认证;时间戳;Web Services

  背景

  在以前,宽带的速度是吸引用户的根本原因。当宽带用户以前所未有的速度成倍增长的时候,价格和速度已不是影响网民上网的主要因素,没有丰富的内容用户就不能真正享受“宽带之旅”。湖南铁通从各个不同的内容提供商手中获得多种内容服务,这些服务在窄带情况下用户享用起来比较困难,比如在线下载、VOD点播、在线游戏等。然后通过宽带门户网站进行集成,再提供给用户。用户通过访问宽带门户网站可以享受到多种内容服务。要想从用户处获取使用内容的费用,宽带门户网站就必须要有一个良好的认证计费系统,本文主要阐述身份认证系统的设计。

  身份认证系统的目标功能

  通过对整个宽带门户网站的需求分析,确定了身份认证系统必须具备以下的功能:

  a)提供统一的认证途径。宽带门户网站的各个内容服务系统是从不同的内容提供商手中获得的,每个系统都有各自的用户系统和认证方式。让用户每访问一个内容服务系统就需要登录一次,显然是用户难以接受的认证方式。因此身份认证系统要提供一个统一的身份认证,让用户一次登录,可以访问全网的资源

  b)系统具有良好的可扩展性和可集成性。宽带门户网站在发展过程中还会不断地提供新的内容服务,这就要求身份认证系统具有良好的扩展性和可集成性,不仅能支持现有的内容业务系统及其现有的用户系统,当有新的内容业务系统被部署或开发的时候,这个统一身份认证服务可以作为它的身份认证模块的形式工作,也就是说,新的内容业务系统可以不自带用户系统,可以通过集成该服务的形式来实现等价的功能。

  c)系统提供跨平台认证的功能。各个内容业务系统各有特点,分别运行在不同的平台上,都要能和身份认证系统交互,这就要求身份认证系统提供跨平台认证的功能。

  d)系统具有良好的安全性。由于使用内容业务系统,用户要付费,身份认证系统要保障用户的安全。

  解决方案

  1、统一认证的两种方式

  统一身份认证系统的核心思想是将用户统一存储,对应用系统统一授权,规范内容业务系统的用户认证方式,从而达到提高整个系统的整体性、可管理性和安全性的效果。内容业务系统要想判断某一用户是否可以访问自己,必须和身份认证系统进行交互。由身份认证系统负责对用户进行集中认证。

  用户访问内容服务系统可以有两种方式:通过宽带门户网站访问内容服务系统,或者是直接访问内容服务系统。根据这两种访问方式身份认证系统要提供两种认证方式。

  第一种认证方式:用户直接登陆内容业务系统,内容业务系统将用户提供的用户名/密码等转发给统一身份认证服务以检验其是否通过授权。流程如图1所示


图1 第一种身份认证方式

  第二种认证方式:用户首先登录统一身份认证系统,验证其是否为合法注册用户,如果是合法用户可获取权限值。由于合法用户不一定开通了所有的内容服务,所以使用这个权限值访问内容业务系统时,内容业务系统将根据该权限值与统一身份认证服务进行交互,以检验访问的合法性。流程如图2所示


图2 第二种身份认证方式

  2、安全方案

  如果将身份验证凭据以明文形式从客户端传递到服务器,在同一网络的某台主机上配备有基本网络监控软件的攻击者可以捕获传递的信息并获取用户的名称和密码。对于这种安全威胁,身份认证系统对用户名和口令进行加密,避免以明文的形式在网络上传输。

  但是威胁依然存在,对于普通的加密算法,攻击者会有办法解密从而获取用户口令。即使是采用加强的加密算法,攻击者一时无法解密,也可以实施会话重放攻击。对于这种安全威胁,一种解决的办法是,当执行关键操作时,重新进行身份认证。比如,当用户通过身份验证后,可以进入VOD点播的页面;当用户指定播放某一VOD影片时,系统要求用户重新输入用户名、口令进行再一次验证。但是这样做,会让用户频繁输入用户名、口令,并不可取。

  更好的做法是:采取结合DES算法,采用加入时间戳基于MD5摘要算法的一次一密方法对访问用户的口令进行加密,把用户名、口令和时间戳一起进行加密传输,即使攻击者进行重放攻击,由于时间戳已经改变,就不能通过认证。并且在执行关键操作时,由内容业务系统到身份认证系统再次进行验证,而不需要用户重新输入用户名和口令。以用户以第一种方式登录VOD点播系统为例,具体流程由图3所示:


图3 加密认证流程

  流程描述如下:

  1) 用户登录时将用户名、口令提交给VOD系统;VOD系统将用户名转发给身份认证系统。

  2) VOD系统将用户名、口令和时间戳一起加密后形成字符串PWD。

  3) 同时,身份认证系统根据得到用户名查得用户的注册密码,并把用户名、注册密码、时间戳一起加密后形成字符串PASS。

  4) VOD系统把PWD发送给身份认证系统。身份认证系统比较两者是否一致

  5) 如果一致则允许用户进入VOD系统的页面。用户选择观看的影片

  6) VOD系统再次生成PWD,身份认证系统再次生成PASS,并再次比较两者是否一致。如果一致,则播放影片

  3、通用接口

  为了能让运行在不同的平台上的内容业务系统都能够访问身份认证系统,并且让身份认证系统能够不断地集成新的内容业务系统,当身份认证系统统一认证功能和安全方面的功能后实现以后,我们利用WEB SERVICES技术架构,把身份认证系统转换成身份认证服务。

  该服务把身份认证系统提供的各项功能用WSDL语言描述成通用的服务接口,在这个接口中描述了身份认证服务提供给内容业务系统使用的一个函数,该函数的入口参数是用户名、用户口令和内容业务系统的ID;出口参数是该用户能否访问该内容业务系统的字符串。
以下是身份认证接口的WSDL描述:

<?xml version="1.0" encoding="UTF-8"?>
<definitions name="railwayhelperRemoteInterface" targetNamespace="http://www.railwayhelper.com/definitions/railwayhelperRemoteInterface" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://www.railwayhelper.com/definitions/railwayhelperRemoteInterface" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
<message name="loginRequest">
<part name="userid" type="xsd:string"/>
<part name="password" type="xsd:string"/>
<part name="serviceid" type="xsd:string"/>
</message>
<message name="loginResponse">
<part name="result" type="xsd:string"/>
</message>
<portType name="railwayhelperJavaPortType">
<operation name="login">
<input name="loginRequest" message="tns: loginRequest"/>
<output name="loginResponse" message="tns: loginResponse"/>
</operation>
</portType>
<binding name="railwayhelperBinding" type="tns:railwayhelperJavaPortType">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="login">
<soap:operation soapAction="" style="rpc"/>
<input name="loginRequest">
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://tempuri.org/creator.javabean.railwayhelper"/>
</input>
<output name="loginResponse">
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://tempuri.org/creator.javabean.railwayhelper"/>
</output>
</operation>
</binding>
</definitions>
  在这个接口中描述了身份认证服务提供的login函数,该服务的入口参数为:userid为用户名、password为用户名、口令和时间戳一起加密后得到的字符串PWD、serviceid内容业务系统编号,返回值是否允许用户登录该内容业务系统的字符串。

  不论内容业务系统运行在何种平台上,只要根据WSDL接口的描述和SOAP协议规范,把用户名和PWD用SOAP消息发送给身份认证服务,身份认证服务就会把认证结果用SOAP消息返回个内容业务系统。内容业务系统不必了解认证服务是怎样实现的,从而实现跨平台的通用认证。

  结束语

  上述的宽带门户网站的身份认证方案已经实际应用于了湖南铁通宽带门户网站,取得了良好的效果。

时间: 2024-12-26 10:44:47

宽带门户网站身份认证系统设计的相关文章

网友轻信360搜索“网站身份认证” 购机票被骗万元

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 日前,360搜索宣布推出"网站身份标注"功能,可对涉及交易消费的特定关键词搜索结果进行备案信息标注.360表示,这种做法将避免用户因遭遇钓鱼.挂马网站,而带来经济上的损失. 然而,距离这一功能推出不到几天,9月29日,有微博网友吐槽称,自己的朋友因相信360搜索的"企业认证"被钓鱼网站骗走了1万多元,并

中国启动网站身份认证 每年要进行年检审核

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 你是否不小心访问过恶意网站,惨中病毒?你是否不留神登录过银行仿冒网站,险些破财?如果互联网上的每一个网站都能配上"网络身份证",网民上当受骗的风险肯定会大大降低. 昨日,中国互联网信息中心(CNNIC)建设的"站点卫士"在广州宣布上线,从而启动了这项基于域名的网络信用认证.在广东地区,CNNIC选择了广

新版市政府门户网站“中国西安”正式上线运行

昨日,全新的"中国西安"门户网站站群系统全面改版正式上线运行,全新的资讯信息发布,提供2218项民生服务事项办理.查询,这一综合性统一政务门户,将成为群众了解西安的窗口.服务群众的大厅.政务公开的平台. 据了解,市政府网站大规模建设始于2006年.截至目前,各区县.开发区.市级部门及单位共建有各类网站约160余个,"多站并起.互不联通"的模式弊端逐渐显现,信息资源无法共享,安全事件时有发生,网上服务功能普遍较弱.因此,市政府办公厅决定整合各部门网站,建设"

开发网站如何进行访问者网络身份认证

问题描述 开发网站如何进行访问者网络身份认证 我们学校购买了知网数据库,每次用校园网登陆知网时,网页顶部就提示"欢迎,武汉理工大学的朋友",请问这是怎样实现的?

用asp.net (C#) 做一个网站,后台部分的身份认证是用session好呢? 还是用cookie好呢?

问题描述 用asp.net(C#)做一个网站,后台部分的身份认证是用session好呢?还是用cookie好呢?我以前用ASP的,只知道这两种,在ASP.NET(C#)中不知道大家是怎么用的?希望大家能给点帮助,谢谢 解决方案 解决方案二:这个网站如果要保存用户登录信息,方便用户以后再访问时,不用登录,那么就用Cookie否则就用Session吧.解决方案三:可以同时用啊.解决方案四:我一般用session解决方案五:反正MS有一个验证类..用什么我也搞不清..解决方案六:我一般后台管理用ses

浅析电子商务网站的身份认证技术

中介交易 SEO诊断 淘宝客 云主机 技术大厅 电子商务源于英文ELECTRONIC COMMERCE,指的是利用简单.快捷.低成本的电子通讯方式,买卖双方不谋面地进行各种商贸活动.随着电子商务的普及,人们已经习惯于网上购物,网上银行和电子支付等新兴事物,然而网络安全始终是制约电子商务发展的一个主要瓶颈. 一.电子商务的身份认证 在电子商务活动中,由于所有的个人和交易信息要在一个开放的网络(如Internet)进行传输和交换,故我们需要身份认证技术去验证客户的身份.身份认证一般基于客户拥有什么(

芯盾时代:致力于身份认证安全的领军者

本文讲的是芯盾时代:致力于身份认证安全的领军者 信息安全技术的关注点,一直在随着互联网的发展而变化. 互联网兴起时,作为流量聚集地的门户网站,主要面向大众提供信息,缺乏个性化色彩,防火墙.IDS/IPS.防病毒等作为主流安全防护技术足以应对黑客恶意攻击. 而随着移动互联网时代的发展,个人信息价值逐渐凸显,例如新闻.游戏.社交.金融等都是个性化定制,每个人在不同平台都有相应的一套账户密码体系,为适应这一变化,互联网安全技术正在发生本质的变化.具体来说,传统的网络安全应对的是攻防,即与黑客进行此消彼

azure-Azure 如何使用证书进行身份认证

问题描述 Azure 如何使用证书进行身份认证 我使用keytool生成证书后,上传到azure了,当在api调用时,仍然报身份认证失败. 解决方案 Hi, 我建议你阅读这篇文章:http://gauravmantri.com/2013/08/25/consuming-windows-azure-service-management-api-in-java/,文章主要分成如下几步: 1)创建一个Keystore 2) 导出管理证书 3)上传管理证书到Azure门户的Setting下 证书上传成功

门户网站微博今起实名制 不实名认证仅能看微博

"微博实名认证,有身份,也有自由",随着新浪微博先行一步打出这条标语,从今天起,玩微博就得实名制了.昨天,新快报记者了解到,北京市相关主管部门今天凌晨进驻新浪.网易.搜狐三大门户网站检查新微博系统的上线和运行情况.而在3月11日,腾讯微博也已经根据广东省的试点要求,对新注册用户实行实名制. 不实名认证仅能看微博 按照北京的相关规定,"通过微博客制作.复制.发布.传播信息内容,应当使用真实身份信息注册账号",而对使用微博浏览信息的用户,该规定则未作出限制.这意味着微博