HTTP Authentication(客户端请求合法性认证)

Myth丶恋晨 2022-05-30 09:37 316阅读 0赞

HTTP Authentication(客户端请求合法性认证)

最近公司项目架构设计时,需要考虑安全性问题。本章是关于 客户端请求合法性认证 的相关话题。

HTTP Authentication 请求认证

客户端发送请求时需认证此信息

作用:防止其他方式请求资源,保护资源不被窃取

方式一:Basic Authentication

  1. 当客户端发送请求时,服务器会进行认证
  1. 用户发送请求给服务器

  2. 服务器检查认证信息,未认证不能访问资源,发送需认证信息

  3. 用户输入用户名+密码 客户端将用户名+密码按指定算法加密再次请求服务器

  4. 服务器按指定算法解密 得出用户名密码进行校验

  5. 认证完成即可访问服务器资源

缺点:安全性不高,被拦截抓取WWW-Authenticate值风险大,且此值不会改变,容易被破解

方式二:Digest Authentication

  1. 用户发送请求给服务器

  2. 服务器检查认证信息,未认证不能访问资源,发送需认证信息+随机临时值nonce

  3. 用户输入用户名+密码 客户端将用户名+密码+nonce按指定算法加密再次请求服务器

  4. 服务器按指定算法解密 得出用户名密码进行校验

  5. 认证完成即可访问服务器资源

缺点:有可能被破解,但是安全性已经比基本认证好很多。应为每个时刻的nonce并不一样,若抓取某时刻的认证信息也无法进行有效访问

综上来看,方式二或许是更好的选择。若不太了解http,可查看相关http请求头,请求体,响应头等相关文档。

发表评论

表情:
评论列表 (有 0 条评论,316人围观)

还没有评论,来说两句吧...

相关阅读

    相关 kerberos客户认证

    项目最近使用kerberos认证,此前不太了解,网上查找资料看的也不是太懂,所以把本次经验记录一下. kerberos服务端是安装好的,在此不附具体安装过程,具体操作如...