【问题标题】:JWT and KONG with custom authrizations具有自定义授权的 JWT 和 KONG
【发布时间】:2023-03-23 23:44:01
【问题描述】:

我在 KONG 上完成了这个教程 https://getkong.org/plugins/jwt/

我了解 JWT 和授权概念。我已经使用 Spring Boot 对 JWT 进行了原型设计,我可以在其中放置自己的键值,例如 {"authorizations":"role_admin, role_user"}。

在 Spring Boot 中很容易做到这一点,但我无法找到有关如何使用 KONG 做到这一点的信息。有人知道吗?

【问题讨论】:

    标签: jwt kong


    【解决方案1】:

    Kong 社区版只能处理身份验证过程(授予或拒绝客户访问)。

    授权过程(给定客户可以在您的应用程序中执行的操作)由您的应用程序或 https://getkong.org/plugins/ee-oauth2-introspection/ oauth2 内省插件处理,该插件仅是企业版

    如果用户通过了身份验证或kong代理的原始令牌头,您可以根据X-Consumer-Username请求头编写自己的授权服务器

    希望有帮助

    【讨论】:

      【解决方案2】:

      kong jwt 插件不支持向上游 api 发送自定义负载参数。但是,您似乎可以使用此插件(我尚未对其进行测试):

      https://github.com/wshirey/kong-plugin-jwt-claims-headers

      更新:

      如果您将 Kong 设置为转发所有标头,您将获得带有 jwt 令牌的原始授权标头。因此,您可以对 jwt 令牌进行 base64 解码,并在服务中手动提取您需要的声明/有效负载参数。

      【讨论】:

        猜你喜欢
        • 2020-01-28
        • 1970-01-01
        • 2017-11-16
        • 1970-01-01
        • 1970-01-01
        • 2017-04-15
        • 2019-06-26
        • 1970-01-01
        • 2012-10-25
        相关资源
        最近更新 更多