首页 > 解决方案 > 从 vertx 的客户端证书中提取用户主体

问题描述

我正在为我的 API 使用 Vertx 框架,并已成功启用 https。

对于用户身份验证/授权,我不想使用客户端证书,即谁可以访问哪些 API。流程将:

  1. 当客户端命中 API 时,它会将其证书提交给 Vertx 服务器。此证书应包含作为 CN 的用户名。
  2. Vertx 服务器应验证客户端证书并从中提取通用名称,然后根据此用户名进行授权。

如何读取客户端证书以提取 cn ie 用户主体?

标签: ssl-certificatex509certificatevert.xclient-certificatesvertxoptions

解决方案


当你有一个io.vertx.core.http.HttpConnection你可以写:

connection.sslSession().getPeerPrincipal().getName()

推荐阅读