首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

浅谈一下前后端鉴权方式 ^.^

虽然本人现在从事前端开发,但是之前一直PHP 全栈,所以对前后端鉴权机制也有一定的了解,就找些资料简单记录一下吧。...基本流程 发送请求:客户端向服务器请求数据,请求的内容可能是一个网页或者是一个 ajax 异步请求,此时假设客户端尚未被验证(服务器验证并判断是否返回 401),则客户端提供如下请求至服务器。...Get /index.html HTTP/1.0 Host: www.google.com 服务器返回 401:服务器向客户端发送验证请求代码 401,WWW-Authenticate: Basic...在后续请求中,服务器会一直根据 sid 认证,如果验证通过,则继续处理。一旦用户登出,服务端和客户端同时销毁该会话。...服务端收到请求,然后去验证客户端请求里面带着的 Token,如果验证成功,就向客户端返回请求的数据(从数据库查询签发的 Token,并查询用户数据。) ,如果不成功返回 401 错误码,鉴权失败。

31910
您找到你想要的搜索结果了吗?
是的
没有找到

如何解决常见的 HTTP 错误代码

清除浏览器的缓存和 cookie 可以解决这个问题 由于浏览器故障导致请求格式错误 手动形成 HTTP 请求时由于人为错误导致的畸形请求(例如使用curl不正确) 401 授权 401 状态代码或Unauthorized...错误意味着尝试访问资源的用户尚未经过身份验证正确进行身份验证。...返回 401 Unauthorized 错误的示例场景是,如果用户尝试访问受 HTTP 身份验证保护的资源,如本 Nginx 教程中所示。...在这种情况下,用户将收到 401 响应代码,直到他们向 .htpasswdWeb 服务器提供有效的用户名和密码(文件中存在的用户名和密码)。...此错误的最常见原因是服务器配置错误(例如格式错误的 .htaccess文件)或缺少包(例如,在没有正确安装 PHP 的情况下尝试执行 PHP 文件)。

3.7K20

HTTP 响应状态码全解

当我们进行 API 测试时,通常首先会检查 API 调用返回的响应的状态码。这就要求我们必须熟悉那些最常见的 HTTP 状态码,以便我们能够更快地识别问题。...304-未修改 300-多种选择 303-参见其他 305-使用代理 307-临时重定向 308-永久重定向 4×× 客户端错误 4xx(客户端错误)类状态代码表示客户端似乎出错了。...401 未经授权 401授权)状态码表示该请求尚未应用,因为它缺少目标资源的有效身份验证凭据。 403 禁止 403(禁止)状态代码表示服务器理解请求但拒绝授权。...请求的范围不满足 417 预期失败 418 是个茶壶,超文本咖啡罐控制协议,但是并没有被实际的HTTP服务器实现 421 错误的请求 422 不可处理实体 423 锁定 424 失败的依赖关系 426...501 实施 505 不支持HTTP版本 506 变体也协商 507 存储不足 508 检测到循环 510 扩展 511 需要网络认证 599 网络连接超时错误 本文翻译自 https://devqa.io

2.7K30

Nginx code 状态码说明

比如说,client一直在发起请求,客户端因为某些原因处理慢了,没有在规定时间内返回数据,client认为请求失败,中断这次请求,然后再重新发起请求。...发生错误,一般的几种情况: web脚本错误,如php语法错误,lua语法错误等。...404:请求的网页不存在 499:客户端主动断开了连接。500:服务器遇到错误,无法完成请求。502:服务器作为网关或代理,从上游服务器收到无效响应。...401授权) 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。 403 (禁止) 服务器拒绝请求。404 (未找到) 服务器找不到请求的网页。...407 (需要代理授权) 此状态代码与 401授权)类似,但指定请求者应当授权使用代理。408 (请求超时) 服务器等候请求时发生超时。 409 (冲突) 服务器在完成请求时发生冲突。

4.5K30

HTTP协议状态码详解(HTTP Status Code)

