首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >密钥斗篷守护者(转发代理)什么也不做。

密钥斗篷守护者(转发代理)什么也不做。
EN

Stack Overflow用户
提问于 2019-07-16 12:08:58
回答 1查看 1.5K关注 0票数 1

我有一个对接-撰写设置与服务1(地堑)发送请求到服务2(普罗米修斯)。我已经在服务2前面放置了一个密钥披风守护者,请求认证。效果很好。

现在,我的想法也是将第二个密钥披风守护者放在服务1的前面,注入所述身份验证。

不幸的是,这是行不通的。通过wireshark观察我的流量,看来我的第二个密钥披风守护者甚至没有参与任何通信。

我的停靠者为服务1编写文件,转发代理看起来大致如下:

代码语言:javascript
复制
keycloak-forwarder:
    image: quay.io/keycloak/keycloak-gatekeeper
    command:
      - --enable-forwarding=true
      - --forwarding-username=<my_username>
      - --forwarding-password=<my_password>
      - --forwarding-domains=${BASE_DOMAIN}/grafana
      - --listen=:3001
      - --client-id=<my_keycloak_client_id>
      - --client-secret=<my_keycloak_client_secret>
      - --discovery-url=${DOMAIN_PROTOCOL}://${KEYCLOAK_DOMAIN}/auth/realms/<my_keycloak_realm>
    networks:
      - webgateway

grafana:
    image: grafana/grafana
    networks:
      - webgateway
    labels:
      traefik.enable: true
      traefik.backend: grafana
      traefik.frontend.rule: Host:${BASE_DOMAIN};PathPrefix:/grafana;PathPrefixStrip:/grafana
      traefik.port: 3000
      traefik.docker.network: webgateway
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-17 10:31:47

好吧,我找到解决办法了。有几件事,我做错了。

  1. 转发域标志描述请求发送到的域,而不是来自的域。因此,如果格拉法纳与普罗米修斯对话,普罗米修斯领域需要进入这里。
  2. 密钥披风守护者不会自动拦截通信。所以grafana需要显式地使用它作为代理。

因此,固定的对接组合看起来如下:

代码语言:javascript
复制
keycloak-forwarder:
    image: quay.io/keycloak/keycloak-gatekeeper
    command:
      - --enable-forwarding=true
      - --forwarding-username=<my_username>
      - --forwarding-password=<my_password>
      - --forwarding-domains=${BASE_DOMAIN}/prometheus
      - --listen=:3001
      - --client-id=<my_keycloak_client_id>
      - --client-secret=<my_keycloak_client_secret>
      - --discovery-url=${DOMAIN_PROTOCOL}://${KEYCLOAK_DOMAIN}/auth/realms/<my_keycloak_realm>
    networks:
      - webgateway

grafana:
    image: grafana/grafana
    networks:
      - webgateway
    environment:
      - HTTP_PROXY=http://keycloak-forwarder:3001
      - HTTPS_PROXY=http://keycloak-forwarder:3001
    labels:
      traefik.enable: true
      traefik.backend: grafana
      traefik.frontend.rule: Host:${BASE_DOMAIN};PathPrefix:/grafana;PathPrefixStrip:/grafana
      traefik.port: 3000
      traefik.docker.network: webgateway
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57056926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档