WEB开发网
开发学院操作系统Linux/Unix 用 Kerberos 为 AIX 实现双因素身份验证 阅读

用 Kerberos 为 AIX 实现双因素身份验证

 2009-01-13 08:33:06 来源:WEB开发网   
核心提示: 步骤 9、10、11 —— 使用前面获得的 Kerberos 凭证和驻留在系统上的基于 GSS-API 的 OTP 应用服务器建立一个 GSS-API 安全上下文(假设这个 OTP 服务器已经通过 GSS-API 启用了 Kerberos),这涉及客户机登录模块和基

步骤 9、10、11 —— 使用前面获得的 Kerberos 凭证和驻留在系统上的基于 GSS-API 的 OTP 应用服务器建立一个 GSS-API 安全上下文(假设这个 OTP 服务器已经通过 GSS-API 启用了 Kerberos)。这涉及客户机登录模块和基于 GSS-API 的一次性密码应用服务器的握手过程。注意,这里的登录模块和 OTP 应用服务器都是使用 Kerberos 机制的基于 GSS-API 的应用程序。此握手过程在客户端执行 gss_init_sec_context() 和相关的 API,在服务器端执行 gss_accept_sec_context() 和相关的 API。成功地完成握手,就会通过底层的 Kerberos 安全机制建立一个已经经过身份验证的 GSS-API 安全上下文。这个上下文帮助客户机登录模块和基于 GSS-API 的服务器安全地相互通信。如果握手失败,登录程序就会终止。

步骤 12 —— 输入一次性密码。OTP 是用户拥有的身份验证信息(这与前面的 Kerberos 密码不同,用户需要记住 Kerberos 密码)。

步骤 13、14 —— 使用前面建立的 GSS-API 上下文对用户名和一次性密码进行加密,并把加密的信息发送给服务器。gss_wrap() 等 GSS-API 接口有助于信息加密,加密的信息只能由基于 GSS-API 的 OTP 服务器应用程序解密。

步骤 15、16 —— 基于 GSS-API 的 OTP 服务器应用程序解密信息,并向实际的 OTP 服务器提供用户名和一次性密码(使用前面建立的 GSS-API 安全上下文,gss_unwrap() 等接口有助于信息解密)。根据服务器数据库检查用户名和一次性密码,把检查结果(成功或失败)传递回基于 GSS-API 的 OTP 服务器应用程序。

步骤 17、18 —— 基于 GSS-API 的 OTP 服务器应用程序加密身份验证结果,把它发送回客户机登录模块/应用程序。

步骤 19 —— 客户机登录模块/应用程序解密并解释此结果。(使用前面建立的 GSS-API 安全上下文,gss_unwrap() 等接口有助于信息解密)。如果结果是成功,第二因素身份验证就完成了,允许用户登录进系统。否则,客户机登录程序终止,清除客户端和服务器端的 GSS-API 上下文。

注意:这些步骤并没有完全在 Kerberos 协议中引入双因素身份验证。如果需要双因素身份验证,第一因素需要采用常规的 Kerberos 身份验证,第二因素需要采用 OTP,那么可以实现这些步骤;或者在应用程序或安全系统的登录模块中实现它们。

结束语

本文主要讨论 GSS-API 和 Kerberos 的使用。此外,还强调了多因素身份验证系统的需求不断增长,以及如何在这种系统中使用 OTP。最后,解释了使用 Kerberos 和 OTP 实现双因素身份验证的步骤。

上一页  1 2 3 4 

Tags:Kerberos AIX 实现

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接