...
Creating the filter using the DSX DS Filter Generator
The filter is generated a base64 encoded JSON object that defines the rules for including or excluding IdPs. The easiest way to generate this is by using DSX Filter Generator.
Info | ||||
---|---|---|---|---|
| ||||
The filter generator can create two types of filters, you may filter entities based on their SAML entity categories or based on IdP entityID values (or both).
Allow and Deny lists of Entity Categories
...
- If an "allow" list is defined, only IdPs matching at least one of the categories are visblevisible, all others are hidden.
- If a "deny" list is defined, all IdPs matching any of the categories on it are filtered out and thus are hidden.
...
Expand | |||||||
---|---|---|---|---|---|---|---|
| |||||||
This example shows how to list all IdPs not tagged as hidden. This is the main use case to setup list of all eduGAIN IdPs. Navigate to filter generator on https://dsx.edugain.org/filter Click open the 'select entity categories' - accordion. You should now see all the possible entity categories to choose from in a grey box. Move http://refeds.org/category/hide-from-discovery to red box. At the bottom of the page you should see the resulting filter and its plaintext version.
|
...
Expand | |||||||
---|---|---|---|---|---|---|---|
| |||||||
This example shows how to list only IdPs tagged with Research and Scholarship entity category. Navigate to filter generator on https://dsx.edugain.org/filter Click open the 'select entity categories' - accordion. You should now see all the possible entity categories to choose from in a grey box. Move http://refeds.org/category/research-and-scholarship to green box. Move also http://id.incommon.org/category/research-and-scholarship. At the bottom of the page you should see the resulting filter and its plaintext version.
|
...
Expand | |||||||
---|---|---|---|---|---|---|---|
| |||||||
This example shows how to list a specific set of IdPs. Navigate to filter generator on https://dsx.edugain.org/filter. Click open the 'select individual IdPs' - accordion. You should now see all the possible IdPs to select from. Make sure that the radio - button 'Selected IdPs will be visible' is checked. Select the entities you want the user to pick the IdP from. At the bottom of the page you should see the resulting filter and its plaintext version. Note that by picking individual IdPs you will easily end up with a large filter and you need to set it by reference.
|
...
Expand | |||||||
---|---|---|---|---|---|---|---|
| |||||||
This example shows how to list all IdPs tagged with Research and Scholarship entity category and a specific set of IdPs. Navigate to filter generator, https://dsx.edugain.org/filter. Click open the 'select entity categories' - accordion. You should now see all the possible entity categories to choose from in a grey box. Move http://refeds.org/category/research-and-scholarship to green box. Move also http://id.incommon.org/category/research-and-scholarship. Click open the 'select individual IdPs' - accordion. You should now see all the possible IdPs to select from. Make sure that the radio - button 'Selected IdPs will be visible' is checked. Select the "Aalto" entity (not belonging to mentioned categories at the time of the writing). At the bottom of the page you should see the resulting filter and it's plaintext version.
|
...
where contents of www.example.com/filter would be a plain text document containing the filter, for example:
Code Block |
---|
eyJhbGxvd0hvc3RlbCI6dHJ1ZSwiYWxsb3dIb3N0ZWxSZWciOnRydWV9Cg== |
...
Expand | |||||
---|---|---|---|---|---|
| |||||
|
More complex filters
The filter language supports scenarios that are not currently covered by the filter generator, but that can be manually constructed. Similarly, it is possible to programmatically generate your own filters by referencing a script hosted at the efilter
location. In both cases, you create a filter by generating an appropriate JSON object and then base64 encoding it.
A good starting point is to get the filter as close as possible to your needs using the filter generator at https://dsx.edugain.org/filter (e.g. honouring hide-from-discovery). You can then take the resulting JSON object show as the "Human readable form of filter" and further customise it further to your needs.
Expand | ||||
---|---|---|---|---|
| ||||
It is possible to filter IdPs by their registration authority (the federation that they come from). This may be useful when you want to list only the IdPs from a specific subset of eduGAIN that are not already identified by an entity category (for instance, only from certain countries). The registration authority is usually specified as a URL identifying the federation operator. You can determine the correct one either from the federation's entry on the eduGAIN technical site or by examining metadata for the For instance, the South African Identity Federation uses a registration authority of
which would then be base64 encoded to produce a filter:
|