@Override ApacheSsl baseSsl() { return new ApacheSsl(); } }
public void setApacheSslEnabled(String deploymentName, boolean enabled) { getApacheSsl(deploymentName).setEnabled(enabled); }
@Override protected void executeThis() { String currentDeployment = getCurrentDeployment(); ApacheSsl apacheSsl = new OperationHandler<ApacheSsl>() .setOperation(Daemon.getApacheSsl(currentDeployment, false)) .setFailureMesssage("Failed to load SSL settings.") .get(); int originalHash = apacheSsl.hashCode(); apacheSsl.setSslCertificateFile(isSet(sslCertificateFile) ? sslCertificateFile : apacheSsl.getSslCertificateFile()); apacheSsl.setSslCertificateKeyFile(isSet(sslCertificateKeyFile) ? sslCertificateKeyFile : apacheSsl.getSslCertificateKeyFile()); apacheSsl.setSslCertificatePassphrase(isSet(sslCertificatePassphrase) ? sslCertificatePassphrase : apacheSsl.getSslCertificatePassphrase()); apacheSsl.setSslCACertificateFile(isSet(sslCACertificateFile) ? sslCACertificateFile : apacheSsl.getSslCACertificateFile()); if (originalHash == apacheSsl.hashCode()) { AnsiUi.failure("No changes supplied."); return; } new OperationHandler<Void>() .setOperation(Daemon.setApacheSsl(currentDeployment, !noValidate, apacheSsl)) .setFailureMesssage("Failed to edit SSL settings.") .setSuccessMessage("Successfully updated SSL settings.") .get(); } }
@Override protected void setProfile(Profile profile, DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints) { super.setProfile(profile, deploymentConfiguration, endpoints); ServiceSettings deckSettings = endpoints.getServiceSettings(Type.DECK); ServiceSettings gateSettings = endpoints.getServiceSettings(Type.GATE); ApacheSsl apacheSsl= deploymentConfiguration.getSecurity().getUiSecurity().getSsl(); Map<String, String> env = profile.getEnv(); if (apacheSsl.isEnabled()) { env.put("DECK_HOST", deckSettings.getHost()); env.put("DECK_PORT", deckSettings.getPort() + ""); env.put("API_HOST", gateSettings.getBaseUrl()); env.put("DECK_CERT", apacheSsl.getSslCertificateFile()); env.put("DECK_KEY", apacheSsl.getSslCertificateKeyFile()); env.put("PASSPHRASE", apacheSsl.getSslCertificatePassphrase()); } env.put("AUTH_ENABLED", Boolean.toString(deploymentConfiguration.getSecurity().getAuthn().isEnabled())); env.put("FIAT_ENABLED", Boolean.toString(deploymentConfiguration.getSecurity().getAuthz().isEnabled())); } }
@Override public ServiceSettings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { Security security = deploymentConfiguration.getSecurity(); if (security.getUiSecurity().getSsl().isEnabled()) { setEnvTrue("DECK_HTTPS"); setEnv("DECK_CERT", security.getUiSecurity().getSsl().getSslCertificateFile()); setEnv("DECK_KEY", security.getUiSecurity().getSsl().getSslCertificateKeyFile()); setEnv("DECK_CA_CERT", security.getUiSecurity().getSsl().getSslCACertificateFile()); } if (security.getAuthn().isEnabled()) { setEnvTrue("AUTH_ENABLED"); setEnv("DECK_HOST", "0.0.0.0"); } if (security.getAuthz().isEnabled()) { setEnvTrue("FIAT_ENABLED"); } return new Settings(security.getUiSecurity()) .setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setHost(security.getAuthn().isEnabled() ? "0.0.0.0" : getDefaultHost()) .setEnabled(true); }
@Override protected Map<String, Object> getBindings(DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints) { TemplatedResource resource = new StringResource(SSL_TEMPLATE); Map<String, Object> bindings = new HashMap<>(); UiSecurity uiSecurity = deploymentConfiguration.getSecurity().getUiSecurity(); ApacheSsl apacheSsl = uiSecurity.getSsl(); bindings.put("cert-file", apacheSsl.getSslCertificateFile()); bindings.put("key-file", apacheSsl.getSslCertificateKeyFile()); String ssl = resource.setBindings(bindings).toString(); bindings.clear(); bindings.put("ssl", ssl); bindings.put("deck-host", endpoints.getServiceSettings(Type.DECK).getHost()); bindings.put("deck-port", endpoints.getServiceSettings(Type.DECK).getPort() + ""); return bindings; }
@Override protected Map<String, Object> getBindings(DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints) { Map<String, Object> bindings = new HashMap<>(); ApacheSsl ssl = deploymentConfiguration.getSecurity().getUiSecurity().getSsl(); bindings.put("passphrase", ssl.getSslCertificatePassphrase()); return bindings; }
public Settings(UiSecurity uiSecurity) { setOverrideBaseUrl(uiSecurity.getOverrideBaseUrl()); if (uiSecurity.getSsl().isEnabled()) { scheme = "https"; } } }
@Override protected void executeThis() { String currentDeployment = getCurrentDeployment(); ApacheSsl apacheSsl = new OperationHandler<ApacheSsl>() .setOperation(Daemon.getApacheSsl(currentDeployment, false)) .setFailureMesssage("Failed to load SSL settings.") .get(); int originalHash = apacheSsl.hashCode(); apacheSsl.setSslCertificateFile(isSet(sslCertificateFile) ? sslCertificateFile : apacheSsl.getSslCertificateFile()); apacheSsl.setSslCertificateKeyFile(isSet(sslCertificateKeyFile) ? sslCertificateKeyFile : apacheSsl.getSslCertificateKeyFile()); apacheSsl.setSslCertificatePassphrase(isSet(sslCertificatePassphrase) ? sslCertificatePassphrase : apacheSsl.getSslCertificatePassphrase()); apacheSsl.setSslCACertificateFile(isSet(sslCACertificateFile) ? sslCACertificateFile : apacheSsl.getSslCACertificateFile()); if (originalHash == apacheSsl.hashCode()) { AnsiUi.failure("No changes supplied."); return; } new OperationHandler<Void>() .setOperation(Daemon.setApacheSsl(currentDeployment, !noValidate, apacheSsl)) .setFailureMesssage("Failed to edit SSL settings.") .setSuccessMessage("Successfully updated SSL settings.") .get(); } }
@Override protected void setProfile(Profile profile, DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints) { super.setProfile(profile, deploymentConfiguration, endpoints); ServiceSettings deckSettings = endpoints.getServiceSettings(Type.DECK); ServiceSettings gateSettings = endpoints.getServiceSettings(Type.GATE); ApacheSsl apacheSsl= deploymentConfiguration.getSecurity().getUiSecurity().getSsl(); Map<String, String> env = profile.getEnv(); if (apacheSsl.isEnabled()) { env.put("DECK_HOST", deckSettings.getHost()); env.put("DECK_PORT", deckSettings.getPort() + ""); env.put("API_HOST", gateSettings.getBaseUrl()); env.put("DECK_CERT", apacheSsl.getSslCertificateFile()); env.put("DECK_KEY", apacheSsl.getSslCertificateKeyFile()); env.put("PASSPHRASE", apacheSsl.getSslCertificatePassphrase()); } env.put("AUTH_ENABLED", Boolean.toString(deploymentConfiguration.getSecurity().getAuthn().isEnabled())); env.put("FIAT_ENABLED", Boolean.toString(deploymentConfiguration.getSecurity().getAuthz().isEnabled())); } }
@Override public ServiceSettings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { Security security = deploymentConfiguration.getSecurity(); if (security.getUiSecurity().getSsl().isEnabled()) { setEnvTrue("DECK_HTTPS"); setEnv("DECK_CERT", security.getUiSecurity().getSsl().getSslCertificateFile()); setEnv("DECK_KEY", security.getUiSecurity().getSsl().getSslCertificateKeyFile()); setEnv("DECK_CA_CERT", security.getUiSecurity().getSsl().getSslCACertificateFile()); } if (security.getAuthn().isEnabled()) { setEnvTrue("AUTH_ENABLED"); setEnv("DECK_HOST", "0.0.0.0"); } if (security.getAuthz().isEnabled()) { setEnvTrue("FIAT_ENABLED"); } return new Settings(security.getUiSecurity()) .setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setHost(security.getAuthn().isEnabled() ? "0.0.0.0" : getDefaultHost()) .setEnabled(true); }
@Override protected Map<String, Object> getBindings(DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints) { TemplatedResource resource = new StringResource(SSL_TEMPLATE); Map<String, Object> bindings = new HashMap<>(); UiSecurity uiSecurity = deploymentConfiguration.getSecurity().getUiSecurity(); ApacheSsl apacheSsl = uiSecurity.getSsl(); bindings.put("cert-file", apacheSsl.getSslCertificateFile()); bindings.put("key-file", apacheSsl.getSslCertificateKeyFile()); String ssl = resource.setBindings(bindings).toString(); bindings.clear(); bindings.put("ssl", ssl); bindings.put("deck-host", endpoints.getServiceSettings(Type.DECK).getHost()); bindings.put("deck-port", endpoints.getServiceSettings(Type.DECK).getPort() + ""); return bindings; }
@Override protected Map<String, Object> getBindings(DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints) { Map<String, Object> bindings = new HashMap<>(); ApacheSsl ssl = deploymentConfiguration.getSecurity().getUiSecurity().getSsl(); bindings.put("passphrase", ssl.getSslCertificatePassphrase()); return bindings; }
public Settings(UiSecurity uiSecurity) { setOverrideBaseUrl(uiSecurity.getOverrideBaseUrl()); if (uiSecurity.getSsl().isEnabled()) { scheme = "https"; } } }
@Override public String installArtifactCommand(DeploymentDetails deploymentDetails) { String install = LocalDebianService.super.installArtifactCommand(deploymentDetails); String ssl = deploymentDetails.getDeploymentConfiguration().getSecurity().getUiSecurity().getSsl().isEnabled() ? "a2enmod ssl" : ""; return Strings.join("\n", install, ssl); }
@Override ApacheSsl baseSsl() { return new ApacheSsl(); } }
public void setApacheSslEnabled(String deploymentName, boolean enabled) { getApacheSsl(deploymentName).setEnabled(enabled); }
@Override public String installArtifactCommand(DeploymentDetails deploymentDetails) { String install = LocalDebianService.super.installArtifactCommand(deploymentDetails); String ssl = deploymentDetails.getDeploymentConfiguration().getSecurity().getUiSecurity().getSsl().isEnabled() ? "a2enmod ssl" : ""; return Strings.join("\n", install, ssl); }