Wildfly 11 Elytron в одну сторону и в две стороны одновременно

У нас есть веб-приложение с двумя конечными точками. Конечные точки должны быть доступны через разные порты 8443 а также 9443,
Для веб-приложения нам нужен один способ ssl и два способа настройки ssl. Только одна конечная точка защищена двухсторонним протоколом, а остальная часть приложения должна быть защищена с помощью https.

https://localhost:8443/webservice/monitoring -> https
https://localhost:9443/webservice/management/ -> client/server auth

Я следовал инструкции в документации Wildfly о том, как включить односторонний ssl и двухсторонний ssl с проверкой подлинности клиента в подсистеме elytron. https://docs.jboss.org/author/display/WFLY/Using+the+Elytron+Subsystem

Конфигурации работают нормально сами по себе, но если я пытаюсь объединить их только один - работает аутентификация https или сервер / клиент (зависит от того, какой https-listener ssl-context настроен).

Я добавил дополнительный https-listener а также socket-binding к которому относится сфера клиент / сервер.

standalone.xml

...
                    <server-ssl-contexts>
                        <server-ssl-context name="https-serverauth" protocols="TLSv1.2" key-manager="SSL-Server_Manager"/>
                        <server-ssl-context name="https-mutualauth" security-domain="management-api" protocols="TLSv1.2" need-client-auth="true" authentication-optional="true" key-manager="SSL-Server_Manager" trust-manager="Client_TrustManager"/>
                    </server-ssl-contexts>
    ...    

    <subsystem xmlns="urn:jboss:domain:undertow:4.0">
                    <buffer-cache name="default"/>
                    <server name="default-server">
                        <http-listener name="default" socket-binding="http" enable-http2="true"/>
                        <https-listener name="https-serverauth" socket-binding="https" ssl-context="https-serverauth" enable-http2="true"/>
                        <https-listener name="https-mutualauth" socket-binding="https-mutualauth" ssl-context="https-mutualauth" enable-http2="true"/>
                        <host name="default-host" alias="localhost">
                            <http-invoker security-realm="ApplicationRealm"/>
                        </host>
        ....
           <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
                <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:29990}"/>
                <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:29993}"/>
                <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>
                <socket-binding name="http" port="${jboss.http.port:8080}"/>
                <socket-binding name="https" port="${jboss.https.port:8443}"/>
                <socket-binding name="https-mutualauth" port="${jboss.https.port:9443}"/>
                <socket-binding name="txn-recovery-environment" port="24712"/>
                <socket-binding name="txn-status-manager" port="24713"/>
                <outbound-socket-binding name="mail-smtp">
                    <remote-destination host="localhost" port="25"/>
                </outbound-socket-binding>
            </socket-binding-group>

web.xml

<security-constraint>

  <web-resource-collection>
      <url-pattern>/management/*</url-pattern>
  </web-resource-collection>

  <user-data-constraint>
      <transport-guarantee>CONFIDENTIAL</transport-guarantee>
  </user-data-constraint>

  <login-config>
    <auth-method>CLIENT-CERT</auth-method>
    <realm-name>management-api-realm</realm-name>
  </login-config>
</security-constraint>

У меня проблема в том, что я могу получить доступ к mangament конечная точка на 8443 но если я попытаюсь получить доступ к конечной точке на 9443 я бежал в тайм-аут. Я думаю, что у меня есть ошибка с перенаправлением порта + отсутствующая конфигурация, чтобы сделать мое приложение доступным на 9443 и для конфигурации области для запуска.

0 ответов

Другие вопросы по тегам