Keycloak gatekeeper: установить базовый URL - PullRequest
0 голосов
/ 04 апреля 2019

Я не могу найти способ обновить базовый URL-адрес моей коляски с привратником.Моя конфигурация хорошо работает со службами, для которых задан базовый URL (например: https://monitoring.example.com/),, а не с настраиваемым базовым путем (например: https://monitoring.example.com/prometheus).

Моя конфигурация yaml:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: prometheus-deployment
spec:
  replicas: 1
  template:
    metadata:
      name: prometheus
    spec:
      containers:
      - name: prometheus
        image: quay.io/coreos/prometheus:latest
        args:
          - '--web.external-url=https://monitoring.example.com/prometheus'
          - '--web.route-prefix=/prometheus
      - name: proxy
        image:  keycloak/keycloak-gatekeeper:5.0.0
        imagePullPolicy: Always
        args:
          - --resource=uri=/*
          - --discovery-url=https://auth.example.com/auth/realms/MYREALM
          - --client-id=prometheus
          - --client-secret=XXXXXXXX
          - --listen=0.0.0.0:5555
          - --enable-logging=true
          - --enable-json-logging=true
          - --upstream-url=http://127.0.0.1:9090/prometheus

Моя проблема в том, чтобы иметь возможность установить другой путь к базовому URL ("/ prometheus") для коляски, так как, когда я открываю https://monitoring.example.com/prometheus,, я получаю перенаправление 307 на https://monitoring.example.com/oauth/authorize?state=XXXXXXX В то время как он долженбыть https://monitoring.example.com/prometheus/oauth/authorize?state=XXXXXXX

Я пытался с параметром "--redirection-url = https://monitoring.example.com/prometheus" Но это все еще перенаправляет меня на тот же URL.

РЕДАКТИРОВАТЬ:

Моя цель состоит в том, чтобы иметь возможность защитить несколько Prometheus и ограничить доступ к ним. Я также ищу решение, чтобы установить разрешение в отношении области или клиента. Я имею в виду, что некоторые пользователи Keycloak должны иметь возможность, например,, для авторизации и просмотра содержимого / prometheus-dev, но не /prometheus-prod.

EDIT2:

я пропустил параметр 'base_uri ". Когда я установил его на" / prometheus "и попробуйте подключиться к «https://monitoring.example.com/prometheus/", я получаю хорошее перенаправление» https://monitoring.example.com/prometheus/oauth/authorize?state=XXXXXXX" но нене работаетВ keycloak журнал выглядит так:

"msg: сеанс не найден в запросе, перенаправление для авторизации, ошибка: сеанс аутентификации не найден"

...