Я пытаюсь настроить проверку подлинности сертификата клиента с JBoss (до сих пор испытания с 7.1.0 Final и 7.1.1 Final, Java 6 и Java7).JBoss7 аутентификации клиента-CERT: Ciper свита в SSL сессии является SSL_NULL_WITH_NULL_NULL
1) Я генерируется на основе сертификата this
2) Я скопирована keystore.server и server.truststore в /автономные/конфигурации папки.
3) В standalone.xml Я создал домен безопасности
<security-domain name="RequireCertificateDomain">
<authentication>
<login-module code="CertificateRoles" flag="required">
<module-option name="securityDomain" value="RequireCertificateDomain"/>
<module-option name="verifier" value="org.jboss.security.auth.certs.AnyCertVerifier"/>
<module-option name="usersProperties" value="${jboss.server.config.dir}/my-users.properties"/>
<module-option name="rolesProperties" value="${jboss.server.config.dir}/my-roles.properties"/>
</login-module>
</authentication>
<jsse keystore-password="changeit" keystore-url="file:C:/jboss/jboss-as-7.1.1.Final/standalone/configuration/server.keystore" truststore-password="changeit" truststore-url="file:C:/jboss/jboss-as-7.1.1.Final/standalone/configuration/server.truststore"/>
</security-domain>
и HTTPS разъем:
<connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" secure="true">
<ssl password="changeit" certificate-key-file="${jboss.server.config.dir}/server.keystore" verify-client="want" ca-certificate-file="${jboss.server.config.dir}/server.truststore"/>
</connector>
4) Я импортировал сертификат /Библиотека/безопасность/cacerts (позже я пытался получить доступ к моему защищенному WS Spring SpringTemplate - тоже не повезло)
5) Я импортировал сертификат в параметры Интернета -> Содержание -> Сертификаты -> Trusted Root CA (я могу видеть, что сертификат является доверенным)
6) Я создал простой JavaEE Rest WS, web.xml:
<security-constraint>
<display-name>Area secured</display-name>
<web-resource-collection>
<web-resource-name>protected_resources</web-resource-name>
<url-pattern>/api/account/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<description>User with any role</description>
<role-name>*</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>CLIENT-CERT</auth-method>
</login-config>
JBoss-web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
<security-domain>RequireCertificateDomain</security-domain>
</jboss-web>
7) При попытке доступа через браузер (Chrome/Firefox/IE) я получаю Статус HTTP 401 - Нет цепи сертификатов клиента в этом запросе. В server.log можно увидеть следующее:
Handshake failed: java.io.IOException: SSL handshake failed. Ciper suite in SSL Session is SSL_NULL_WITH_NULL_NULL
Я поиск в Интернете и выяснил, что это может быть bug, но должен был быть зафиксирован в 7.1.0 Final релизе. К сожалению, я продолжаю получать эту ошибку как в версиях 7.1.0, так и в 7.1.1.
Я что-то упустил?