Problem/Motivation

The current `README.md` references two Docker images for running a local SAML Identity Provider during development:

* https://github.com/kenchan0130/docker-simplesamlphp
* https://github.com/3breadt/docker-simplesamlphp

Both projects appear to be outdated and are no longer actively maintained.

During a recent evaluation of available Docker-based SAML IdP solutions, we found that the Cirrus Identity SimpleSAMLphp image is currently the only actively maintained and up-to-date option that provides a straightforward local development experience. It is regularly updated and supports current PHP and SimpleSAMLphp versions.

The README should be updated to:

1. Replace references to the unmaintained images.
2. Update example commands and configuration snippets to use the Cirrus Identity image.
3. Review any related configuration examples to ensure compatibility with current SimpleSAMLphp releases.

This would provide developers with a supported and actively maintained solution for setting up a local test IdP and help avoid issues caused by outdated container images.

Steps to reproduce

Proposed resolution

Comments

mxr576 created an issue.

roderik’s picture

I added a note to the README (smuggled into #3595273: Add Pronovix/ddev-saml-idp to the test IdP setup guide) to indicate the fact that this is outdated, and a link to this issue.

Thank you for opening this issue. It's great (+ necessary) that contributors evaluate documentation with fresh eyes.

However...

The current referenced project is old, yes, but it 'just works' with minimal manual configuration. And the 'common simple' configuration can be done in one location: docker-compose.yml.

While trying https://github.com/cirrusidentity/docker-simplesamlphp, I discovered that that is not the case. No SAML IdP is enabled. I'd need to add my own metadata/saml20-sp-remote.php + saml20-idp-hosted.php (??) + default users (in authsources.php?) to get anything going. Once I realized that... I stopped.
(Note I might be referencing the wrong files here. My simpleSAMLphp knowledge is aging.)

(Also, I'd want to add some extra instructions for basic docker run usage, to account for e.g. the fact that a regular/noob user cannot run the referenced command twice without removing the registered --name in between. Unless I'm being dumb.)

So...

This "2. Update example commands and configuration snippets to use the Cirrus Identity image." is a 'community task' for whoever comes across this and needs a newer version.

Frankly, at this moment I am unsure if the amount of configuration needed is suitable for a quick README. If so, great. If not:

  • You might end up with your own forked repository of cirrusidentity/docker-simplesamlphp (or a subdirectory with config files that can be distributed along with this module?)
  • ...at which point it might be just as easy, to just update 3breadt/docker-simplesamlphp instead? (Starting with cirrusidentity, you need to reinvent / 'borrow' new config that is kind-of available in 3breadt. Starting with 3breadt, you need to make this existing config work on a new major version of SimpleSAMLphp. I tried rebuilding it after increasing SIMPLESAMLPHP_VERSION in the docker-compose.yml, but it didn't work immediately.)