У меня есть SP, инициированный загрузочным приложением SAML 2.0 + SPRING, работающим за балансировщиком нагрузки.Конечная точка балансировщика нагрузки (http://myserver.biz) настроена как entityBaseUrl для приложения как
metadataGenerator.setEntityBaseURL(http://myserver.biz);
. Мы добавили обратный прокси-сервер через LB, к которому клиент будет подключаться через Интернет. Конечная точка прокси-сервераis https://myserverproxy.com. Теперь я настроил URL-адрес entitybase на что-то вроде
metadataGenerator.setEntityBaseURL (https://myserverproxy.com);
Проблема в том, что внутренний клиент будет использовать URL-адрес приложения как http://myserver.biz, тогда как внешнийклиенты, приходящие через Интернет, будут использовать https://myserverproxy.com.
Я не могу настроить два объекта entityBaseUrls для приложения, класс SAML MetadataGenerator поддерживает только один базовый URL-адрес сущности за раз.
public class MetadataGenerator {
private String id;
private String entityId;
private String entityBaseURL;
...
}
Как этого достичь? Любое решение на этот счет?
@Bean
public MetadataGenerator metadataGenerator() {
MetadataGenerator metadataGenerator = new MetadataGenerator();
metadataGenerator.setEntityId(entityId);
metadataGenerator.setExtendedMetadata(extendedMetadata());
metadataGenerator.setIncludeDiscoveryExtension(false);
metadataGenerator.setKeyManager(keyManager());
metadataGenerator.setEntityBaseURL(entityBaseUrl);
return metadataGenerator;
}