Я пытаюсь настроить входной контроллер NGINX, где он также может проверять уникальный CN или Subjectname, исходящий от клиента. Причина в том, что мы хотим, чтобы клиент был настроен только для доступа к контроллеру входящего трафика NGINX, а остальные клиенты, подписанные с использованием того же CA и ключа, могут быть отброшены.
Certificate:
Data:
Version: 1 (0x0)
Serial Number: 2 (0x2)
Signature Algorithm: sha256WithRSAEncryption
Issuer: CN=testAuthority
Validity
Not Before: Apr 5 08:02:23 2020 GMT
Not After : Apr 5 08:02:23 2021 GMT
Subject: CN=**client**
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (4096 bit)
Public Key Algorithm: rsaEncryption
Public-Key: (4096 bit)
Modulus:
<snipped>
Exponent: 65537 (0x10001)
Signature Algorithm: sha256WithRSAEncryption
<snipped>
-----BEGIN CERTIFICATE-----
<snipped>
-----END CERTIFICATE-----
Если запрос к контроллеру NGINX получен из вышеуказанного сертификата, такого как Тема: CN, или ключ сертификата, или отпечаток пальца, то он должен быть перенаправлен на серверную часть. Остальные сертификаты следует отклонить.
Если есть какие-то аннотации или конфигурационная карта, которые можно настроить в Ingress, это может быть полезно.