当前位置: 首页 > news >正文

用户认证技术与HTTP协议

一、用户认证技术概述

1.1 需求背景

在公共上网区,用户需要输入账号和密码才能上网,以确保网络行为可追踪。具体网络划分如下:

  • 172.16.1.2/24

  • FE-FC-FE-E9-9E-95

  • 172.16.1.0/24 IT部

  • 172.16.2.0/24 办公区

  • 172.16.3.0/24 公共上网区

当用户首次上网时,系统会要求提交用户名和密码信息,如果与本地或第三方服务器信息一致,则认证通过。这种认证方式适用于:

  • 对认证要求严格的场景

  • 需要记录具体账号上网日志的场景

  • 需要与现有第三方服务器结合认证的场景

二、HTTP协议基础

2.1 超文本(HyperText)

超文本是包含超链接(Link)和各种多媒体元素标记(Markup)的文本。这些超文本文件相互链接形成网状结构(Web),因此被称为网页(Web Page)。最常见的超文本格式是HTML。

2.2 URL(统一资源定位符)

URL用于唯一标识万维网中的文档,由三部分组成:

  • 协议

  • 主机和端口(默认80)

  • 文件名

2.3 HTTP协议

HTTP是一种应用层协议,按照URL指示将超文本文档从Web服务器传输到浏览器,实现超链接功能。

三、HTTP工作原理

3.1 请求/响应交互模型

用户点击URL为404 您访问的页面找不到了_腾讯网的链接后,浏览器和Web服务器执行以下动作:

  1. 浏览器分析URL

  2. 向DNS请求解析www.qq.com的IP地址

  3. DNS返回解析出的IP地址

  4. 浏览器与服务器建立TCP连接(80端口)

  5. 浏览器请求文档:GET/index.html

  6. 服务器响应并发送文档index.html

  7. 释放TCP连接

  8. 浏览器显示index.html内容

3.2 详细访问流程分析

  1. ​DNS请求​​:PC向DNS服务器222.246.129.80发出DNS QUERY请求,请求www.qq.com的A记录

  2. ​DNS回复​​:DNS服务器返回解析出的三条A记录:59.37.96.63、14.17.42.40、14.17.32.211

  3. ​TCP三次握手​​:PC向解析出的服务器地址发起TCP连接

  4. ​GET请求​​:PC向服务器发出GET请求,请求主页

  5. ​服务器响应​​:服务器回应HTTP/1.1 200 OK,返回主页数据

  6. ​连接断开​​:完成数据交互后,四次挥手断开连接

四、HTTP请求方法与状态码

4.1 HTTP请求方法

方法

含义

GET

请求读取一个Web页面

HEAD

请求读取Web页面首部

POST

附加一个命名资源

PUT

请求存储一个Web页面

DELETE

删除Web页面

TRACE

用于测试,要求服务器送回收到的请求

CONNECT

用于代理服务器

OPTION

查询特定选项

4.2 HTTP状态码

状态码

含义

示例

1xx

通知信息

100=服务器正在处理客户请求

2xx

成功

200=请求成功(OK)

3xx

重定向

301=页面改变了位置

4xx

客户错误

403=禁止的页面;404=页面未找到

5xx

服务器错误

500=服务器内部错误;503=以后再试

五、HTTP头部信息

5.1 请求头

说明

User-Agent

浏览器和平台信息

Accept

客户能处理的页面类型

Accept-Charset

客户可接受的字符集

Accept-Encoding

客户能处理的页面编码方法

Accept-Language

客户能处理的自然语言

Host

服务器的DNS名称(必需)

Referer

用户从哪个页面出发访问当前页面

Cookie

送回之前设置的Cookie

5.2 响应头

说明

Server

服务器信息

Content-Encoding

内容编码方式

Content-Language

页面使用的自然语言

Content-Length

以字节计算的页面长度

Content-Type

页面的MIME类型

Last-Modified

页面最后修改时间

Location

重定向到另一个URL

Set-Cookie

服务器希望客户保存的Cookie

六、密码认证实战分析

6.1 认证流程

  1. PC进行DNS解析

  2. PC向服务器发起TCP三次握手

  3. PC发出GET请求

  4. AC拦截GET请求,伪装成服务器回复HTTP 302重定向到认证页面

  5. 用户输入用户名和密码完成认证

