===== Shibboleth Wordpress plugin ===== ==== references ==== * https://wordpress.org/plugins/shibboleth/ * https://docs.shib.ncsu.edu/docs/wordpress/index.html * https://wordpress.org/plugins/simpleshib/?ref=commonninja * https://www.pluginforthat.com/plugin/shibboleth/ ==== apache vhost config ==== apache vhost that serves both mainsitewp and sub-blog farm's blogs, as of blog1.mainsitewp.domain.fr : ServerName mainsitewp.domain.fr ServerAlias *.mainsitewp.domain.fr DocumentRoot /var/www/wp ErrorLog logs/wp-error_log CustomLog logs/ssl_wp-access_log common LogLevel warn SSLEngine on Include conf.d/ssl/star_mainsitewp.domain.fr.conf #RewriteEngine On #RewriteCond %{HTTP_HOST} ^mainsitewp\.domain\.fr$ [NC] #RewriteRule .? https://mainsitewp.domain2.fr%{REQUEST_URI} [R=301,L] ShibRequestSetting applicationId wordpress ==== .htaccess rewrites Shibbolet.sso ==== at the DocumentRoot of wordpress vhost, the .htaccess does the job to exclude ^/Shibboleth.sso location in order for shibds to take care of those queries . RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} ^/Shibboleth.sso($|/) [OR] #RewriteCond %{REQUEST_URI} ^/Shibboleth.sso/SAML2/POST [OR] RewriteCond %{REQUEST_URI} ^/shib(.+) RewriteRule . - [L] RewriteRule ^index\.php$ - [L] RewriteRule ^Shibboleth.sso(.+) - [END] RewriteRule ^Shibboleth.sso/Login$ - [L] RewriteRule ^Shibboleth.sso/Loginimt$ - [L] RewriteRule ^Shibboleth.sso/SAML2/POST$ - [L] RewriteRule ^shib(.+) - [L] # BEGIN Shibboleth AuthType shibboleth Require shibboleth # END Shibboleth ==== wordpress farm multisite ==== for multisite wordpress, we need to allow shib session cookies to be allowed withing sub-domains blogs (cf cookieProps= ) . with redirectLimit="exact+allow" also ste to none in debug mode