【问题标题】:extract the user principal from client certificate in vertx从 vertx 中的客户端证书中提取用户主体
【发布时间】:2018-12-13 10:30:39
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: ssl-certificate x509certificate vert.x client-certificates vertxoptions


    【解决方案1】:

    如果你有io.vertx.core.http.HttpConnection,你可以写:

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

    【讨论】:

    • 感谢您的回答。我能够这样做。我的完整场景是我想对我的 Vertx webapp 进行证书身份验证/授权,即需要客户端证书,并且基于客户端证书中的 cn,因此将决定角色/权限。对此的任何指示,实现这一目标的最佳方法是什么。
    猜你喜欢
    • 1970-01-01
    • 2021-10-07
    • 1970-01-01
    • 1970-01-01
    • 2011-04-02
    • 2023-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多