使用 JSON Web Token (JWT) 进行身份验证和授权

Posted

技术标签:

【中文标题】使用 JSON Web Token (JWT) 进行身份验证和授权【英文标题】:Using JSON Web Token (JWT) for both Authentication and Authorization 【发布时间】:2019-09-23 17:09:59 【问题描述】:

我有一个使用 AWS lambda 函数的无服务器 Web 应用程序。对于 JSON Web Token(JWT),您可以指定有效负载。是否可以指定像

这样的有效负载
user: example@any.com
authorization-level: admin

并使用生成的令牌不仅对用户进行授权,而且对用户进行身份验证? (例如,用户在技术上甚至不必登录即可访问 API 并获取个人信息,因为令牌有用户电子邮件,我们会验证并返回相关的有效载荷)

或者这是一个重大的安全漏洞?

【问题讨论】:

【参考方案1】:

只要不使用 NONE 进行签名算法,就可以同时使用 JWT 进行身份验证和授权。签名保证用户没有篡改payload。

【讨论】:

以上是关于使用 JSON Web Token (JWT) 进行身份验证和授权的主要内容,如果未能解决你的问题,请参考以下文章

JWT (JSON WEB Token)正确使用场景

JWT(Json Web Token)

深入浅出JWT(JSON Web Token )

JSON Web Token

在吗?认识一下JWT(JSON Web Token) ?

PHP有关JWT(Json Web Token)的那些事