Skip to content
Snippets Groups Projects
user avatar
Martin van Es authored
e1ad2189
History

Test_IdP

Docker-compose deploy

Copy env.example to .env and adjust all properties. A valid wildcard certificate/chain and key should be stored in the cert directory. The filenames should be called:

wildcard_cert.crt
wildcard_chain.crt
wildcard_cert.key

testidp/config/logins.json contains all the testaccounts and is volume mounted.

testidp/phpmailer.php.example contains the phpmailer example configuration for sending the admin mails. You should copy it to testidp/phpmailer.php and replace the Username/Password, Host and setFrom.

When everything is in place a simple

docker-compose up testidp

Should do the trick

Manual deploy

All files below testidp/simplesamlphp should be dropped in a working simplesamlphp installation. The testidp/admin directory should be served as a separate vhost.

This project consists of two separate parts. This README assumes you know your way around in simpleSAMLphp and know how to setup a working implementation.

The authentication module is located in modules and is called customauth, and should be enabled like this:

config/authsources.php

+    'custom-userpass' => [
+        'customauth:External',
+    ],

Don't forget to touch enable in the module directory to enable the module.

The second part is the admin interface and should be hosted independantly. It shares the database based on the DB structure found in testidp.sql

The Database consists of four tables:

  • options
  • idps
  • config
  • accounts

options contains the definitions of the adjustable simpleSAMLPHP hosted IdP configuration options, this can be used to render a configuration interface. The options have a key, which is used in config to configure this option for a specific IdP.

idps contains the vhost based configuration for an IdP and the most important part is the sp_metadata columns, which should contain the connected SP metadata so that this IdP trusts this SP.

config contains the per-IdP-options values that are dynamically loaded into the IdP config. Most of them change the dynamically created metadata for this IdP.

accounts contains the registered SP accounts in the admin interface