• 认证模式之Spnego模式


    Spnego模式是一种由微软提出的使用GSS-API接口的认证模式。它扩展了Kerberos协议,在了解Spnego协议之前必须先了解Kerberos协议,Kerberos协议主要解决身份认证及通信密钥协商问题。它大致的工作流程例如以下:

     

    ①client依据自己username向密钥分发中心KDC的身份认证服务AS请求TGS票证。

    AS生成一个TGS票证、查询相应用户的password,然后通过用户password将TGS票证加密,响应给client。

    ③client通过用户password解密TGS票证。假设password正确就能获取到TGS票证,然后用TGS票证去票证授予服务TGS请求服务票证。

    TGS将服务票证响应给client。

    ⑤client使用服务票证去訪问某服务,服务验证服务票据是否合法。

    ⑥验证通过,開始通信。

    在了解了Kerberos协议后,我们再来看看Spnego的认证过程是如何的。因为spnego扩展自kerberos协议。认证的核心流程一样,仅仅是在浏览器与webserver之间的http通信过程中嵌入认证流程。例如以下图:

     

    ①client浏览器向webserver发送http请求。

    ②server返回401状态码,响应头部加上 WWW-Authenticate:Negotiate

    ③用户通过浏览器输入username向AS请求TGS票证。

    AS生成TGS票证,然后查询用户password并用此password加密TGS票证,返回浏览器。

    ⑤浏览器使用用户password解密出TGS票证,并向TGS服务发起请求。

    TGS服务生成服务票证响应给浏览器。

    ⑦浏览器将服务票证封装到SPNEGO token中。并发送给webserver。

    ⑧server解密出username及服务票证,将票证发往TGS服务验证。

    ⑨通过验证。開始通信。

  • 相关阅读:
    软件工程实验二
    软件工程实验一
    软件工程作业--ATM自助银行服务系统
    软件工程作业—举例分析流程图与活动图的区别与联系
    第一个随笔
    机器学习 实验四 决策树算法及应用
    机器学习实验三 朴素贝叶斯算法及应用
    机器学习 实验二 K-近邻算法及应用
    飞机订票系统(文档)
    机器学习 实验一 感知器及其应用
  • 原文地址:https://www.cnblogs.com/mfmdaoyou/p/7241712.html
Copyright © 2020-2023  润新知