FilesystemMetadataProvider:获取元数据文件

时间:2015-02-16 22:26:58

标签: spring-security spring-saml

在我们的多租户环境中,我们无法在spring文件中配置MetadataProvider,并且必须在运行时创建/检索/等等。我基本上试图坚持MetadataProvider,以便我可以在应用程序重启时加载它们。对于HttpMetadataProvider,我可以从getMetadataURI()方法获取网址。但是,我没有看到从FilesystemMetadataProvider获取位置的方法。有没有办法,否则,我将不得不求助于反思。

1 个答案:

答案 0 :(得分:0)

您可以使用以下签名扩展FilesystemMetadataProvider类并覆盖方法getMetadataIdentifier,以便将其公开:

 public String getMetadataIdentifier() {
     return super.getMetadataIdentifier();
 }

该方法返回元数据文件的绝对路径。然后在定义元数据时,您可以使用新的元素而不是使用原始类,并根据需要获取文件名。