simplesamlphp-module-authirma
SimplesamlPHP module for IRMA authentication, (*1)
Introduction
This module for simpleSAMLphp allows easy integration of IRMA authentication into an existing simpleSAMLphp setup.
This document explains how to install the simpleSAMLphp module and how to configure it., (*2)
We are going to assume you have a working simpleSAMLphp installation.
If you don't, refer to the
documentation
of simpleSAMLphp itself., (*3)
Installing the module and required libraries
Install using composer
To install in simplesamlphp, use the composer-based simplesamlphp module installer, (*4)
composer require irma/simplesamlphp-module-authirma
Manual install
Download the latest version of the simpleSAMLphp IRMA module., (*5)
Install the module in the modules/
directory of your simpleSAMLphp setup (or symlink it if you want to keep the directory structure clean).
The module is enabled by default: no need for a 'touch enable' inside the module directory., (*6)
Note that authirma depends on php-jwt for encoding and decoding JSON Web Tokens (JWT).
Install using composer:, (*7)
composer require firebase/php-jwt
Configuration
See docs /docs/authirma.md
for configuration instructions., (*8)
Quickstart
Install simplesamlphp, (*9)
git clone https://github.com/simplesamlphp/simplesamlphp.git
cd simplesamlphp/
Install the IRMA authentication module, (*10)
composer require irma/simplesamlphp-module-authirma
Copy sample configuration files, (*11)
cp config-templates/config.php config-templates/authsources.php config
Edit config/config.php
to change the following:, (*12)
'baseurlpath' => '',
Edit config/authsources.php
and add an authentication source named irma
of type authirma:IRMA
. See docs/authirma
., (*13)
Create a directory for storing certificates and keys:, (*14)
mkdir -p cert
Put the private key for signing JWT requests and the certificate with the public key of the API server in the cert
directory., (*15)
Start a PHP web server:, (*16)
php -S 0:8080 -t www
Point your browser to http://localhost:8080/, (*17)