首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FusionAuth Lambdas

FusionAuth Lambdas
EN

Stack Overflow用户
提问于 2020-01-20 06:52:05
回答 1查看 90关注 0票数 0

我想使用FusionAuth的lambda特性来填充JWT,这取决于用户登录的应用程序,因为同一个用户可以登录到不同的应用程序,并在其中具有多个角色或组。我不希望JWT填充每个角色,是用户可以在应用程序中执行的角色操作(遵循NIST RBAC模型,它将是类似“read:attentions”或“delete:tests”的权限),因为它可能有几十个权限(syze原因),而不是我希望JWT填充用户在特定应用程序中拥有的组。我尝试使用空数组为roles属性赋值,但没有成功。我知道这个工具默认情况下不允许您更改roles属性,但是有一种方法可以删除它吗?

代码语言:javascript
复制
function populate(jwt, user, registration) {
    jwt.group = registration.data.group;
    jwt.roles = [];
}

无论如何,令牌仍然拥有角色,我如何删除它们?

代码语言:javascript
复制
{
  "aud": "xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx",
  "exp": xxxxxxx,
  "iat": xxxxxxx,
  "iss": "acme.com",
  "sub": "xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx",
  "authenticationType": "PASSWORD",
  "email": "xxxxxxx@mail.com",
  "email_verified": true,
  "applicationId": "xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx-xxxxxxx",
  "roles": [
    "read:attentions",
    "write:attentions"
  ],
  "group": "financer"
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-21 23:26:03

roles声明由FusionAuth保留,不能由Lambda修改。有一个open feature计划在即将发布的版本中完成,以放松这一限制。

交付此功能后,您可以选择删除或修改roles申请。

JWT Populate Lambda文档中概述了当前保留的声明。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59815138

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档