簡體   English   中英

碼頭上的客戶證書認證(karaf)

[英]client-certificate authentication on jetty (karaf)

我需要在jetty服務器上使用證書進行客戶端身份驗證。

我在Tomcat上使用以下命令完成此操作:

<Connector
           protocol="org.apache.coyote.http11.Http11Protocol"
           port="8443" maxThreads="200"
           minSpareThreads="5" 
           enableLookups="true" disableUploadTimeout="true"
           acceptCount="100"
           scheme="https" secure="true" SSLEnabled="true"
           keystoreFile="D:\certificates\certs\server.jks" keystoreType="JKS" keystorePass="password"
           truststoreFile="D:\certificates\certs\trust_store.jks" truststoreType="JKS" truststorePass="password"
           clientAuth="true"
           sslProtocol="TLS"/>

但我想在karaf上做,所以我了解到我可以通過在jetty.xml上添加以下內容來實現:

<Call name="addConnector">
 <Arg>
   <New class="org.eclipse.jetty.server.ssl.SslSelectChannelConnector">
     <Arg>
       <New class="org.eclipse.jetty.http.ssl.SslContextFactory">
         <Set name="KeyStore">./etc/keystores/server.jks</Set>
         <Set name="KeyStorePassword">password</Set>
         <Set name="KeyManagerPassword">password</Set>
         <Set name="TrustStore">./etc/keystores/trust_store.jks</Set>
         <Set name="TrustStorePassword">password</Set>
       </New>
     </Arg>
     <Set name="port">8443</Set>
     <Set name="maxIdleTime">30000</Set>
   </New>
 </Arg>

並關注org.ops4j.pax.web.xml:

org.osgi.service.http.port=8181
org.osgi.service.http.port.secure=8443
org.osgi.service.http.secure.enabled=true
org.ops4j.pax.web.ssl.keystore=./etc/keystores/keystore.jks
org.ops4j.pax.web.ssl.password=password
org.ops4j.pax.web.ssl.keypassword=password
#org.ops4j.pax.web.ssl.clientauthwanted=false
org.ops4j.pax.web.ssl.clientauthneeded=true

但它不適用於karaf,它不會要求客戶證書。 它僅適用於使用服務器證書身份驗證的https。

我錯過了什么?

需要進行2項更改:

  1. 將org.ops4j.pax.web.xml文件重命名為org.ops4j.pax.web.cfg
  2. org.ops4j.pax.web.config.file=./etc/jetty.xml到org.ops4j.pax.web.cfg

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM