В нашем кластере k8s мы используем NGINX Ingress Controller для запроса клиентов (веб-браузеров) на предоставление клиентского сертификата. Если сертификат действителен, запрос передается на полноценный сервер Apache внутри частной сети.
Связь nginx <> Apache не зашифрована по протоколу TLS.
Используя параметр «nginx.ingress.kubernetes.io/auth-tls-pass-certificate-to-upstream: «true»» на ngnix, сервер Apache получает заголовок с именем X-Client-Certificate, содержащий полный сертификат клиента в формат ПЭМ.
В этот момент я потерян. Как мне использовать этот сертификат так же, как и при отправке его с клиента напрямую на HTTP-сервер Apache (не через прокси)?
Я намерен использовать DN информации о сертификатах как REMOTE_USER для выполнения авторизации ldap (используя mod_authnz_ldap), но не могу этого сделать (REMOTE_USER содержит «500»).
Не имея промежуточного прокси, я бы использовал эту команду и указал имя пользователя в переменной среды REMOTE_USER Apache, чтобы оно было доступно как имя пользователя для авторизации в LDAP:
SSLUserName SSL_CLIENT_S_DN_CN
Кто сталкивался с такой настройкой и может подсказать? Я исчерпал все известные мне и нашел варианты.
Заранее спасибо.