使用 Spring Security SAML 和 SpringBoot 在 MetadataGeneratorFilter 上设置 entityBaseURL

Setting entityBaseURL on MetadataGeneratorFilter with Spring Security SAML and SpringBoot

我收到以下警告。如何设置 entityBaseURL?

2018-04-19 19:38:00.771  WARN 31852 --- [http-nio-8080-exec-1] o.s.s.s.m.MetadataGeneratorFilter        : Generated default entity base URL https://test-auth.onlinephotosubmission.com:443 based on values in the first server request. Please set property entityBaseURL on MetadataGenerator bean bean to fixate the value.

application.properties中添加如下设置

saml.sso.metadata-generator.entity-base-url=https://myserver.mydomain.com

在你的配置文件中(我的文件名为 WebSecurityConfig),添加以下字段

@Value("${saml.sso.metadata-generator.entity-base-url}")
private String entityBaseUrl;

然后在同一个配置文件中,通过调用 setEntityBaseURL().

MetadataGenerator bean 上设置 entityBaseUrl
@Bean
public MetadataGenerator metadataGenerator() {

    MetadataGenerator metadataGenerator = new MetadataGenerator();
    metadataGenerator.setEntityId(samlSpId);
    metadataGenerator.setExtendedMetadata(extendedMetadata());
    metadataGenerator.setIncludeDiscoveryExtension(false);
    metadataGenerator.setKeyManager(keyManager());
    metadataGenerator.setEntityBaseURL(entityBaseUrl);
    return metadataGenerator;
}