【问题标题】:How to configure keycloak-(nodejs-)connect to use PKCE?如何配置 keycloak-(nodejs-)connect 以使用 PKCE?
【发布时间】:2021-08-01 16:31:25
【问题描述】:

我有一个快速应用程序,我想用keycloak-connect 保护它。我还没有找到任何关于如何在这个中间件中使用 PKCE 设置授权代码流的文档或示例。

我认为我已正确配置 Keycloak (IDP),因为来自应用程序的身份验证失败,因为中间件既未传输 code_challenge 也未传输 code_challenge_method 参数,身份验证服务器拒绝:

auth_callback
    1
error
    invalid_request
error_description
    Missing parameter: code_challenge_method
state
    b720bdf4-daf8-4aa7-8525-be02404396a6

中间件配置:

{
    realm: 'SomeRealm',
    'auth-server-url': 'https://auth-server.url/auth/',
    'ssl-required': 'all',
    resource: 'Some-client-ID',
    'public-client': true,
    'confidential-port': 0,
} 

keycloak-connect 甚至能够利用这个流程吗?

【问题讨论】:

    标签: node.js express pkce keycloak-connect keycloak-nodejs-connect


    【解决方案1】:

    keycloak-connect 目前不支持 PKCE。

    查看我在https://keycloak.discourse.group/t/keycloak-connect-node-js-pkce/8285找到的讨论,有人建议切换到另一个支持PKCE的库(即node-openid-client

    关于服务器配置,我猜你关注了https://www.keycloak.org/docs/latest/server_admin/#advanced-settings 和关于 PKCE 的部分,所以应该可以按预期工作。

    【讨论】:

    • 我设法通过使用 express-openid-connect 库让它工作 :) 感谢您提供有关 keycloak-connect 和 PKCE 的信息
    猜你喜欢
    • 2020-02-08
    • 1970-01-01
    • 2017-03-06
    • 2021-01-10
    • 2019-04-04
    • 2021-03-24
    • 1970-01-01
    • 1970-01-01
    • 2018-12-11
    相关资源
    最近更新 更多