需要有关REST API的JWT身份验证的一些信息

时间:2020-06-27 09:53:13

标签: rest asp.net-core jwt jwt-auth

我需要保护我的REST API,因为我在简单的REST API上使用了JWT身份验证。完成JWT身份验证后,我需要回答一些问题,如果有人可以在这里帮助我,那将是很棒的。以下是问题:

  1. 基于令牌的身份验证比基本身份验证如何安全?
  2. 检查令牌有效性的标准是什么?
  3. JWT的令牌生成算法是什么?
  4. 在哪里/如何比较/验证令牌?

1 个答案:

答案 0 :(得分:0)

  1. 对于问题1:两者都不安全。实际上,两者都同样容易受到攻击(请对此进行更多研究)。 jwt的优点是您可以将授权证明存储在客户端上(是的,它的安全性由您的机密签名)。但是在会话的情况下,它们会占用服务器空间。
  2. 对于问题2:有效性过程取决于实施。您可以为令牌定义一个到期时间,并在令牌过期后使会话无效,或者您可以使用刷新令牌来发行新令牌。验证过程包括使用您的秘密对令牌进行解码(在将令牌发布给客户端之前,已使用该密钥对令牌进行了签名)。
  3. 对于问题3:编码中涉及的通用算法是base64,签名时使用的是带有密钥的HS256。其他算法也用于不同的实现中。
  4. 对于问题4:客户端应将每个受保护请求的令牌添加到服务器(说明客户端的授权)。服务器中的初始过程将是验证令牌并找到谁发送了请求。因此,验证过程是在服务器上完成的。

最后,您需要记住的是jwt是授权和证明的证明,您可以使用基于用户名密码的安全性,通过它可以颁发授权令牌。

相关问题