401   (授权) 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。 403   (禁止) 服务器拒绝请求。...407   (需要代理授权) 此状态代码与 401授权)类似,但指定请求者应当授权使用代理。 408   (请求超时)  服务器等候请求时发生超时。...502   (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。 503   (服务不可用) 服务器目前无法使用(由于超载或停机维护)。 通常,这只是暂时状态。...不太清楚为什么没有 430 状态码,而是直接从 429 跳到 431,尝试搜索但没有结果。...如果客户端使用HTTP请求来查找文档(可能是JSON),网络将会响应一个登录页,这样你的客户端就会解析错误并导致客户端运行异常,在现实中这种问题非常常见。

1.6K80

HTTP协议状态码详解

4xx(请求错误) 这些状态代码表示请求可能出错,妨碍了服务器的处理。 代码 说明 400 (错误请求) 服务器不理解请求的语法。 401授权) 请求要求身份验证。...407 (需要代理授权) 此状态代码与 401授权)类似,但指定请求者应当授权使用代理。 408 (请求超时) 服务器等候请求时发生超时。...502 (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。 503 (服务不可用) 服务器目前无法使用(由于超载或停机维护)。 通常,这只是暂时状态。...不太清楚为什么没有 430 状态码,而是直接从 429 跳到 431,尝试搜索但没有结果。...如果客户端使用HTTP请求来查找文档(可能是JSON),网络将会响应一个登录页,这样你的客户端就会解析错误并导致客户端运行异常,在现实中这种问题非常常见。

62530

RESTFUL API 安全设计指南

2.2 API KEY API Key就是经过用户身份认证之后服务端给客户端分配一个API Key,类似:http://example.com/api?...服务端收到该请求后,首先验证apikey,是否存在,存在则获取该apikey的securitykey,接着验证timestrap是否超过时间限制,可依据系统成而定,这样就防止了部分重放攻击,途中的restapi...rest api接口一般会用到GET,POST,PUT,DELETE,实现的方法则直接返回方法不允许,对于POST,PUT方法的数据采用json格式,并且在进入逻辑前验证是否json,不合法返回json...php Route::filter('api.limit', function() { $key = sprintf('api:%s', Auth::user()->api_key); // Create...有一个统一的出错接口,对于400系列和500系列的错误都有相应的错误码和相关消息提示,如401授权;403:已经鉴权,但是没有相应权限。

1.5K20

Nginx code 状态码说明

比如说,client一直在发起请求,客户端因为某些原因处理慢了,没有在规定时间内返回数据,client认为请求失败,中断这次请求,然后再重新发起请求。...发生错误,一般的几种情况: web脚本错误,如php语法错误,lua语法错误等。...404:请求的网页不存在 499:客户端主动断开了连接。 500:服务器遇到错误,无法完成请求。 502:服务器作为网关或代理,从上游服务器收到无效响应。...401授权) 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。 403 (禁止) 服务器拒绝请求。 404 (未找到) 服务器找不到请求的网页。...407 (需要代理授权) 此状态代码与 401授权)类似,但指定请求者应当授权使用代理。 408 (请求超时) 服务器等候请求时发生超时。 409 (冲突) 服务器在完成请求时发生冲突。

4.3K80

前端开发面试题答案(五)

一般情况下是指私钥用于对数据进行签名,公钥用于对签名进行验证; HTTP网站在浏览器端用公钥加密敏感数据,然后在服务器端再用私钥解密。 6、WEB应用从服务器主动推送Data到客户端有那些方式?...400 Bad Request 服务器无法理解请求的格式,客户端不应当尝试再次使用相同的内容发起请求。 401 Unauthorized 请求授权。...):请求包含错误语法或不能正确执行 400——客户端请求有语法错误,不能被服务器所理解 401——请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用 HTTP...HTTP 401.5 - 授权:ISAPI 或 CGI 授权失败 402——保留有效ChargeTo头响应 403——禁止访问,服务器收到请求,但是拒绝提供服务 HTTP 403.1...eg:输入了错误的URL 405——用户在Request-Line字段定义的方法不允许 406——根据用户发送的Accept拖,请求资源不可访问 407——类似401,用户必须首先在代理服务器上得到授权

1.7K20