6.2 密码认证配置步骤

  1. 创建用户组(如"公共区")

  2. 新增用户并设置本地密码

  3. 新增认证策略,选择认证方式为密码认证

  4. 在认证高级选项中勾选"未认证或被冻结时允许访问DNS服务"

6.3 认证问题排查

如果"密码认证页面"无法正常弹出,应检查:

  1. 网桥部署虚拟地址是否与内网冲突

  2. AC下接设备是否有限制

  3. 是否启用未认证用户允许访问DNS服务

  4. 访问HTTPS网站时是否启用HTTPS请求重定向

  5. 上网策略是否拒绝HTTP应用和DNS应用

  6. 防火墙规则是否拒绝80和53端口

七、用户与用户组管理

7.1 组织结构

SANGFOR AC提供树形组织结构,符合企业人员结构划分,同时可以对相同上网策略进行继承。每个用户有一个直属父组。

7.2 用户管理方式

  1. ​手动添加用户​​:可以一次新建一个或多个用户/组

  2. ​批量导入用户​​:将用户和组格式做成csv表格一次性导入

  3. ​认证策略自动添加​​:对于不需要认证或单点登录的用户

7.3 用户注销方式

  1. 在在线用户管理中强制注销

  2. 设置无流量时强制注销用户

  3. 设置每天强制注销时间

  4. 设置认证页面关闭时自动注销

  5. 设置MAC变动时自动注销

八、关键概念详解

8.1 DNS的A记录

将主机名解析成对应的IP地址。

8.2 Referer字段

浏览器向WEB服务器表明自己是从哪个网页/URL获得当前请求中的网址。

8.3 Location字段

WEB服务器告诉浏览器,试图访问的对象已被移到别的位置,到该头部指定的位置去取。

8.4 Server字段

响应头包含处理请求的原始服务器的软件信息。

http://www.dtcms.com/a/338265.html

相关文章:

  • 基于pychrm工具的python读取 USB 摄像头(实时+保存录像+摄像头信息打印+镜像)—— OpenCV库
  • 【React Hooks】封装的艺术:如何编写高质量的 React 自-定义 Hooks
  • 【高等数学】第九章 多元函数微分法及其应用——第七节 方向导数与梯度
  • Localhost和127.0.0.1
  • 数据库原理及应用_数据库基础_第2章关系数据库标准语言SQL_数据类型表操作(定义、操作和修改)
  • 终极方案!lightRag/graphRag离线使用tiktoken持续报错SSLError,不改源码,彻底解决!
  • MySQL和HiveSQL在查询上的区别
  • 上网行为管理
  • 用户认证与应用控制技术
  • 深入浅出 SQL:数据库操作的核心语言完全指南
  • 【c++】从灵活到规范:自定义消息机制的设计与实践
  • day10(练习题)
  • Three.js 动画循环学习记录
  • 6 webUI中图生图重绘方式--涂鸦、涂鸦重绘、局部重绘、上传蒙版重绘
  • 生成式引擎优化(GEO)AI搜索优化专家竞争力报告
  • 检测手绘图中不规则曲线交点的方法和一般规则线条交点的方法
  • rom定制系列------小米cc9机型 原生安卓15系统 双版线刷root 定制修改功能项
  • 力扣(分发糖果)
  • 【完整源码+数据集+部署教程】海洋垃圾与生物识别系统源码和数据集:改进yolo11-RVB
  • 深度优先遍历dfs(模板)
  • VS Code Copilot 完整使用教程(含图解)
  • 【笔记ing】考试脑科学 脑科学中的高效记忆法
  • 图论:Floyd算法
  • 从数学原理推导的角度介绍大语言MOE架构的本质
  • Linux系统WireShark抓取本地网卡报文
  • uv 现代化的虚拟环境管理工具
  • 量化线性层,将原始的fp16/bf16权重加载到Linear8bitLt模块中,调用int8_module.to(“cuda”)量化 (44)
  • 视频讲解:CatBoost、梯度提升 (XGBoost、LightGBM)对心理健康数据、交通流量及股票价格预测研究
  • Dubbo 的SPI
  • 深入解析RabbitMQ与AMQP-CPP:从原理到实战应用