论文部分内容阅读
除了有专用云平台,在互联网上还有很多开源解决方案,而OpenStack正是这其中的翘楚。目前,OpenStack用户登录首先要通过网络GUI中的认证,验证成功后,前端GUI服务器通过管理员凭据检索用户的凭据。然而,当GUI服务器在初始阶段认证用户时,后端OpenStack服务器始终无法参与到认证过程,这种缺乏集中认证的访问机制会导致多重策略决策点问题,不易于系统管理与实现。为此,本文采用OpenStack作为开源认证平台,在前端引入了灵活分散的身份认证服务,实现了应用于OpenStack的基于OpenID的身份认证机制,可以为单个用户提供多个服务点,使用户具有无缝单点登录体验,提高用户可用性。本文的主要工作概括如下:(1)分析了OpenStack现有身份认证机制在实用性、可扩展性和安全性方面的缺陷,进而提出了在OpenStack中应用OpenID身份认证机制的设计策略。然后,针对OpenID在OpenStack中的适应性问题,采用OpenID认证及服务的解决方法,重点分析设计了使用OpenID进行认证服务的消息传递流程。(2)讨论了身份认证原型系统实现需要解决的关键问题。重点阐述了在OpenStack中集成OpenID身份认证原型实现的过程。包括OpenStack构架的扩展及修正、预设配置、OpenID认证消息序列和流程、两个扩展的OpenID认证API设计以及带有OpenID的Dashboard/Django-Nova搭建。(3)最后讨论了所设计的OpenID身份认证机制的安全性和系统性能。并将其应用于Google、Yahoo等OpenID供应方。通过在这些平台上观测OpenID的认证请求和响应时间以及Nova-OpenID控制器和云控制器之间的内部时序,评估该认证机制的使用性能。