1 介绍
为了理解云计算是什么,首先我们需要获得关于它的演变的想法。托夫勒认为人类三大文明浪潮:农业,工业和信息时代。 信息时代有几个子浪潮,我们正朝着云计算的方向发展。它指的是通过互联网或基于云基础设施提供服务。云计算将为市场带来几个优势,其中最重要的三项是:成本效益,安全性和可扩展性。我们主要关心的是讨论一些用于保护云用户的安全IAM协议,并总结出哪些协议最适合企业、哪些正在朝伤害云服务的方向发展。
最近,很多企业都在分析云技术在节约成本的应用,而忽略了云服务提供商(CSP)提供了什么级别的安全保障。只通过一个维度去衡量收益是很困难的,正如Richard Mayo 和 Charles Perng在IBM的一项研究中关于云计算Rate of Interest(Rol)的讨论。Rol基于表中的五个维度。
Saving Factor Cost Factor
Hardware 服务器减少数量/ 节省空间花费/电费节省
Sofeware OS减少/ 不同实施软件的支持和维护成本减少
自动配置 减少配置每项任务所需的小时数
生产效率 用户友好,减少员工等待IT支持时间
系统管理 提高管理员和支持人员的工作效率,并为每个管理员提供更多系统支持
下图中是一个案例结果,一个银行需要大量的server来管理业务,他们的业务比较适合云。
在不久的将来,云计算支出将快速增长,“美国政府2010年至2015年的项目将在云计算方向支出增加40%,年复合利率增长达700万美元。”成本效益是使用云计算的主要动机之一。但是我们应该考虑其他挑战,例如安全性。企业将上传其数据库,用户相关信息,并且在某些情况下,整个基础架构将托管在云中。企业对CSP的安全级别是否满意?
本文中我们主要关注数据安全方面,即云中的IAM。首先,我们将在第二节中概述当前云计算架构,在第三节中讨论安全和隐私需求。在了解需求之后,我们将在第四节详细讨论IAM挑战。此外,IAM生命周期和一些协议分别在第五节和第六节讨论。第七部分是IAM通过云服务的最佳实践,如身份管理即服务(IDaaS)。最后,在第八节中总结。
2 云计算结构
云计算系统类型
主要有三种系统类别:IaaS, PaaS, IaaS,下面详细介绍:
SaaS
传统软件用户将其安装到硬盘然后使用。在云中,用户不需要购买软件,而是基于服务付费。它支持多租户,这意味着后端基础架构由多个用户共享,但逻辑上它没每个 用户是唯一的。
PaaS
PaaS将开发环境作为服务提供。开发人员将使用供应商的代码块来创建他们自己的应用程序。该平台将托管在云中,并将使用浏览器进行访问。
IaaS
在IaaS中,供应商将基础架构作为一项服务提供给客户,这种服务以技术,数据中心和IT服务的形式提供,相当于商业世界中的传统“外包”,但费用和努力要少得多。主要目的是根据所需的应用程序为客户定制解决方案。表2显示了几个提供商当前使用的云计算服务。
Examples of Cloud Service
这里有一些云服务商及代表性的云服务举例。本文重点介绍提供安全环境的身份管理和技术。具体来说,IAM安全性可以通过石洞的协议和标准来实现。为了理解云中IAM安全性需求,本文将在下一节讨论云计算的安全性和隐私性。
3 CLOUD SECURITY AND PRIVACY
在云计算中,用户数据存储在服务提供商的数据中心而不是存储在用户的计算机上。这会让用户担心他们的隐私。此外转向集中式云服务将导致用户的隐私和安全漏洞。部署期间可能会发生安全威胁;也可能会出现新的威胁。云环境应该保持数据完整性和用户隐私,同时增强跨多个云服务提供商的互操作性。因此,我们想讨论云中的数据完整性,机密性,可用性。与数据安全相关的三个方面:
- Network Level
云服务提供商将监控、维护和收集有关防火墙、***检测/防御以及网络内的数据流信息。 - Host Level
收集系统日志文件是非常重要的,可以知道何时何地app被登录过 - Application Level
审计app日志,结果可能被用于事件响应或数字认证
在每个层面上都需要满足安全要求,以保护云中的数据安全性,如机密性,完整性和可用性,如下:
A. 机密性
确保云中用户数据不能被未授权访问。这可以通过考虑加密技术实现:对称或不对称加密算法,以及对称密码情况下的密钥长度和密钥管理。这都是依赖云服务提供商。EMC MozyEnterprise采用加密技术保护用户数据,而Amazon S3没有使用加密技术,这也依赖于客户意识到他们可以在上传信息之前加密。CSP应保证加密技术符合NIST(美国标准局)标准
B. 完整性
除了数据机密性之外,用户还关注数据的完整性。加密技术可以提供机密性,主要有两种方法提供完整性保障:消息认证码(MAC)和数据签名(DS)。在MAC中,它基于对称密钥提供附加数据的校验和。在DS算法中,它依赖于非对称密钥对。由于对称算法比非对称算法快的多,在这种情况下,我们认为MAC将提供完整性检查机制的最佳方案。研究表明,PaaS和SaaS不提供任何完整性保护,在这种情况下,确保数据完整性至关重要。
C. 可用性
另一个问题是通过授权的用户请求数据时的可用性。最强大的技术是通过避免威胁影响服务或数据的可用性来预防。监测针对可用性的威胁非常困难。以可用性为目标的威胁可能是网络的***,例如DDoS***或CSP的可用性,例如AWS S3在2008年遭受两个半小时停电以及2008年7月停电8小时。
在下一节中,我们将通过一些协议如SAML,OAuth以及二者之间的比较来讨论IAM实践,得出最佳方案。
4 IAM
身份和访问管理可以定义为通过规则和策略为企业资源和数据提供适当级别的保护的方法,这些规则和策略通过各种技术强制执行,例如强制登录密码,为用户分配权限和设置用户账户。但是,定义不限于企业资源,同样为用户个人信息和行为提供隐私和保护。大部分企业的基于不同的信息系统提供服务,管理这些用户信息并提供隐私和保护将是一大挑战。
管理数字身份是不够的,除非我们能描述与用户数字身份相关的两个主要用户属性:存在(在线)和位置。这三种特征用于当今的技术中。存在与实时通信系统相关联,例如:IM及VoIP,其中提供关于通信期间或通信之后用户状态的所有必须描述,无论他们是空闲还是活动,在线还是脱机,并且在某些情况下提供他们正在执行的一些特定任务,例如写文档或电子邮件。位置信息指用户的地理位置,如经纬度和高度,实体的IP可以指定的地理位置。
A. Challenges
任何企业在管理身份方面面临的主要挑战来自一个企业的用户群体-客户,雇主,合作伙伴等
根据市场业务及其功能,调整和维护组织内员工流动
在兼并和分拆情况下处理用户身份
避免身份,属性和凭证的重复
上述的挑战和其他一些挑战,让企业寻求几种和自动化的身份管理系统。这为我们引入联邦用户的概念。它是企业群体之间既有某种信任关系的合约,以便用户可以使用相同的标识从授信的组获得服务。核心职责是管理组织内部网络之外的服务访问控制。联邦支持单点登录(SSO)技术,用户不必多次登录或记住每个云特定服务的注册信息。
因此,我们想讨论当前IAM的实践,这对正在使用云计算的用户在提供认证、授权和审计有所帮助:
- 认证
云计算认证设计验证用户或系统的身份,例如,服务到服务的认证涉及对由另一个服务发来的请求信息验证。 - 授权
一旦认证过程成功,确定权限的过程就可以提供给合法用户,在这个阶段,系统将执行安全策略。 - 审计
这是审查和检验授权和认证记录的过程,以检查是否符合预定义的安全标准和政策。此外,它将有助于监测系统维护。
B. 云环境准备
为准备好云,企业需要准备IAM策略,结构,了解IAM生命周期并制定好哪些设备型号将支持联邦身份,要求如下:
- 定义身份信息的授权来源
- 为用户配置文件定义必需的属性
- 定义企业内部身份管理系统的当前结构
- 实施支持SSO技术的身份提供商,如OpenID,Microsoft CardSpace和Microsoft Novell Digital Me
- 身份提供商与公司内部构建目录兼容
为了管理数字身份,我们应该知道数字身份将通过哪些不同阶段,从而为该阶段提供合适的安全级别。这个讨论引导我们讨论IAM生命周期。在下一节我们将描述数字身份生命周期。
5 IAM 生命周期
在这个阶段,我们应该考虑身份生命周期所经历的不同阶段。一个重要的问题是:我们应该关注从用户的身份创建,使用和终止之后都发生了什么。根据Mather, Kumarasuamy and Latif,数字身份管理应该经过如下五个阶段:
- 配置和取消配置
在此过程中,将根据组织中的角色为用户分配必要的信息访问权限,并且在用户权限升级或降级的情况下,将分配适当的访问角色。 这个过程需要大量的时间,精力和工作人员来保持身份分配的权限尽可能充分。但是,使用身份管理即服务(IDaaS)等适当技术的云管理可以减轻组织的负担。 - 认证和授权
将需要一个中央身份验证和授权基础架构来构建满足组织业务目标的自定义身份验证和授权模型。拥有这样的模型将执行应该遵循的安全策略来保护应用程序和数据库。 - 自助服务
在身份管理中启用自助服务将加强身份管理系统。在这个阶段,用户可以重置密码,维护和更新自己的信息并查看查看能力。来自任何位置的组织信息。 - 密码管理
通过实施支持单点登录(SSO)访问云基服务的联合系统。密码管理包括如何使用MD5或SHA1as将密码存储在云数据库中。 - 检查和审计
在这个过程中,访问将被监控和跟踪,以确保系统中不存在安全漏洞。它还将帮助审计人员验证不同访问控制策略的执行情况,定期审计和报告。
6 IAM 标准和协议
以前,我们讨论了应用IAM结构的要求是什么。在下文中,我们将讨论一些标准和协议来管理云中的身份;然而,这里值得一提的是,IAM标准和协议应该由双方来考虑:组织和消费者。
在本文中,我们主要关心的是讨论组织如何使用协议来处理IAM。有几种协议和标准企业应该考虑,如:安全声明标记语言(SAML)和开放认证(OAuth)协议。下面将分别详细介绍,如下所述:
A. SAML
SAML 基于XML标准,用作交换两个实体(在云计算场景下,身份提供商IdP和云服务提供商CSP)之间的授权和认证属性的工具。SAML主要目标是通过互联网支持SSO。有不同版本的SAML,支持数字签名和加密,下面例子帮助理解用户, IdP和CSP之间基于SAML的SSO。
- 1,User 请求CSP的网页
- 2,CSP返回将用户浏览器重定向到idp网站
- 3,用户浏览器处理重定向,访问IDP
- 4,IdP和用户之间的身份验证协议进行身份验证。
- 5,IdP使用编码的SAML向用户做出响应。
- 6,用户浏览器将SAML响应发送到CSP访问URL
- 7,csp将信息返回用户
B. OAuth
OAuth是一个非常具有互动性和趣味性的协议,它允许一个CSP用户与另一个CSP共享他们的照片、文件等私人资源,而不会暴露用户名和密码等个人身份信息。它的主要目标是为安全API的授权访问提供开放的标准。从CSP的角度来看,它提供了一项服务,用户可以在不透露身份凭证的情况下访问托管在不同服务提供商处的可编程应用程序。例如,消费者(网站或代表用户访问存储文件的应用程序)从存储文件的服务提供商那里请求打印服务,结果打印将被执行而不透露文件所有者证书。
使用OAuth协议的用户和服务提供商之间的通信过程如下:
- 1,web app 访问Google账户认证服务请求OAuth request token
- 2,Google返回未授权请求token
- 3,web app重定向User到Google web 认证页面,授权请求token
- 4,用户访问Google认证页面,确认是否同意web app访问用户数据
- 5,如果用户拒绝访问,用户将被重定向到Google page
- 6,如果授权访问,用户将重定向到web app页面,并包含授权的请求token
- 7,授权的请求token会在web app和Google 认证服务之间进行交换
- 8,Google确认请求并发送Access Token
- 9,web app携带Access Token访问Google service用户数据
- 10,Google Service验证Access Token,通过后返回用户请求的数据
7 WHICH IS BETTER SOLUTION
很难说哪一个协议更好,它完全依赖于组织的行为来实现其业务目标。由于技术重叠,大多数CSP可能更愿意使用多个认证协议来提供更好的安全模型来控制其用户身份。SAML常用于企业和学校,用户只需登录一次,即可在内部或外部与其他网站进行身份验证。SAML是数字身份“企业”组的一部分,它拥有更多的经验,并且其库已经开发了很长时间。但是,在OAuth中,它属于“开放源代码”库,其中这些库是新的库,需要做更多工作来改进此类别的协议。从我们的角度来看,OAuth将成为研究人员改善它的非常有竞争力的环境。但是,SAML将成为在云中部署SSO和联盟的最佳选择。SAML已经成熟并且暴露于各种漏洞和威胁之中,因此我们建议将它作为部署IAM安全性和维护用户信息隐私的最佳解决方案。
8 IDENTITY MANAGEMENT-AS-A-SERVICE
由于云环境达到服务提供商可以提供任何服务(XaaS)的水平,这将导致我们考虑外包身份提供商,如服务(IDaaS)。然而,大多数组织可能倾向于外包合作伙伴和消费者身份管理,但他们有义务管理其员工身份和内部资源访问权限。该模型基于软件即服务(SaaS),支持多种服务,例如:账户配置,审计,密码管理和用户自助服务。通过采用这种架构,组织可以完全自动化用户账户的提供和审计。市场上有多种解决方案可以提供身份管理,例如:简化和Ping身份。
外包身份管理的主要优势是拥有一个多协议环境,其中包含SAML,OAuth等等,以便与不同的云服务联合系统进行交互。 在通过浏览器SSO访问任何基于云的服务之前,IDaaS将对用户进行身份验证。
与任何基于云的服务一样,任何组织都可以采用这种模式,这会有一点变化或者没有任何变化。IDaaS的主要缺点是企业不知道CSP的结构,实施和服务。此外,生成的有关用户的报告可能与组织要求不匹配,即使有编辑报告的功能,它也会限制为CSP功能。
9 总结
总之,云计算对于商业世界来说是非常有吸引力的环境,因为它以非常经济高效的方式提供所需的服务。但是,确保和加强安全和隐私实践将吸引更多企业进入云计算的世界。应适当实施IAM,确保云计算管理的相互认证,授权和审计。我们主要关心的是讨论一些用于保护云用户的安全IAM协议,并总结出哪些协议最适合正在使用云服务的组织。
转载于:https://blog.51cto.com/14046599/2371859