REST API安全设计指南

2.2 API KEY API Key 就是经过用户身份认证后,服务端给客户端分配一个 API Key,类似:http://example.com/api?key=dfkaj134。...服务端收到该请求后,首先验证 api_key 是否存在,存在则获取该 api_key 的 security_key,接着验证 timestrap 是否超过时间限制,可依据系统成而定,这样就防止了部分重放攻击...REST api 接口一般会用到 GET、POST、PUT、DELETE,实现的方法则直接返回方法不允许,对于 POST、PUT 方法的数据采用 json 格式,并且在进入逻辑前验证是否 json,不合法则返回...在 php 中可以使用 APC。Alternative PHP Cache (APC) 是一个开放自由的 PHP opcode 缓存。...有一个统一的出错接口,对于 400 系列和 500 系列的错误都有相应的错误码和相关消息提示,如 401授权;403:已经鉴权,但是没有相应权限。

1.8K20

漏洞挖掘之爆破的艺术

(这个验证码其实可以搞成拒绝服务众测好像不收也没提) ? 重点来了api.php有没有觉得有东西搞了。来我们来爆破了,这回爆破什么呢,爆破参数,这里呢有两种爆破 一种是api.php?...m={} 一种是api.php?{}=xx ? 这是当时爆破的图我们可以从长度状态码来看这个参数是否存在、而且当我们爆破出如下参数时/ api.php?...后面还陆续爆破出多个参数、两处授权页面 ? ? 一处反射型XSS ? 一处越权 ?...oxo5 暴力破解手册的重要性 再给你们讲一个一直强调的点,如果遇到一个登录框的测试有说明文档的一定要看、里面有很多东西可能用到,说几个例子 ?...想到的是这账号肯定是有规律的、于是设置了一个爆破 ? 成功爆破出大量账号、进去后又发现一处越权 ? oxo6 暴力破解偶遇401认证 在爆破 tomcat 时 ?

1.1K20

HTTP状态码列表

