static WsFederationCertificateProvider getProvider(final WsFederationConfiguration config,
                                                       final OpenSamlConfigBean openSamlConfigBean) {
        val chain = new ChainingWsFederationCertificateProvider();
        StringUtils.commaDelimitedListToSet(config.getSigningCertificates())
            .stream()
            .map(Unchecked.function(ResourceUtils::getRawResourceFrom))
            .forEach(resource -> {
                if (StringUtils.hasText(resource.getFilename()) && resource.getFilename().endsWith(".xml")) {
                    chain.addProvider(new WsFederationMetadataCertificateProvider(resource, config, openSamlConfigBean));
                } else {
                    chain.addProvider(new WsFederationStaticCertificateProvider(resource));
                }
            });
        return chain;
    }
Gets providers.

@param config             the config
@param openSamlConfigBean the open saml config bean
@return the providers
support/cas-server-support-wsfederation/src/main/java/org/apereo/cas/support/wsfederation/authentication/crypto/WsFederationCertificateProvider.java