![JAR search and dependency download from the Maven repository](/logo.png)
com.atlassian.connect.spring.internal.AtlassianConnectPerTenantEnvironmentConfiguration Maven / Gradle / Ivy
package com.atlassian.connect.spring.internal;
import com.atlassian.connect.spring.AtlassianHost;
import org.springframework.stereotype.Component;
import java.net.URI;
@Component
public class AtlassianConnectPerTenantEnvironmentConfiguration {
private static final URI DEV_AUTHORIZATION_SERVER_URL = URI.create("https://oauth-2-authorization-server.dev.services.atlassian.com");
private static final URI FEDRAMP_SANDBOX_AUTHORIZATION_SERVER_URL = URI.create("https://oauth-2-authorization-server.ap-southeast-1.staging.atl-paas.net");
private static final URI PRODUCTION_AUTHORIZATION_SERVER_URL = URI.create("https://oauth-2-authorization-server.services.atlassian.com");
public static final String PUBLIC_KEY_BASE_URL_STAGING = "https://cs-migrations--cdn.us-west-1.staging.public.atl-paas.net";
public static final String PUBLIC_KEY_BASE_URL_FEDRAMP_SANDBOX = "https://cs-migrations--cdn.ap-southeast-1.staging.public.atl-paas.net";
public static final String PUBLIC_KEY_BASE_URL_PRODUCTION = "https://connect-install-keys.atlassian.com";
private final AtlassianConnectProperties properties;
public AtlassianConnectPerTenantEnvironmentConfiguration(AtlassianConnectProperties properties) {
this.properties = properties;
}
public URI getAuthorizationServerBaseUrl(AtlassianHost host) {
String baseUrlHost = URI.create(host.getBaseUrl()).getHost();
if (isDevHost(baseUrlHost)) {
return DEV_AUTHORIZATION_SERVER_URL;
}
if (isFedRAMPSandboxHost(baseUrlHost)) {
return FEDRAMP_SANDBOX_AUTHORIZATION_SERVER_URL;
}
return PRODUCTION_AUTHORIZATION_SERVER_URL;
}
public String getPublicKeyBaseUrl(String url) {
String hostUrl = URI.create(url).getHost();
String publicKeyBaseUrlFromProperties = properties.getPublicKeyBaseUrl();
if (publicKeyBaseUrlFromProperties != null) {
return publicKeyBaseUrlFromProperties;
}
if (isDevHost(hostUrl)) {
return PUBLIC_KEY_BASE_URL_STAGING;
}
if (isFedRAMPSandboxHost(hostUrl)) {
return PUBLIC_KEY_BASE_URL_FEDRAMP_SANDBOX;
}
return PUBLIC_KEY_BASE_URL_PRODUCTION;
}
private boolean isDevHost(String host) {
return host.endsWith(".jira-dev.com");
}
private boolean isFedRAMPSandboxHost(String host) {
return host.endsWith(".atlassian-fex.net");
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy