Keycloak / Nginx.Не могу получить доступ к странице администратора (Неверный параметр: redirect_uri) - PullRequest
0 голосов
/ 09 декабря 2018

edit: Использование PROXY_ADDRESS_FORWARDING = true в моем файле docker env, как предположил Ян, решило мою проблему.

Я пробовал Keycloak налокальный хост и он успешно работал.Сейчас я пытаюсь создать домен с действительным доменом https и не могу получить доступ к странице входа.Я получаю ошибку redirect_uri.Что мне не хватает?

Когда я захожу на домашнюю страницу, это работает.Но, получая доступ к странице администратора, я получаю перенаправление.

https://keycloak.myDomain.com/auth/realms/master/protocol/openid-connect/auth?client_id=security-admin-console&redirect_uri=https%3A%2F%2Fkeycloak.myDomain.com%2Fauth%2Fadmin%2Fmaster%2Fconsole%2F&state=ef6b5ac7-f2f4-49c1-81de-6c0d4cf18e5f&response_mode=fragment&response_type=code&scope=openid&nonce=a46f44b8-9428-4019-8d18-e8e58e896ef2

Я использую простой образ докера без конфигурации.

services:
  postgres:
      image: postgres:9.4
      volumes:
        - ./init.sql:/docker-entrypoint-initdb.d/init.sql
        - postgres_data:/var/lib/postgresql/data
  keycloak:
      image: jboss/keycloak
      env_file:
       - docker-variables.env
      ports:
        - 9000:8080
      depends_on:
        - postgres

И я использую Nginx с этим conf:

server {
server_name  keycloak.myDomain.com;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;

location / {
      proxy_pass http://0.0.0.0:9000;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

      # enable this if and only if you use HTTPS
      proxy_set_header            X-Forwarded-Proto https;
      proxy_set_header            Host $http_host;
      proxy_set_header            X-Real-IP $remote_addr;
      proxy_set_header            X-Forwarded-For $proxy_add_x_forwarded_for;
    }


    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/myDomain.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/myDomain.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...