GateConfig(ServiceSettings gate, Security security) { super(gate); server.ssl = security.getApiSecurity().getSsl(); }
GateConfig(ServiceSettings gate, Security security) { super(gate); server.ssl = security.getApiSecurity().getSsl(); }
@Override public ServiceSettings defaultServiceSettings(DeploymentConfiguration deploymentConfiguration) { return new Settings(deploymentConfiguration.getSecurity().getApiSecurity(), getActiveSpringProfiles(deploymentConfiguration)); }
@Override public ServiceSettings defaultServiceSettings(DeploymentConfiguration deploymentConfiguration) { return new Settings(deploymentConfiguration.getSecurity().getApiSecurity(), getActiveSpringProfiles(deploymentConfiguration)); }
@Override public void validate(ConfigProblemSetBuilder p, Security n) { DeploymentConfiguration deploymentConfiguration = n.parentOfType(DeploymentConfiguration.class); boolean localhostAccess = StringUtils.isEmpty(n.getApiSecurity().getOverrideBaseUrl()) || StringUtils.isEmpty(n.getUiSecurity().getOverrideBaseUrl()) ; switch (deploymentConfiguration.getDeploymentEnvironment().getType()) { case Distributed: if (localhostAccess) { p.addProblem(Problem.Severity.WARNING, "Your UI or API domain does not have override base URLs set " + "even though your Spinnaker deployment is a Distributed deployment on a remote cloud provider. " + "As a result, you will need to open SSH tunnels against that deployment to access Spinnaker.") .setRemediation("We recommend that you instead configure an authentication mechanism (OAuth2, SAML2, or x509) " + "to make it easier to access Spinnaker securely, and then register the intended Domain and IP addresses " + "that your publicly facing services will be using."); // TODO(lwander) point to a guide here } break; case LocalDebian: break; } } }
@Override public ServiceSettings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { return new Settings(deploymentConfiguration.getSecurity().getApiSecurity()) .setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setEnabled(true); }
@Override public ServiceSettings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { return new Settings(deploymentConfiguration.getSecurity().getApiSecurity()) .setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setEnabled(true); }
@Override public void validate(ConfigProblemSetBuilder p, Security n) { DeploymentConfiguration deploymentConfiguration = n.parentOfType(DeploymentConfiguration.class); boolean localhostAccess = StringUtils.isEmpty(n.getApiSecurity().getOverrideBaseUrl()) || StringUtils.isEmpty(n.getUiSecurity().getOverrideBaseUrl()) ; switch (deploymentConfiguration.getDeploymentEnvironment().getType()) { case Distributed: if (localhostAccess) { p.addProblem(Problem.Severity.WARNING, "Your UI or API domain does not have override base URLs set " + "even though your Spinnaker deployment is a Distributed deployment on a remote cloud provider. " + "As a result, you will need to open SSH tunnels against that deployment to access Spinnaker.") .setRemediation("We recommend that you instead configure an authentication mechanism (OAuth2, SAML2, or x509) " + "to make it easier to access Spinnaker securely, and then register the intended Domain and IP addresses " + "that your publicly facing services will be using."); // TODO(lwander) point to a guide here } break; case LocalDebian: break; } } }
@Override public Settings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { Settings settings = new Settings(deploymentConfiguration.getSecurity().getApiSecurity()); settings.setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setLocation("us-central1-f") .setEnabled(true); return settings; } }
@Override public Settings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { Settings settings = new Settings(deploymentConfiguration.getSecurity().getApiSecurity()); settings.setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setLocation("us-central1-f") .setEnabled(true); return settings; } }
@Override public void setProfile(Profile profile, DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints) { super.setProfile(profile, deploymentConfiguration, endpoints); Security security = deploymentConfiguration.getSecurity(); List<String> requiredFiles = backupRequiredFiles(security.getApiSecurity(), deploymentConfiguration.getName()); requiredFiles.addAll(backupRequiredFiles(security.getAuthn(), deploymentConfiguration.getName())); requiredFiles.addAll(backupRequiredFiles(security.getAuthz(), deploymentConfiguration.getName())); GateConfig gateConfig = getGateConfig(endpoints.getServiceSettings(Type.GATE), security); gateConfig.getCors().setAllowedOriginsPattern(security.getApiSecurity()); profile.appendContents(yamlToString(gateConfig)) .appendContents(profile.getBaseContents()) .setRequiredFiles(requiredFiles); }
@Override public void setProfile(Profile profile, DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints) { super.setProfile(profile, deploymentConfiguration, endpoints); Security security = deploymentConfiguration.getSecurity(); List<String> requiredFiles = backupRequiredFiles(security.getApiSecurity(), deploymentConfiguration.getName()); requiredFiles.addAll(backupRequiredFiles(security.getAuthn(), deploymentConfiguration.getName())); requiredFiles.addAll(backupRequiredFiles(security.getAuthz(), deploymentConfiguration.getName())); GateConfig gateConfig = getGateConfig(endpoints.getServiceSettings(Type.GATE), security); gateConfig.getCors().setAllowedOriginsPattern(security.getApiSecurity()); profile.appendContents(yamlToString(gateConfig)) .appendContents(profile.getBaseContents()) .setRequiredFiles(requiredFiles); }
@Override public Settings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { KubernetesSharedServiceSettings kubernetesSharedServiceSettings = new KubernetesSharedServiceSettings(deploymentConfiguration); Settings settings = new Settings(deploymentConfiguration.getSecurity().getApiSecurity()); settings.setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setLocation(kubernetesSharedServiceSettings.getDeployLocation()) .setEnabled(true); return settings; }
@Override public Settings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { KubernetesSharedServiceSettings kubernetesSharedServiceSettings = new KubernetesSharedServiceSettings(deploymentConfiguration); Settings settings = new Settings(deploymentConfiguration.getSecurity().getApiSecurity()); settings.setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setLocation(kubernetesSharedServiceSettings.getDeployLocation()) .setEnabled(true); return settings; }
@Override public ServiceSettings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { boolean authEnabled = deploymentConfiguration.getSecurity().getAuthn().isEnabled(); return new Settings(deploymentConfiguration.getSecurity().getApiSecurity()) .setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setHost(authEnabled ? "0.0.0.0" : getDefaultHost()) .setEnabled(true); }
@Override public ServiceSettings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { boolean authEnabled = deploymentConfiguration.getSecurity().getAuthn().isEnabled(); return new Settings(deploymentConfiguration.getSecurity().getApiSecurity()) .setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setHost(authEnabled ? "0.0.0.0" : getDefaultHost()) .setEnabled(true); }
@Override public ServiceSettings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { boolean authEnabled = deploymentConfiguration.getSecurity().getAuthn().isEnabled(); return new Settings(deploymentConfiguration.getSecurity().getApiSecurity()) .setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setHost(authEnabled ? "0.0.0.0" : getDefaultHost()) .setEnabled(true); }
@Override public ServiceSettings buildServiceSettings(DeploymentConfiguration deploymentConfiguration) { boolean authEnabled = deploymentConfiguration.getSecurity().getAuthn().isEnabled(); return new Settings(deploymentConfiguration.getSecurity().getApiSecurity()) .setArtifactId(getArtifactId(deploymentConfiguration.getName())) .setHost(authEnabled ? "0.0.0.0" : getDefaultHost()) .setEnabled(true); }