The purpose of the eduGAIN Connectivity Check is to identify eduGAIN Identity Providers (IdP) that are not properly configured. In particular, it checks if an IdP properly loads and consumes SAML2 metadata which contains the eduGAIN Service Providers (SP). The check results are published on the public eduGAIN Connectivity Check web page (https://technical-test.edugain.org/eccs/). The main purpose is to increase the service overall quality and user experience of the eduGAIN interfederation service by making federation and Identity Provider operators aware of configuration problems.
The check is performed by following two different wayfless URL and the various HTTP redirects until the IdP Login page. The expected result is a login form that allows users to authenticate (typically with username/password) or an error message. For those Identity Providers that output an error message, it can be assumed that they don't consume eduGAIN metadata properly or that they suffer from another configuration problem. There are some cases where the check will generate false positives, therefore IdPs can be excluded from checks as is described below.
The Identity Providers are checked once per day. Therefore, the login requests should not have any significant effect on the log entries/statistics of an Identity Provider. Also, no actual login is performed because the check cannot authenticate users due to missing username and password for the IdPs. Only Identity Providers are checked but not the Service Providers.
The eduGAIN Connectivity Check 2 is configured to maintain a history of 7 days of the results collected.
If this page does not answer your questions or you need some more information about this service, please contact us at support@edugain.org.
The check performed by the service follows these steps:
The tool uses the following statuses for IdPs:
Status | UI Color | Description and results |
---|---|---|
ERROR | Red |
|
OK | Green |
|
DISABLED | White |
|
pattern_password = '<input[\s]+[^>]*(type=\s*[\'"]password[\'"]|password)[^>]*>';
There are some situations where the check cannot work reliably. In those cases, it is possible to disable the check for a particular IdP.
The so far known cases where the check might generate a false negative are:
In cases where an IdP cannot be reliably checked, it is necessary to create or enrich the robots.txt
file on the IdP's web root with:
User-agent: ECCS Disallow: /
If it is not possible to create the robots.txt
under the IdP web root directory, the check can be disabled by an operator of the federation where the IdP is a member with an email sent to support@edugain.org.
The eduGAIN Connectivity Check Service web page is available at https://technical-test.edugain.org/eccs
Parameter name | Parameter description | Example |
---|---|---|
date | Show all the service results for a specific date | date=2020-02-20 |
reg_auth | Show all the service results for a specific Registration Authority | reg_auth=https://reg.auth.example.org |
idp | Show all the service results for a specific Identity Provider | idp=https://idp.example.org/idp/shibboleth |
status | Show all the service results for a specific Status:
| status=ERROR |
check_result | Show all the service results for a specific result of check:
| check_result=SSL-Error |
Example:
The eduGAIN Connectivity Check has an API interface that provides access to the monitoring results in JSON format.
The table below describes the actions that can be performed by replacing "##ACTION##" in the URL:
https://technical-test.edugain.org/eccs/api/##ACTION##
Action Name (JSON) | Action Description |
---|---|
eccsresults | Returns all the eduGAIN Connectivity Check 2 service results |
fedstats | Returns all the federation statistics collected by the eduGAIN Connectivity Check 2 service. |
The table below, instead, describes the JSON parameters that actions can use:
https://technical-test.edugain.org/eccs/api/##ACTION##?##PARAMETER##=<value>
Action Name (JSON) | Parameter Name (JSON) | Parameter Description | Example |
---|---|---|---|
| date | Returns all the service results for a specific date. | date=2020-02-20 |
| reg_auth | Returns all the service results for a specific Registration Authority. | reg_auth=https://reg.auth.example.org |
| idp | Returns the service results for a specific IdP by its entityID. | idp=https://idp.example.org/idp/shibboleth |
| status | Returns all the service results for a specific Status:
| status=ERROR |
| check_result | Returns all the service results for a specific result of check:
| check_result=SSL-Error |
| format | Formats the service results in a simple way | format=simple |
Example URL:
https://gitlab.geant.org/edugain/eccs