Shibboleth Service Provider Deployment
This page provides information on how to install, configure and operate a Shibboleth Service Provider to protect web services operated in the AAI.
The Shibboleth Service Provider consists of a daemon shibd running on all major operating systems and a web server module mod_shib which is natively supported by:
- Apache web server
- IIS web server provided with the supported Windows versions
The Service Provider can protect any web server content by enforcing user authentication with AAI. Shibboleth can protect access to files, directories or locations with simple access control rules in Apache, IIS or other web servers.
Once a user was successfully authenticated all his user attributes are accessible via the web server environment. Therefore, all web applications (PHP, Perl, .Net, ASP, CGI, ...) running inside the web server can also use these attributes. Attributes are just read from the webserver environment, e.g. with $_SERVER['mail'] in PHP.
In order to protect Java applications, the servlet container like Tomcat must be operated behind a front-end Apache or IIS web server as shown in the figure above: Checkout the Java HowTo Page in the Shibboleth Wiki.
- Shibboleth SP 3.4.0 was released on 03. November 2022.
- 03. November 2022: Shibboleth SP Guides updated for SP 3.4.
- Check your existing configuration, update it to get rid of deprecation warnings for legacy elements.
- Installation and Configuration Guides for the current Shibboleth Service Provider:
If you are an experienced Shibboleth user and want to upgrade the configuration of an existing installation, you might also have a look at:
- Shibboleth SP Migration Guide to update an existing configuration.
Old Shibboleth SP guides:
- Outdated Shibboleth SP 3.2 Installation Guide and Shibboleth SP 3.2 Configuration Guide for Linux, macOS and Windows.
- Outdated Shibboleth SP 3.1 Installation Guide and Shibboleth SP 3.1 Configuration Guide for Linux, macOS and Windows.
Note: All Shibboleth SP 2.x versions are end of life and are vulnerable.
Outdated Shibboleth SP 2.6 Installation Guide and Shibboleth SP 2.6 Configuration Guide for Linux, macOS and Windows.
Outdated Shibboleth SP 2.5 Installation Guide for Linux, Mac OS X and Windows.
Access Control with Shibboleth
- Once the Service Provider is deployed, it can protect any web resource on that web server, either with web server access rules or by providing the application authorisation information in form of user attributes.
Enable an SP for Single Logout with the SWITCH edu-ID IdP
- If many of your users login via the SWITCH edu-ID IdP, learn how your SP could support proper Single Logout (SLO) for this user base. Study the guide and adapt the configuration for your SP to support Single Logout.
Discovery Service Options for SWITCHaai
- Find a comparison between different Discovery Service Options including Embedded WAYF:
- How to configure a Shibboleth 2 Service Provider for interfederation support in order to collaborate with users and services from federations in other countries:
Certificate Acceptance & Roll-Over
- Which certificates are accepted within SWITCHaai and what requirements they must meet:
- Replacing or renewing an old with a new certificate:
- Recommendations on how to design login pages, login buttons and custom error pages:
Best Current Practices
If you want to know how to successfully operate an AAI service, please have a look at the Best current practices for operating a SWITCHaai Service Provider
Other Relevant Information
- Before adapting a web application for Shibboleth yourself, first have a look at the list of
- Shibboleth troubleshooting and solutions for common errors (on the Shibboleth Wiki):
- How to skip the WAYF and provide direct login via a specific Home Organization:
- How to open a Virtual Home Organization group to create AAI accounts for users without AAI:
- Do you outsource the operation of the SAML Service Provider to an external provider?
- With the SWITCH edu-ID Link Composer a Service Provider administrator can easily construct links for various flows and features useful for a service protected by SWITCH edu-ID.