Access metadata from DataConnector

Cantor, Scott cantor.2 at osu.edu
Mon Dec 14 14:37:48 EST 2015


On 12/14/15, 2:25 PM, "dev on behalf of Simon Gfeller" <dev-bounces at shibboleth.net on behalf of simon.gfeller at gmail.com> wrote:



> Is there a simple solution accessing the IdPs metadata from inside the doDataConnectorResolve method? I'm thankful for any help or a little example.

Simple? No. The only metadata exposed is part of the transaction, that of the SP/requester's.

What you're talking about is making an entirely separate request for metadata for an unrelated party. You would have to inject a facade to the MetadataResolverService. I don't know if that's feasible. The danger comes from circularity, but I don't think the metadata layer has any dependency on the attribute resolver.

I believe you would need to inject a bean like this into the connector:

<bean id="shibboleth.MetadataResolver"
        class="net.shibboleth.idp.saml.metadata.impl.ReloadingRelyingPartyMetadataProvider"
        c:resolverService-ref="shibboleth.MetadataResolverService" />

The beans in services-system.xml aren't really public, and that class certainly isn't. So strictly speaking, no, it's not supported. But we can probably make a determination about committing to the service bean IDs.


-- Scott



More information about the dev mailing list