张 婷,张 鑫,张新刚
1(南阳师范学院 计算机与信息技术学院,南阳 473061)
2(南阳理工学院 软件学院,南阳 473000)
在云计算时代,开放和共享数据的需求日益增加,为了便于用户将资源授权给第三方应用,开放授权的思想应运而生.开放授权旨在对权限进行细粒度的控制,并且保护用户的密码以及认证凭据.目前主要的Web2.0安全开放授权机制是:OAuth协议[1],OpenID协议[2]和IAM服务[3].
OAuth协议面向个人用户,可对资源进行开放授权.在线授权是其特点:OAuth让第三方无法触及到用户的敏感信息(如用户名与密码等),在认证用户的资源所有者身份后,即可以申请获得该用户资源的授权[4],从而安全便捷地访问用户的网络资源.
OpenID描述用户分布式方式身份认证的URI框架[5],解决了传统数字身份标识管理以及认证的问题.具有多种认证方式,例如用户名/密码的通用认证方式,或生物识别技术、智能卡等新型认证方式.服务提供商不用考虑认证机制,用户只需要注册获取 OpenID 账户,即可在多个网站间登录,而不需要重复注册,便于用户统一管理身份信息[6].
IAM服务涵盖两方面内容:用户信息管理和用户访问策略管理.IAM服务采用预先授权,用户在预先知道第三方应用所需资源请求的情况下,授权客户端使用REST API方式访问资源.
OAuth协议工作的基本流程[1]如图1所示.
(1)用户打开客户端后,客户端要求用户给予授权.请求会包含以下信息:用户的身份信息,要访问的资源路径和……