Fournisseur d'identité SAML

Présentation

LL::NG peut agir en fournisseur d'identité SAML 2.0, ce qui permet de fédérer LL::NG avec :

Ceci nécessite de configurer LL::NG comme fournisseur d'identité SAML.

Google Apps Cornerstone SalesForce

Configuration

Service SAML

Voir le chapître de configuration du service SAML.

IssuerDB

Dans le manager, aller dans Paramètres généraux > Modules fournisseurs » SAML et configurer :

  • Activation : mettre à Activé.
  • Chemin : laisser ^/saml/ sauf si les suffixes des points d'accès SAML ont été modifiés sans la configuration du service SAML.
  • Règle d'utilisation : une règle pour autoriser l'usage de ce module, mettre 1 pour toujours l'autoriser.

Par exemple, pour n'autoriser que les utilisateurs authentifiés fortement :

$authenticationLevel > 2

Enregistrer LemonLDAP::NG sur le fournisseur de service partenaire

Après avoir configuré le service SAML, exporter les métadonnéesvers le fournisseur de service partenaire.

Elles sont disponibles à l'URL EntityID, par défaut : http://auth.example.com/saml/metadata.

Enregistrer le fournisseur de service dans LemonLDAP::NG

In the Manager, select node SAML service providers and click on Add SAML SP.

Le nom de SP est demandé, entrer-le et cliquer sur OK.

Il est ensuite possible d'accéder à la liste des paramètre du SP :

Métadata

Il faut enregistrer les métadatas du SP ici. Ceci peut être fait soit en téléchargeant le fichier, soit en l'obtenant par l'URL de métadatas du SP (à condition d'avoir un lien réseau entre le serveur et le SP):

You can also edit the metadata directly in the textarea

Attributs exportés

Pour chaque attribut, on peut indiquer :

  • Nom de clef : nom de la clef dans la session LemonLDAP::NG
  • Nom: Nom de l'attribut SAML.
  • Nom alternatif: optionnel, nom alternatif de l'attribut SAML.
  • Obligatoire : si activé, cet attribut sera envoyé dans les réponses d'authentification. Sinon, il ne sera envoyé dans les réponses que s'il est explicitement demandé dans les requêtes d'attributs.
  • Format (optionnel) : format de l'attribut SAML.

Options

Réponse d'authentification
  • Format de NameID par défaut : si aucun fiormat de NameID n'est demandé, ou si le format n'est pas défini, ce format de NameID sera utilisé. Si aucune valeur n'est indiquée, le format de NameID par défaut est Email.
  • Force NameID session key: if empty, the NameID mapping defined in SAML service configuration will be used. You can force here another session key that will be used as NameID content.
  • One Time Use: set the OneTimeUse flag in authentication response (<Condtions>).
  • sessionNotOnOrAfter duration: Time in seconds, added to authentication time, to define sessionNotOnOrAfter value in SAML response (<AuthnStatement>):
<saml:AuthnStatement AuthnInstant="2014-07-21T11:47:08Z"
  SessionIndex="loVvqZX+Vja2dtgt/N+AymTmckGyITyVt+UJ6vUFSFkE78S8zg+aomXX7oZ9qX1UxOEHf6Q4DUstewSJh1uK1Q=="
  SessionNotOnOrAfter="2014-07-21T15:47:08Z">
  • notOnOrAfter duration: Time in seconds, added to authentication time, to define notOnOrAfter value in SAML response (<Condtions> and <SubjectConfirmationData>):
<saml:SubjectConfirmationData NotOnOrAfter="2014-07-21T12:47:08Z"
  Recipient="http://simplesamlphp.example.com/simplesamlphp/module.php/saml/sp/saml2-acs.php/default-sp"
  InResponseTo="_3cfa896ab05730ac81f413e1e13cc42aa529eceea1"/>
<saml:Conditions NotBefore="2014-07-21T11:46:08Z"
  NotOnOrAfter="2014-07-21T12:48:08Z">

There is a time tolerance of 60 seconds in <Conditions>

Signature

Ces options surchargent les options de signature du service (voir la configuration du service SAML).

  • Signature des messages SSO : signe les messages SSO
  • Vérification de la signature des messages SSO : vérifie la signature des messages SSO
  • Signature des messages SLO : signe les messages de déconnexion SLO (single logout)
  • Vérifie la signature des messages SLO : vérifie la signature des messages SLO
Sécurité
  • Mode de chiffrement : fixe le mode de chiffrement pour cet IDP (None, NameID ou Assertion).
  • Enable use of IDP initiated URL: set to On to enable IDP Initiated URL on this SP.

The IDP Initiated URL is the SSO SAML URL with GET parameters:

  • IDPInitiated: 1
  • One of:
    • sp: SP entity ID
    • spConfKey: SP configuration key

For example: http://auth.example.com/saml/singleSignOn?IDPInitiated=1&spConfKey=simplesamlphp