Search in sources :

Example 1 with ManagementCoreService

use of org.wildfly.swarm.config.ManagementCoreService in project wildfly-swarm by wildfly-swarm.

the class HTTPSCustomizer method customize.

public void customize() {
    if (!this.managementCoreService.isUnsatisfied()) {
        if (certInfo.isValid()) {
            ManagementCoreService management = this.managementCoreService.get();
            if (management == null) {
                throw SwarmMessages.MESSAGES.httpsRequiresManagementFraction();
            }
            if (undertow.isOnlyHTTPS()) {
                undertow.removeHttpListenersFromDefaultServer();
            }
            management.securityRealm("SSLRealm", (realm) -> {
                realm.sslServerIdentity((identity) -> {
                    identity.keystorePath(certInfo.keystorePath()).keystoreRelativeTo(certInfo.keystoreRelativeTo()).keystorePassword(certInfo.keystorePassword()).keyPassword(certInfo.keyPassword()).alias(certInfo.keystoreAlias()).alias(certInfo.keystoreAlias());
                    handleSelfSignedCertificateHost(identity);
                });
            });
            for (Server server : undertow.subresources().servers()) {
                if (server.subresources().httpsListeners().isEmpty()) {
                    server.httpsListener("default-https", (listener) -> {
                        listener.securityRealm("SSLRealm");
                        listener.socketBinding("https");
                    });
                }
            }
        }
    }
}
Also used : Server(org.wildfly.swarm.config.undertow.Server) ManagementCoreService(org.wildfly.swarm.config.ManagementCoreService)

Example 2 with ManagementCoreService

use of org.wildfly.swarm.config.ManagementCoreService in project wildfly-swarm by wildfly-swarm.

the class HTTPSCustomizerTest method testWithManagementFraction.

@Test
public void testWithManagementFraction() throws Exception {
    HTTPSCustomizer customizer = new HTTPSCustomizer();
    customizer.undertow = new UndertowFraction();
    customizer.undertow.applyDefaults();
    customizer.certInfo = new CertInfo("myhost.com", "./my/path");
    customizer.managementCoreService = new MockInstance<>(new ManagementCoreService());
    customizer.customize();
    Server server = customizer.undertow.subresources().server("default-server");
    assertThat(server).isNotNull();
    assertThat(server.subresources().httpListeners()).hasSize(1);
    assertThat(server.subresources().httpListener("default")).isNotNull();
    assertThat(server.subresources().httpsListeners()).hasSize(1);
    assertThat(server.subresources().httpsListener("default-https")).isNotNull();
    SecurityRealm realm = customizer.managementCoreService.get().subresources().securityRealm("SSLRealm");
    assertThat(realm).isNotNull();
    assertThat(realm.subresources().sslServerIdentity().keystoreRelativeTo()).isEqualTo("./my/path");
    assertSelfSignedCertificate(realm.subresources().sslServerIdentity(), "myhost.com");
}
Also used : CertInfo(org.wildfly.swarm.undertow.descriptors.CertInfo) UndertowFraction(org.wildfly.swarm.undertow.UndertowFraction) Server(org.wildfly.swarm.config.undertow.Server) SecurityRealm(org.wildfly.swarm.config.management.SecurityRealm) ManagementCoreService(org.wildfly.swarm.config.ManagementCoreService) Test(org.junit.Test)

Aggregations

ManagementCoreService (org.wildfly.swarm.config.ManagementCoreService)2 Server (org.wildfly.swarm.config.undertow.Server)2 Test (org.junit.Test)1 SecurityRealm (org.wildfly.swarm.config.management.SecurityRealm)1 UndertowFraction (org.wildfly.swarm.undertow.UndertowFraction)1 CertInfo (org.wildfly.swarm.undertow.descriptors.CertInfo)1