如何在istio 1.4.0中将证书通用名称传递给istio内部服务?

时间:2020-01-03 04:29:08

标签: kubernetes istio

我按照以下链接中的设置进行操作,以实现到入口网关的安全连接

https://istio.io/docs/tasks/traffic-management/ingress/secure-ingress-sds/

我可以发送请求并从内部服务获得响应,但是是否可以访问内部服务中的证书公用名?

内部服务正在运行以下烧瓶应用程序。

from flask import Flask, request
app = Flask(__name__)

@app.route("/first")
def index():
    return str(request.headers)

if __name__ == "__main__":
   app.run(debug=True, host='0.0.0.0')

它给出以下输出

Accept: */*
X-Forwarded-For: 10.32.0.5
X-Envoy-Decorator-Operation: flasksvc.default.svc.cluster.local:5000/first
X-Request-Id: f5f4d99f-0fe6-450b-a836-f4f228a5908d
X-B3-Traceid: a057039d68a629d516a7e36660197be8
X-Istio-Attributes: Ck8KCnNvdXJjZS51a....
Host: flaskapp.example.com
X-B3-Spanid: 16a7e36660197be8
X-Envoy-Internal: true
User-Agent: curl/7.29.0
Content-Length: 0
X-B3-Sampled: 0
X-Forwarded-Proto: https

我想在响应中看到证书的通用名称,请问我在istio 1.4.0版本中如何使用它

1 个答案:

答案 0 :(得分:2)

您需要做的是配置istio入口网关以执行SNI直通而不终止TLS。选中此guide上的操作方法。