我正在尝试使用一个自定义的okta小部件来为我的下一个js应用程序进行登录过程。我在/api/auth下设置了一个Okta提供程序。当我使用该小部件登录时,我有一个redirectUri指向位于http://localhost:3000/api/auth/callback/okta的okta提供程序,以沿着其余的信息并创建一个会话。这有点复制了通常托管的okta登录小部件所做的事情。
我的问题是我在回调时收到这个错误,我不知道为什么。有什么想法吗?
我的代码可以在here中找到。
[next-auth][error][CALLBACK_OAUTH_ERROR]
https://next-auth.js.org/errors#callback_oauth_error Invalid Compact JWE JWEInvalid: Invalid Compact JWE
at compactDecrypt (C:\Users\miles\OneDrive\Documents\NextJs\nextjs-auth\node_modules\jose\dist\node\cjs\jwe\compact\decrypt.js:16:15)
at jwtDecrypt (C:\Users\miles\OneDrive\Documents\NextJs\nextjs-auth\node_modules\jose\dist\node\cjs\jwt\decrypt.js:8:61)
at Object.decode (C:\Users\miles\OneDrive\Documents\NextJs\nextjs-auth\node_modules\next-auth\jwt\index.js:64:34)
at async useState (C:\Users\miles\OneDrive\Documents\NextJs\nextjs-auth\node_modules\next-auth\core\lib\oauth\state-handler.js:62:17)
at async oAuthCallback (C:\Users\miles\OneDrive\Documents\NextJs\nextjs-auth\node_modules\next-auth\core\lib\oauth\callback.js:82:19)
at async Object.callback (C:\Users\miles\OneDrive\Documents\NextJs\nextjs-auth\node_modules\next-auth\core\routes\callback.js:50:11)
at async NextAuthHandler (C:\Users\miles\OneDrive\Documents\NextJs\nextjs-auth\node_modules\next-auth\core\index.js:186:28)
at async NextAuthNextHandler (C:\Users\miles\OneDrive\Documents\NextJs\nextjs-auth\node_modules\next-auth\next\index.js:23:19)
at async auth (webpack-internal:///(api)/./src/pages/api/auth/[...nextauth].ts:12:12)
at async Object.apiResolver (C:\Users\miles\OneDrive\Documents\NextJs\nextjs-auth\node_modules\next\dist\server\api-utils\node.js:184:9) {
name: 'OAuthCallbackError',
code: 'ERR_JWE_INVALID'
}
1条答案
按热度按时间jv4diomz1#
Okta没有发送加密的JWT。因此,似乎您的应用程序希望它是加密的(JWE),所以它失败了