我有一个使用开箱即用的Identity Server 3 / javascript OIDC客户端的网站,该客户端需要用户名/密码身份验证请求来锁定网站上的页面 . 这很有效 .

我现在需要能够让客户告诉我们哪个用户在他们的平台上进行了身份验证,并将其映射到我们平台上的用户/身份,并将该信息传递到现有网站,而无需提示输入用户名/密码 .

我目前正在使用RequestCustomGrant来生成access_token,并且我能够将该数据映射到我们系统中的用户/身份,并使用自定义验证器生成有效的access_token .

然后我尝试使用类似于https://xxxx/#access_token=eyJ0e.....&token_type=Bearer&expires_in=3600&scope=ps-api的哈希片段来创建一个URL

我遇到的问题是oidc客户端似乎想要一个access_token和一个id_token以及一些状态信息 . 如果我也制作id_token,我会收到错误

oidc-client.min.js:3未捕获(在promise中)错误:在e.t.processSigninResponse(oidc-client.min.js:3)中没有响应状态

是否可以使用oidc-client及其UserManager来获取访问令牌,然后验证它,回调userinfo_endpoint来制作id_token并在用户存储中保留它,或者这是一种不好的方法?

我想知道自定义授权是否是错误的方法以及首选方法是处理原始身份验证机制使用某种自定义方法的情况,我们希望验证该请求并生成可由我们的Web使用的新令牌所有人都期望JWT令牌的应用程序和API .