Shibboleth konfiguraatiossa voidaan tehdä metadata-tiedostoille erilaisia suodatussääntöjä. Useimmiten tälle on tarvetta palveluntarjoajien puolella, mutta on myös tilanteita että tätä tarvitaan myös IdP:llä. IdP:n puolella on yleisempää suodattaa pois kaikki IdP entiteetit muistia ja suorituskykyä silmällä pitäen. 

Shibboleth SP suodatus

Yleisin tapaus SP:n päässä on ladata metadata-tiedosto ja sallia tästä vain tietyt entiteetit. Esimerkissä sallitaan metadata-tiedostosta vain entiteetti "https://idp.csc.fi/idp/shibboleth".

/etc/shibboleth2.xml
<MetadataProvider>
.
  <MetadataFilter type="Include">
    <Include>https://idp.csc.fi/idp/shibboleth</Include>
  </MetadataFilter>
.
</MetadataProvider>

Shibboleth IdP suodatus

Normaalitilanteessa IdP:ssä sallitaan vain kaikki SPSSO entiteetit (SP:t).

/opt/shibboleth-idp/conf/metadata-providers.xml
<MetadataProvider>
.
  <MetadataFilter xsi:type="EntityRoleWhiteList">
    <RetainedRole>md:SPSSODescriptor</RetainedRole>
  </MetadataFilter>
.
</MetadataProvider>

Entiteettien suodatus IdP:llä tehdään SP:stä poiketen Predicate suodattimella. Esimerkissä sallitaan metadata-tiedostosta vain kaksi listattua entiteettiä.

/opt/shibboleth-idp/conf/metadata-providers.xml
<MetadataProvider>
.
  <MetadataFilter xsi:type="Predicate" direction="include" removeEmptyEntitiesDescriptors="true" trim="true">
    <Entity>https://testsp.funet.fi/shibboleth</Entity>
    <Entity>https://testsp.funet.fi/shibboleth/persistent</Entity>
  </MetadataFilter>
.
</MetadataProvider>
  • No labels