JWT的sub
声明是可选的,但 feathersjs-authentication 不会让我将其设置为空白字符串或将其删除。
authentication
我之前能够为有效负载添加一个新值,hook
但更改sub
或尝试删除它不起作用。
app.service('/api/auth').hooks({
before: {
create: [
// You can chain multiple strategies
auth.hooks.authenticate(['jwt', 'local']),
hook => {
// I can add a new `SUB` value but this method doesn't work for `sub`
Object.assign(hook.params.payload, {SUB: hook.params.payload.userId})
}
],
...
我尝试向after
钩子添加相同的更改,但这也不起作用。拥有sub
as 的价值anonymous
对我来说似乎不合适。他们的文档甚至说:
subject: 'anonymous', // Typically the entity id associated with the JWT
然而,似乎没有一种直接的方法可以让sub
JWT 声明一个动态值。