Openid 密钥斗篷-用户经过身份验证后,将\u编码为\u令牌\u错误

Openid 密钥斗篷-用户经过身份验证后,将\u编码为\u令牌\u错误,openid,keycloak,Openid,Keycloak,我正在使用nodeJS密钥斗篷适配器,到目前为止,我的客户端应用程序已重定向到密钥斗篷登录 在尝试登录时,我在KeyClope日志中得到一个错误,如下所示: 12:07:12341警告[org.keydape.events](默认任务-30) type=CODE\u TO\u TOKEN\u ERROR,realmId=myrealm,clientId=client test, userId=xxx,ipAddress=xxx.xxx.xxx.xx, 错误=无效的密码,授权类型=授权密码, 代码

我正在使用nodeJS密钥斗篷适配器,到目前为止,我的客户端应用程序已重定向到密钥斗篷登录

在尝试登录时,我在KeyClope日志中得到一个错误,如下所示:

12:07:12341警告[org.keydape.events](默认任务-30) type=CODE\u TO\u TOKEN\u ERROR,realmId=myrealm,clientId=client test, userId=xxx,ipAddress=xxx.xxx.xxx.xx, 错误=无效的密码,授权类型=授权密码, 代码_id=xxx, client\u auth\u method=客户端机密

发送回我的express应用程序的错误消息显示为“无法获取授权代码”

有人能解释一下这到底意味着什么吗?我只能认为我在领域\客户端\用户设置中配置了错误的内容


多谢

这通常意味着发送回KeyClope以交换代币的代码无效或丢失。首先查看用户的日志消息type=LOGIN,确保该消息中的代码与登录消息中的代码id匹配,与代码TO TOKEN错误中的代码id匹配。

我找到了解决方案。如果您遵循以下指南:您将看到,当您为访问令牌(/realms/{realm name}/protocol/openid connect/token)交换访问代码时,您需要添加与请求访问代码时使用的相同的
redirect\u uri
。它现在适合我了

希望有帮助


Adrian

重定向URL应该完全相似。我使用以下重定向url来获取代码
http://example.com/frontend/
。在获取令牌时,我使用了以下URL
http://example.com/
对两个呼叫使用相同的URL解决了问题。

你好,Adrian,你能解释一下在哪里添加重定向uri吗?我将其作为查询参数添加到用于获取访问令牌的url中,但错误保持不变。我已将其作为查询参数添加。也许这对你有用,而其他原因导致了你的问题。@mindparse你能把这个答案标记为你想要的答案吗?非常感谢。