diff --git a/build/src/main/resources/docs/schema/wildfly-undertow_1_0.xsd b/build/src/main/resources/docs/schema/wildfly-undertow_1_0.xsd index 302c6f7efc6a..6a185b364bfa 100644 --- a/build/src/main/resources/docs/schema/wildfly-undertow_1_0.xsd +++ b/build/src/main/resources/docs/schema/wildfly-undertow_1_0.xsd @@ -304,7 +304,7 @@ - + updates = new ArrayList(); // SSO element name must be 'configuration' - ModelNode op = createOpNode("subsystem=undertow/server=default-server/host=default-host/setting=single-sign-on", ADD); - op.get("domain").set("${jboss.bind.address:127.0.0.1}"); - updates.add(op); + updates.add(createOpNode("subsystem=undertow/server=default-server/host=default-host/setting=single-sign-on", ADD)); applyUpdates(updates, client); } @@ -364,9 +362,7 @@ public static void addSso(ModelControllerClient client) throws Exception { public static void removeSso(final ModelControllerClient client) throws Exception { final List updates = new ArrayList(); - ModelNode op = createOpNode("subsystem=undertow/server=default-server/host=default-host/setting=single-sign-on", REMOVE); - op.get("domain").set("${jboss.bind.address:127.0.0.1}"); - updates.add(op); + updates.add(createOpNode("subsystem=undertow/server=default-server/host=default-host/setting=single-sign-on", REMOVE)); applyUpdates(updates, client); } diff --git a/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnAdd.java b/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnAdd.java index b32b66835346..c108da3f6e53 100644 --- a/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnAdd.java +++ b/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnAdd.java @@ -58,8 +58,8 @@ protected void performRuntime(final OperationContext context, final ModelNode op final PathAddress hostAddress = address.subAddress(0, address.size() - 1); final PathAddress serverAddress = hostAddress.subAddress(0, hostAddress.size() - 1); - final String domain = SingleSignOnDefinition.DOMAIN.resolveModelAttribute(context, model).asString(); - + ModelNode domainModelNode = SingleSignOnDefinition.DOMAIN.resolveModelAttribute(context, model); + String domain = domainModelNode.isDefined() ? domainModelNode.asString() : null; final String serverName = serverAddress.getLastElement().getValue(); final String hostName = hostAddress.getLastElement().getValue(); final ServiceName serviceName = UndertowService.ssoServiceName(serverName, hostName); diff --git a/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnDefinition.java b/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnDefinition.java index 59c5ab942c97..7457190b1411 100644 --- a/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnDefinition.java +++ b/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnDefinition.java @@ -42,6 +42,7 @@ class SingleSignOnDefinition extends PersistentResourceDefinition { static final SimpleAttributeDefinition DOMAIN = new SimpleAttributeDefinitionBuilder(Constants.DOMAIN, ModelType.STRING) + .setAllowNull(true) .setAllowExpression(true) .build(); diff --git a/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnService.java b/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnService.java index ca05b9265c15..5b169103f485 100644 --- a/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnService.java +++ b/undertow/src/main/java/org/wildfly/extension/undertow/SingleSignOnService.java @@ -51,17 +51,17 @@ public SingleSignOnService(String domain) { @Override public void start(StartContext startContext) { + Host host = this.host.getValue(); SingleSignOnAuthenticationMechanism mechanism = new SingleSignOnAuthenticationMechanism(this.manager.getValue()); - if (this.domain != null) { - mechanism.setDomain(this.domain); - } + mechanism.setDomain((this.domain != null) ? this.domain : host.getName()); - this.host.getValue().registerAdditionalAuthenticationMechanism(AUTHENTICATION_MECHANISM_NAME, mechanism); + host.registerAdditionalAuthenticationMechanism(AUTHENTICATION_MECHANISM_NAME, mechanism); } @Override public void stop(StopContext stopContext) { - this.host.getValue().unregisterAdditionalAuthenticationMechanism(AUTHENTICATION_MECHANISM_NAME); + Host host = this.host.getValue(); + host.unregisterAdditionalAuthenticationMechanism(AUTHENTICATION_MECHANISM_NAME); } @Override