【问题标题】:Keycloak invalid redirect URI when deployed on openshift with https使用 https 在 openshift 上部署时 Keycloak 无效的重定向 URI
【发布时间】:2019-01-09 03:56:31
【问题描述】:

我尝试在 openshift 上使用 postgresql 部署 jboss/keycloak。当我输入 keycloak 用户名/密码时,我使用的是安全路由。它将我重定向到显示无效参数的页面:redirect_uri。

keycloak 上的环境变量:

        - name: KEYCLOAK_USER
          value: admin
        - name: KEYCLOAK_PASSWORD
          value: admin
        - name: DB_VENDOR
          value: postgres
        - name: DB_PORT
          value: '5432'
        - name: DB_ADDR
          value: postgresql
        - name: DB_PASSWORD
          valueFrom:
            secretKeyRef:
              key: database-password
              name: postgresql
        - name: DB_DATABASE
          valueFrom:
            secretKeyRef:
              key: database-name
              name: postgresql
        - name: DB_USER
          valueFrom:
            secretKeyRef:
              key: database-user
              name: postgresql`

当我删除安全路由时,它工作正常。我怎样才能让它在https 中也能正常工作

【问题讨论】:

    标签: postgresql docker kubernetes openshift redhat


    【解决方案1】:

    我在 kubernetes 的 ssl 终止入口代理后面有 keycloak 7.0.0 docker。

    如果您无法以管理员身份首次登录

    首先,如here所述,将keycloak切换到http模式。

    update REALM set ssl_required = 'NONE' where id = 'master';
    

    第二,放

     - name: KEYCLOAK_ALWAYS_HTTPS
       value: "true"
    

    进入你的 keycloak docker env。

    第一步后,您将收到“无效参数:redirect_uri”错误。第二步将修复该错误,您将能够以管理员身份登录。

    您的入口应该只转发 http 端口。

    keycloak 的所有环境变量:

        - name: KEYCLOAK_HOSTNAME
          value: "your.keycloak.host"
        - name: KEYCLOAK_ALWAYS_HTTPS
          value: "true"
        - name: KEYCLOAK_USER
          value: "admin"
        - name: KEYCLOAK_PASSWORD
          value: "password"
        - name: PROXY_ADDRESS_FORWARDING
          value: "true"
    
        - name: DB_VENDOR
          value: postgres
        - name: DB_ADDR
          value: <host>
        - name: DB_DATABASE
          value: keycloak
        - name: DB_USER
          value: keycloak
        - name: DB_PASSWORD
          value: keycloak
    

    【讨论】:

    • 谢谢@Nataraj。您的回复有助于解决这个问题issues.redhat.com/browse/KEYCLOAK-13925
    • 不客气。令我惊讶的是,您必须使用两个缩写词:将 keycloak 切换为 http 模式并将 KEYCLOAK_ALWAYS_HTTPS 设置为“true”。然后它开始工作
    猜你喜欢
    • 2022-12-10
    • 2017-11-14
    • 1970-01-01
    • 2016-12-30
    • 2016-01-02
    • 2021-12-17
    • 1970-01-01
    • 2022-08-08
    • 1970-01-01
    相关资源
    最近更新 更多