当前位置: 首页 > 知识库问答 >
问题:

kuzzle定制策略的问题

璩珂
2023-03-14

在构建自定义身份验证策略时,我使用创建钩子在需要时创建我的用户。

一切都很顺利,包括我的钩子:

    async create(_request: any, credentials: { id: string }, kuid: string) {
      // Create user credential
      const [err] = await to(
        this.ssoRepository.create(
          {
            _id: credentials.id,
            kuid,
          },
          { refresh: "wait_for" },
        ),
      );

      if (err) {
        throw new this.context.errors.InternalError(`Error while creating SSO credentials for user ${kuid}.`);
      }

      return { _id: credentials.id };
    }

然后我用它来消耗

// If user not exists, we create the user
let createdUser: any;
[err, createdUser] = await to(
  this.kuzzle.query({
    action: "createUser",
    body: {
      content: {
        profileIds: ["default"],
        ...ssoUser,
        courses: [],
        favorites: [],
      },
      credentials: {
        SSO: {
          id: ssoUser!.id,
        },
      },
    },
    controller: "security",
    refresh: "wait_for",
  }),
);

if (err) {
  throw new this.context.errors.InternalError(err.message);
}

return { kuid: createdUser._id };

但我有以下错误

代码:0错误名称:“未记录错误”消息:“无法使用策略”SSO“登录

知道我为什么会有这样的问题吗?

问候

共有1个答案

景子安
2023-03-14

我不得不用

return { kuid: createdUser.result._id };

而不是

return { kuid: createdUser._id };

因为kuzzle正在包装创建的用户内容

 类似资料:
  • 用于自定义设置隐藏虚拟机、镜像菜单功能以及配置第三方回调地址。 策略定义用于定义策略的具体内容,如设置隐藏虚拟机、系统镜像菜单功能以及配置第三方回调地址等。策略配置完成后,还需要将策略分配到具体项目、域或全局,策略分配成功后将出现在策略分配列表。即策略在具体的应用范围内才会生效。当策略在不同应用范围内有冲突时,最小应用范围的策略生效。 入口:在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击

  • 我试图生成一个简单的axios请求,如下所示(我正在使用vue.js): 但我得到以下错误: 我已经尝试过添加下面的头,但仍然不起作用 但是如果我尝试通过浏览器发出请求(简单地通过复制和粘贴url),一切都很好。 有人知道怎么帮我吗?非常感谢!

  • 我正在尝试使用Java读取excel(.xls和.xlsx)。我能正确地阅读xlsx。但当我使用以下代码读取xls文件时 我犯错了 java.lang.nosuchmethoderror:org.apache.poi.hssf.usermodel.hssfrow.getcell(ilorg/apache/poi/ss/usermodel/row$missingcellpolicy;)log/apa

  • 我们正在开发一个Spring Boot程序和angularjs应用程序。我们使用JWT令牌和LDAP身份验证。LDAP身份验证后,service生成jwt令牌并发送给angular,从下一次开始,angular将令牌和用户名发送回service,angular将令牌存储在会话存储中。 有人能解决这个问题吗????

  • 我正在尝试为AWS IAM用户设置访问特定AWS SQS队列的用户策略。 当我尝试使用以下策略时,我得到错误AccessDenied。 但是,当我尝试使用相同的策略时,仅将arn的queue_name部分替换为*,它可以工作: 当试图限制对特定队列的访问时,会出现什么问题?

  • 本节解释Mixer的角色和总体架构。 背景 后端基础服务为构建的服务提供各种支持功能。这些功能包括访问控制系统、计量收集捕获系统、配额执行系统、计费系统等。传统服务会直接和这些后端系统打交道,与后端紧密耦合,并集成其中的个性化语义和用法。 Mixer在应用程序代码和基础架构后端之间提供通用中介层。它的设计将策略决策移出应用层,用运维人员能够控制的配置取而代之。应用程序代码不再将应用程序代码与特定后