例如:请求的资源已经移动一个新地址、常用302(意味着你请求我,让你去找别人),307和304(不给你这个资源,自己拿缓存) 400499:客户端的请求有错误,常用404(意味着你请求的资源在web...[30] 如果错误发生时客户端正在传送数据,那么使用TCP的服务器实现应当仔细确保在关闭客户端与服务器之间的连接之前,客户端已经收到了包含错误信息的数据包。...[31] 401 Unauthorized(RFC 7235) 参见:HTTP基本认证、HTTP摘要认证 类似于403 Forbidden,401语义即“认证”,即用户没有必要的凭据。...如果特定开发人员已超过请求的每日限制,Google Developers API会使用此状态码。[34] 403 Forbidden 服务器已经理解请求,但是拒绝执行它。...407 Proxy Authentication Required(RFC 2617) 与401响应类似,只不过客户端必须在代理服务器上进行身份验证

68330

HTTP使用BASIC认证的原理及实现方法

HTTP服务器在每次收到请求包后,根据协议取得客户端附加的用户信息(BASE64加密的用户名和密码),解开请求包,对用户名及密码进行验证,如果用 户名及密码正确,则根据客户端请求,返回客户端所需要的数据...;否则,返回错误代码或重新要求客户端提供用户名及密码。...客户端向服务器请求数据,请求的内容可能是一个网页或者是一个其它的MIME类型,此时,假设客户端尚未被验证,则客户端提供如下请求至服务器: Get /index.html HTTP/1.0 Host:www.google.com...服务器向客户端发送验证请求代码401,服务器返回的数据大抵如下: HTTP/1.0 401 Unauthorised Server: SokEvo/1.0 WWW-Authenticate: Basic...当符合http1.0或1.1规范的客户端(如IE,FIREFOX)收到401返回值时,将自动弹出一个登录窗口,要求用户输入用户名和密码。 4.

2K30

渗透测试TIPS之Web(一)

; 4、测试客户端的任何程序,如flash、acticex和silverlight; 5、在测试文件上传时,可以上传双扩展名(.php5.jpeg)和使用空字节(.php5%00.jpeg) 6、尝试测试...; 20、验证X-Content-Type-Options; 21、验证http公钥固定; 测试认证 1、利用burp查看认证信息; 2、401爆破 $ nmap -d -vv -p 80 --script...http传输; 12、cookie是否添加httponly、secure属性; 13、测试oauth身份验证,确保在后端是由google或第三方生成的id令牌: https://developers.google.com...; 5、测试pc应用和手机应用; 6、测试客户端输入验证; 7、应用程序是否尝试将逻辑基于客户端,比如表单是否具有可以使用浏览器编辑的最大长度客户端; 8、测试厚客户端组件(java、activex、flash...可能会缓存攻击者控制的恶意响应; 4、使用多个主机头或x-forwarded-host,可能会导致缓存加载攻击者的站点并为其提供服务; 5、dns缓存中毒:攻击者对缓存的dns服务器创建虚假响应,所有用户在TTL之前都会收到错误的响应

2K20

【RESTful】RESTful API 接口设计规范 | 示例

400 Bad Request //客户端请求有语法错误,不能被服务器所理解 401 Unanthorized //服务器收到请求,但是服务器拒绝提供服务 404 Not Found //请求资源不存在...状态码:当客户端发送一个请求时,服务端应当响应什么状态码 错误处理:如当发现客户端传入的参数有问题时,该返回什么样的状态信息。...401 Unauthorized 表示用户没有认证,无法进行当前操作 403 Forbidden 表示用户的访问是被禁止的 422 Unprocesable Entity 当创建一个对象时,发生一个验证错误...安装DHC 谷歌浏览器插件: 名为: 基于REST的Web服务客户端 先下载: http://chromecj.com/web-development/2015-03/401.html 或在谷歌商店...本地开发环境搭建 安装PHP环境集成包 XAMPP 或 upupw 添加虚拟主机,以及取消跨站目录限制 httpd-vhosts.conf文件中 找到添加的域名,将php_admin_value

1.2K20

Spring Security 实战干货: 401和403状态

前言 最近几篇对Spring Security中用户认证流程进行了分析,同时在分析的基础上我们实现了一个验证码登录认证的实战功能。...今天来谈谈两个和认证授权息息相关的两个状态401和403以及它们如何在Spring Security融入体系中的。 2. 401 授权 在RFC 7235[1]中找到了相关的表述。...当客户端收到401状态码时,表明了该请求因为缺乏了被信任的认证凭据而被拒绝访问目标资源。 如果用户在请求中携带了认证凭据,那么401响应表明该凭据是授信的,不能访问目标资源。...服务端的态度是用户应当再次进行尝试,并且应该引导客户端至少再尝试一次。比如,用户输错了密码,服务器应该告诉用户密码错误,并再次进行尝试。 3. 403 禁止访问 表述参见RFC 7231[2]。...403状态代码表示服务器已理解了客户端的请求,但拒绝授权。如果请求中提供了身份验证凭据,则服务器认为它们不足以授予访问权限。客户端不应自动携带相同的重复证书再次请求。

3.1K30

知识分享之规范——HTTP 状态码

5xx:服务器错误——服务器对这些错误状态代码负责。 1xx 状态代码 [信息] 状态码 描述 100 继续 临时回应。向客户端指示已收到请求的初始部分并且尚未被服务器拒绝。...4xx 状态码(客户端错误) 状态码 描述 400 错误请求 由于语法不正确,服务器无法理解该请求。客户端不应该在没有修改的情况下重复请求。 401未经授权 表示请求需要用户认证信息。...407 需要代理身份验证 表示客户端必须首先通过代理验证自己。 408 请求超时 表示服务器在服务器分配的超时期限内没有收到来自客户端的完整请求。...5xx 状态码(服务器错误) 状态码 描述 500内部服务器错误 服务器遇到了阻止它完成请求的意外情况。 501 实施 服务器不支持HTTP方式,无法处理。...510 扩展 服务器需要对请求进行进一步扩展才能完成它。 511 需要网络身份验证 表示客户端需要进行身份验证才能获得网络访问权限。

1.7K30
领券