我正在构建REST API。 API运行JWT身份验证系统。
显然,这意味着安全路径需要有效的JWT令牌与Authorization Header中的请求一起传递。在每个jwt令牌里面我都有:
sub: 1 //_id
其中sub是当前经过身份验证的用户的ID。
我的问题是,当我传递此令牌时,是否还需要在请求正文中传递用户ID?例如,我有一个创建前提方法。这要求帖子正文包含如下名称和描述:
{
name: "Test Premises",
description: "Lorem Ipsum"
}
在这种情况下,API必须通过验证传递的令牌是否有效,然后取消编码并检索子字段来找到关联新场所的用户。
这个方法好吗?
有任何缺点吗?
我是否应该在身体中传递身份?
答案 0 :(得分:2)
这个方法好吗
是的,这是认证令牌的重点。
我是否应该在身体中传递身份?
如果您允许从客户端发送用户ID,则您的确实大安全漏洞如果另一个经过身份验证的用户知道(或欺骗)他们的ID,则可以代表另一个用户创建场所。