zoukankan      html  css  js  c++  java
  • Http客户端识别的方法

     
    Http用户识别的机制方法分为如下几种:
    1)、承载用户身份的HTTP首部
    2)、客户端IP地址跟踪,根据客户端IP地址进行识别
    3)、用户登录,用认证方式设别用户
    4)、使用胖URL,一种在URL中嵌入识别信息的技术
    5)、Cookie,一种持久化身份设别技术
     
    关于HTTP首部的相关信息在下列表格中列出。
    HTTP首部
     
    首部名称 首部类型 描述
    From 请求 用户的Email地址
    User-Agent 请求 用户的浏览器软件
    Referer 请求 用户是从这个页面上依照链接跳转过来的
    Authorization 请求 用户名和密码
    Client-IP 扩展 客户端的IP地址
    X-Forwarded-For 扩展 客户端的IP 地址
    Cookie 扩展 服务器产生的ID标签
     
      Form在HTTP首部一般是保存着用户的Email地址,但是由于网络安全的考虑,现在From首部都是由自动话的机器人或爬虫发送的,所以在From保存用户的Email的方式来识别用户是不可靠的。
      User-Agent就不用说了是用户浏览器软件的信息,这个是更不能识别用户的信息。
      Referer是记录用户从这个页面上依照链接跳转过来的,不能识别用户。
      Authorization 是用户登录使用的,  服务器向浏览器回送一个HTTP401 Login Required的响应代码,弹出登录框要求用户登录,然后浏览器会添加一个Authorization首部提供用户的登录信息。Web服务器无需被动的根据用户的IP地址来猜测用户的身份,他可以要求用户通过用户名和密码进行认证(登录)来显示地询问用户是谁。为了是Web站点的登录更加简单,HTTP中包含了一种内建机制,可以用WWW-Authenticate首部和Authorization首部想Web站点传送用户的相关用户名和密码。当登录成功之后浏览器就可以不断地在每条发往的请求中发送这个登录信息了,这样就可以确认用户了。
    Client-IP 地址的弊端
    1)、客户端IP地址描述是机器而非用户的特定标志,如果多个用户共享同一台计算机就无法识别
    2)、很多英特网服务上会为用户非配动态的IP地址。
    3)、很多用户通过网络地址转换(NAT)防火墙来访问网络内容。
    4)、HTTP代理或网关会打开新的到原始服务器的TCP链接,Web服务器看到的将是代理IP地址,而非客户端。
      胖URL 是指在URL后面跟上用户的唯一标示符,但是就从URL的美观性和其他准确方面,都不是很好的一个决策。
      Cookie是使用最多的保存用户唯一标识,同时记录用户登录状态的工具
    1)Cookie类型
      会话Cookie:一种临时Cookie,用户退出浏览器后就被删除
    持久Cookie:存储在硬盘上,用于维护用户周期性访问某个网站的配置文件或登录名
    会话Cookie与持久Cookie的区别是他们的过去时间。
    第一次请求亚马逊的网站
     
    image

    登录成功后

    image

    Cookie保存有session-id以及session-token等相关信息,服务器端可以使Session-Id生成和用户是一一对应并且同一个用户生成的是不可一更改的。

  • 相关阅读:
    Linuxboot:linux as UEFI,linux over UEFI
    在阿里云上安装黑苹果的一种设想
    Dsm as deepin mate(3):离线编辑初始镜像,让skynas本地验证启动安装/升级
    硬件融合的新起点:虚拟firmware,avatt的编译(2)
    将虚拟机集成在BIOS和EFI层,vavvt的编译(1)
    2013.08.19—2013.08.23周总结
    关于自我介绍
    Java入门系列:实例讲解ArrayList用法
    Hadoop文件的基本操作
    继承关系的理解
  • 原文地址:https://www.cnblogs.com/sunwubin/p/Http.html
Copyright © 2011-2022 走看看