【问题标题】:keycloak Invalid parameter: redirect_uri in quasar with ioskeycloak 无效参数:ios​​ 类星体中的 redirect_uri
【发布时间】:2022-08-24 12:49:19
【问题描述】:

我面临将 keycloak sso 重定向到移动应用程序(android 或 ios)的问题

    标签: vue.js keycloak hybrid-mobile-app quasar-framework


    【解决方案1】:

    如果您是该服务的管理员并且最近将 keycloak 更新到 18.0.0 或更高版本,这可能是原因/解决方案:

    解决方案

    如果您的应用程序直接使用链接来注销端点 redirect_uri 参数,您可能需要将其更改为 如上所述。考虑删除redirect_uri 参数 完全或将其替换为 id_token_hintpost_logout_redirect_uri 参数。

    原因

    以前的 Keycloak 版本支持自动注销 用户并通过打开注销端点 URL 重定向到应用程序 如 http(s)://example-host/auth/realms/my-realm-name/protocol/openid-connect/logout?redirect_uri=encodedRedirectUri。 虽然该实现很容易使用,但它有潜在的负面影响 对性能和安全性的影响。新版本有更好的支持 用于基于 OpenID Connect RP-Initiated Logout 的注销 规格。不再支持参数redirect_uri; 此外,在新版本中,用户需要确认注销。这是 可以省略确认并自动重定向到 包含参数 post_logout_redirect_uri 时的应用程序 连同参数 id_token_hint 和用于的 ID Token 登录。

    资源

    https://www.keycloak.org/2022/04/keycloak-1800-released#_openid_connect_logout

    【讨论】:

      【解决方案2】:

      @flavio.donze 重定向登录(不是注销)时我有同样的问题

      • 如果我将方案(例如:com.application.example://)放入“有效的重定向 URI“ 和 ”基本网址", keycloak 管理控制台给出 "A redirect URI is not a valid URI", 只接受http/https方案
      • 如果我将 redirect_uri 添加到登录链接(例如:https://{{keycloak-server}}/auth/realms/employee/protocol/openid-connect/auth?client_id=mobile-app&redirect_uri=com.application.example%3A%2F%2F&response_type=code&scope=openid),我会收到消息“Invalid parameter: redirect_uri

      【讨论】:

        猜你喜欢
        • 2018-01-03
        • 2021-11-16
        • 2020-04-02
        • 2018-01-03
        • 2019-05-03
        • 1970-01-01
        • 1970-01-01
        • 2013-08-30
        • 2019-06-06
        相关资源
        最近更新 更多