Извлечь пользователя из сертификата клиента в Vertx
Я использую платформу Vertx для своего API и успешно включил https для него.
Для аутентификации / авторизации пользователей я не хочу использовать клиентские сертификаты, то есть кто может получить доступ к каким API. Поток будет:
- Когда клиент делает попадание API, он представляет свой сертификат серверу Vertx. Этот сертификат должен содержать имя пользователя как CN.
- Сервер Vertx должен проверить сертификат клиента и извлечь из него общее имя, а затем выполнить авторизацию на основе этого имени пользователя.
Как мне прочитать клиентский сертификат, чтобы извлечь cn, то есть пользователя?
1 ответ
Когда у вас есть io.vertx.core.http.HttpConnection
ты можешь написать:
connection.sslSession().getPeerPrincipal().getName()