Les applications Google peuvent utiliser SAML pour authentifier les utilisateurs, en se comportant comme des fournisseurs de service SAML, tel qu'expliqué ici.
Pour fonctionner avec LL::NG il faut :
Comme administrateur, aller dans le panneau de contrôle Google Apps et cliquer sur les outils avancés click (Advanced tools) :
Ensuite sélectionner Set up single sign-on (SSO)
:
Puis configurer tous les paramètres SAML :
Pour le certificate, vous pouvez le construire en signant la clef privée enregistrée dans le Manager. Select the key, and export it (button Download
). This will download the public and the private key.
Keep the private key in a file, for example lemonldap-ng-priv.key, then use openssl to generate an auto-signed certificate:
openssl req -new -key lemonldap-ng-priv.key -out cert.csr openssl x509 -req -days 3650 -in cert.csr -signkey lemonldap-ng-priv.key -out cert.pem
Télécharger ensuite le certificat (cert.pem
) dans Google Apps.
Il est nécessaire d'avoir configuré LL::NG comme fournisseur d'identité SAML,
Ajouter ensuite Google Apps comme nouveau fournisseur de service SAML :
Nouveau fournisseur de service
.Email
dans Options
» Réponse d'authentification
» Format NameID par défaut
Options
» Signature
, excepté Signer les messages SSO
qui doit être activéeMetadata
, et déprotéger le champ pour y mettre :<md:EntityDescriptor entityID="google.com" xmlns="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"> <SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"> <AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://www.google.com/a/mydomain.org/acs" index="1" /> <NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</NameIDFormat> </SPSSODescriptor> </md:EntityDescriptor>
AssertionConsumerService
markup, parameter Location
) en votre domaine Google Apps. Also adapt your entityID to match the Assertion issuer: google.com/a/mydomain.org
Il est possible d'ajouter un lien dans le menu application pour afficher Google Apps.
Certains paramètres doivent être adaptés :
On
pour toujours l'afficher
Google Apps ne supporte pas le Single Logout (SLO).
Google Apps ne dispose pas de paramètre de configuration pour rediriger les utilisateurs vers une URL spécifique après la déconnexion Google Apps (voir Google Apps control panel).
Pour gérer l'autre voie (LL::NG → Google Apps), ajouter une règle de redirection après déconnexion:
GoogleApps => http://www.google.com/calendar/hosted/mydomain.org/logout