我计划使用 ISTIO 来实现服务网格并在服务之间使用 mTLS。
一些服务需要一些关于客户端的信息,比如来自客户端证书的 CN。
如何配置 ISTIO 从客户端证书中提取 CN 并将其插入自定义标头?
我计划使用 ISTIO 来实现服务网格并在服务之间使用 mTLS。
一些服务需要一些关于客户端的信息,比如来自客户端证书的 CN。
如何配置 ISTIO 从客户端证书中提取 CN 并将其插入自定义标头?
使用 istio doc中的主题解析器
您可以将%DOWNSTREAM_PEER_SUBJECT%添加到您的服务 VirtualService:
http:
- match:
- uri:
prefix: ###
route:
- destination:
host: # service name
port:
number: # service port
headers:
request:
set:
X-CLIENT-SSL-CN: "%DOWNSTREAM_PEER_SUBJECT%"
然后将它放在“X-Client-Ssl-Cn”的请求标头中