2017-06-01 96 views
1

我当前的Apache Tomcat用户设计的,它采用客户证书进行身份验证和授权HTTPS Web服务的阿卡基于HTTP访问替代HTTP阿卡客户端证书。使用Tomcat我习惯于与一个servlet请求属性当前连接

request.getAttribute(“javax.servlet.request.X509Certificate”)

我需要为处理器内部的一些额外的授权检查证书获取客户端X509证书选择路线。如何将检索以这种方式与阿卡HTTP 10.0.x客户端证书?

回答

2

您需要能够通过服务器的配置设置与TLS会话信息的装饰要求:

akka.http.server.parsing.tls-session-info-header = on 

,然后使用合成头akka.http.scaladsl.model.headers.Tls-Session-Info像这样提取的具体要求的信息:

headerValueByType[`Tls-Session-Info`]() { sessionInfo => 
    val sslSession = sessionInfo.getSession() 
    sslSession.getPeerCertificates 
    ... etc ...