建设银行武威分行网站2016网站谷歌权重
建设银行武威分行网站,2016网站谷歌权重,什么是网站的推广,wordpress发布文章报错认证是一个在用户或者设备在访问一个受限的系统时#xff0c;鉴定用户凭据的过程#xff0c;即确认“你是谁”的问题。最常见的认证用户的方式是通过用户名和密码的形式进行校验#xff0c;目前存在多种校验方式#xff0c;本文将对其进行一个简单的对比#xff0c;使得大…认证是一个在用户或者设备在访问一个受限的系统时鉴定用户凭据的过程即确认“你是谁”的问题。最常见的认证用户的方式是通过用户名和密码的形式进行校验目前存在多种校验方式本文将对其进行一个简单的对比使得大家能够有一个较为完整的了解。
Basic认证
基本身份验证内置于 HTTP 协议中是最基本的身份验证形式。它使用 HTTP 标头以便在向服务器发出请求时提供用户名和密码
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ your-website.com
用户名和密码不加密。相反用户名和密码会用:符号连接起来形成一个字符串username:password。然后使用 base64 对该字符串进行编码。这种方法是无状态的因此客户端必须在每次请求时提供凭据。它适用于不需要持续会话的 API 调用和简单的身份验证工作流。
工作流 未经身份验证的客户端请求受限资源HTTP 401 未认证会返回一个值为 Basic 的 WWW-Authenticate 标头。WWW-AuthenticateBasic 头信息会使浏览器弹框显示用户名和密码供用户输入凭据。输入凭据后每次请求都会在标头中发送凭据AuthorizationBasic dcdvcmQ
优势
由于操作不多使用这种方法认证速度更快。易于实施。所有主流浏览器都支持。
劣势
Base64 与加密不同。它只是表示数据的另一种方式。base64 编码的字符串很容易被解码因为它是以纯文本发送的。这种特性会导致多种类型的攻击。因此HTTPS/SSL 是绝对必要的。每次请求都必须发送凭证。用户只能通过重写无效的凭据才能注销。
Diget认证
HTTP 摘要验证或摘要访问验证是 HTTP Basic验证的一种更安全的形式。主要区别在于密码是以 MD5 散列形式发送而不是以纯文本形式发送因此比基本认证更安全。
工作流 未经身份验证的客户端请求受限资源服务器生成一个称为 nonce 的随机值并发回一个 HTTP 401 未授权状态和一个 WWW-Authenticate 标头该标头的值与 nonce 一起为 Digest WWW-Authenticate Digest nonce44f0437004157342f50f935906ad46fcWWW-Authenticate Diget标头会使浏览器显示用户名和密码提示输入凭据后密码将被散列然后在每次请求时连同 nonce 一起在标头中发送 Authorization:Digest usernameusername,nonce16e30069e45a7f47b4e2606aeeb7ab62, response89549b93e13d438cd0946c6d93321c52有了用户名服务器就能获取密码将其与nonce一起散列然后验证散列是否相同.
优势
由于密码不会以纯文本形式发送因此比基本认证更安全。易于实施。所有主流浏览器都支持。
劣势
每次请求都必须发送凭据与Basic的方式一样。用户只能通过重写无效的凭据才能注销。与Basic认证相比密码在服务器上的安全性较低因为不能使用 bcrypt。易受中间人攻击。
基于Session的认证
使用基于会话的验证或会话 cookie 验证或基于 cookie 的验证时用户的状态存储在服务器上。它不要求用户在每次请求时提供用户名或密码。相反在登录后服务器会验证凭据。如果有效服务器会生成一个会话将其存储在会话存储区中然后将会话 ID 发回给浏览器。浏览器会将会话 ID 存储为 Cookie在向服务器发出请求时随时发送。
基于会话的身份验证是有状态的。每次客户端请求服务器时服务器都必须在内存中找到会话以便将会话 ID 与相关用户联系起来。
工作流 优势
后续登录更快因为不需要凭据。改善用户体验。相当容易实现。许多框架开箱即提供此功能。
劣势
它是有状态的。服务器会在后端跟踪每个会话。用于存储用户会话信息的会话存储需要在多个服务间共享以实现身份验证。正因为如此它不能很好地用于 RESTful 服务因为 REST 是一种无状态协议。即使不需要身份验证每次请求也会发送 Cookie。易受 CSRF 攻击 基于Token的认证
这种方法使用令牌而不是 cookie 来验证用户。用户使用有效凭证进行身份验证服务器返回一个签名令牌。该令牌可用于后续请求。
最常用的令牌是 JSON 网络令牌JWT关于JWT的详细介绍请查看JWT简介-CSDN博客
令牌无需保存在服务器端。只需使用其签名进行验证即可。近来由于 RESTful API 和单页面应用程序SPA的兴起令牌的采用率越来越高。
工作流 优势
它是无状态的。服务器不需要存储令牌因为可以使用签名进行验证。由于不需要查找数据库因此请求速度更快。适用于需要验证多个服务的微服务架构。我们只需在每一端配置如何处理令牌和令牌密文。
劣势
根据客户端保存令牌的方式它可能会导致 XSS通过 localStorage或 CSRF通过 cookies攻击。令牌不能删除。它们只能过期。这就意味着如果令牌被泄露攻击者可以滥用令牌直到过期。因此将令牌过期时间设置得很小很重要比如 15 分钟。刷新令牌需要设置为在到期时自动发放令牌。删除令牌的一种方法是创建一个将令牌列入黑名单的数据库。这会增加微服务架构的额外开销并引入状态。 在本文中我们介绍了多种不同的网络身份验证方法这些方法各有利弊。什么时候应该使用每种方法这取决于具体情况
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/85575.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!